diff --git a/java/com/android/contacts/common/ClipboardUtils.java b/java/com/android/contacts/common/ClipboardUtils.java
index 9345b0f..3d76839 100644
--- a/java/com/android/contacts/common/ClipboardUtils.java
+++ b/java/com/android/contacts/common/ClipboardUtils.java
@@ -24,8 +24,6 @@
 
 public class ClipboardUtils {
 
-  private static final String TAG = "ClipboardUtils";
-
   private ClipboardUtils() {}
 
   /**
diff --git a/java/com/android/contacts/common/ContactPhotoManager.java b/java/com/android/contacts/common/ContactPhotoManager.java
index 169348b..fbf51cc 100644
--- a/java/com/android/contacts/common/ContactPhotoManager.java
+++ b/java/com/android/contacts/common/ContactPhotoManager.java
@@ -36,14 +36,6 @@
 /** Asynchronously loads contact photos and maintains a cache of photos. */
 public abstract class ContactPhotoManager implements ComponentCallbacks2 {
 
-  /** Contact type constants used for default letter images */
-  public static final int TYPE_PERSON = LetterTileDrawable.TYPE_PERSON;
-
-  public static final int TYPE_SPAM = LetterTileDrawable.TYPE_SPAM;
-  public static final int TYPE_BUSINESS = LetterTileDrawable.TYPE_BUSINESS;
-  public static final int TYPE_VOICEMAIL = LetterTileDrawable.TYPE_VOICEMAIL;
-  public static final int TYPE_DEFAULT = LetterTileDrawable.TYPE_DEFAULT;
-  public static final int TYPE_GENERIC_AVATAR = LetterTileDrawable.TYPE_GENERIC_AVATAR;
   /** Scale and offset default constants used for default letter images */
   public static final float SCALE_DEFAULT = 1.0f;
 
@@ -88,7 +80,7 @@
       if (!TextUtils.isEmpty(request.identifier)) {
         builder.appendQueryParameter(IDENTIFIER_PARAM_KEY, request.identifier);
       }
-      if (request.contactType != TYPE_DEFAULT) {
+      if (request.contactType != LetterTileDrawable.TYPE_DEFAULT) {
         builder.appendQueryParameter(CONTACT_TYPE_PARAM_KEY, String.valueOf(request.contactType));
       }
       if (request.scale != SCALE_DEFAULT) {
@@ -114,7 +106,7 @@
   public static String appendBusinessContactType(String photoUrl) {
     Uri uri = Uri.parse(photoUrl);
     Builder builder = uri.buildUpon();
-    builder.encodedFragment(String.valueOf(TYPE_BUSINESS));
+    builder.encodedFragment(String.valueOf(LetterTileDrawable.TYPE_BUSINESS));
     return builder.build().toString();
   }
 
@@ -147,7 +139,7 @@
 
     String encodedFragment = photoUri.getEncodedFragment();
     return !TextUtils.isEmpty(encodedFragment)
-        && encodedFragment.equals(String.valueOf(TYPE_BUSINESS));
+        && encodedFragment.equals(String.valueOf(LetterTileDrawable.TYPE_BUSINESS));
   }
 
   protected static DefaultImageRequest getDefaultImageRequestFromUri(Uri uri) {
@@ -246,6 +238,9 @@
     badge.assignContactUri(contactUri);
     badge.setOverlay(null);
 
+    badge.setContentDescription(
+        badge.getContext().getString(R.string.description_quick_contact_for, displayName));
+
     String lookupKey = contactUri == null ? null : UriUtils.getLookupKeyFromUri(contactUri);
     ContactPhotoManager.DefaultImageRequest request =
         new ContactPhotoManager.DefaultImageRequest(
@@ -378,7 +373,7 @@
      * be returned.
      */
     public static final DefaultImageRequest EMPTY_DEFAULT_BUSINESS_IMAGE_REQUEST =
-        new DefaultImageRequest(null, null, TYPE_BUSINESS, false);
+        new DefaultImageRequest(null, null, LetterTileDrawable.TYPE_BUSINESS, false);
     /**
      * Used to indicate that a circular drawable that represents a contact without any contact
      * details should be returned.
@@ -390,7 +385,7 @@
      * should be returned.
      */
     public static final DefaultImageRequest EMPTY_CIRCULAR_BUSINESS_IMAGE_REQUEST =
-        new DefaultImageRequest(null, null, TYPE_BUSINESS, true);
+        new DefaultImageRequest(null, null, LetterTileDrawable.TYPE_BUSINESS, true);
     /** The contact's display name. The display name is used to */
     public String displayName;
     /**
@@ -403,10 +398,9 @@
     /**
      * The type of this contact. This contact type may be used to decide the kind of image to use in
      * the case where a unique letter cannot be generated from the contact's display name and
-     * identifier. See: {@link #TYPE_PERSON} {@link #TYPE_BUSINESS} {@link #TYPE_PERSON} {@link
-     * #TYPE_DEFAULT}
+     * identifier.
      */
-    public int contactType = TYPE_DEFAULT;
+    public @LetterTileDrawable.ContactType int contactType = LetterTileDrawable.TYPE_DEFAULT;
     /**
      * The amount to scale the letter or bitmap to, as a ratio of its default size (from a range of
      * 0.0f to 2.0f). The default value is 1.0f.
@@ -429,7 +423,13 @@
     public DefaultImageRequest() {}
 
     public DefaultImageRequest(String displayName, String identifier, boolean isCircular) {
-      this(displayName, identifier, TYPE_DEFAULT, SCALE_DEFAULT, OFFSET_DEFAULT, isCircular);
+      this(
+          displayName,
+          identifier,
+          LetterTileDrawable.TYPE_DEFAULT,
+          SCALE_DEFAULT,
+          OFFSET_DEFAULT,
+          isCircular);
     }
 
     public DefaultImageRequest(
diff --git a/java/com/android/contacts/common/ContactPhotoManagerImpl.java b/java/com/android/contacts/common/ContactPhotoManagerImpl.java
index 2e6ff9f..28ecf34 100644
--- a/java/com/android/contacts/common/ContactPhotoManagerImpl.java
+++ b/java/com/android/contacts/common/ContactPhotoManagerImpl.java
@@ -53,9 +53,9 @@
 import android.view.ViewGroup;
 import android.widget.ImageView;
 import com.android.contacts.common.util.BitmapUtil;
-import com.android.contacts.common.util.TrafficStatsTags;
 import com.android.contacts.common.util.UriUtils;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.constants.TrafficStatsTags;
 import com.android.dialer.util.PermissionsUtil;
 import java.io.ByteArrayOutputStream;
 import java.io.IOException;
@@ -634,8 +634,9 @@
           }
           return true;
         }
+      default:
+        return false;
     }
-    return false;
   }
 
   public void ensureLoaderThread() {
diff --git a/java/com/android/contacts/common/ContactPresenceIconUtil.java b/java/com/android/contacts/common/ContactPresenceIconUtil.java
index eeaf652..bce4b21 100644
--- a/java/com/android/contacts/common/ContactPresenceIconUtil.java
+++ b/java/com/android/contacts/common/ContactPresenceIconUtil.java
@@ -19,6 +19,7 @@
 import android.content.Context;
 import android.graphics.drawable.Drawable;
 import android.provider.ContactsContract.StatusUpdates;
+import android.support.v4.content.ContextCompat;
 
 /** Define the contact present show policy in Contacts */
 public class ContactPresenceIconUtil {
@@ -36,7 +37,7 @@
       case StatusUpdates.AWAY:
       case StatusUpdates.DO_NOT_DISTURB:
       case StatusUpdates.INVISIBLE:
-        return context.getResources().getDrawable(StatusUpdates.getPresenceIconResourceId(status));
+        return ContextCompat.getDrawable(context, StatusUpdates.getPresenceIconResourceId(status));
       case StatusUpdates.OFFLINE:
         // The undefined status is treated as OFFLINE in getPresenceIconResourceId();
       default:
diff --git a/java/com/android/contacts/common/ContactStatusUtil.java b/java/com/android/contacts/common/ContactStatusUtil.java
index 97d84c8..c5347e7 100644
--- a/java/com/android/contacts/common/ContactStatusUtil.java
+++ b/java/com/android/contacts/common/ContactStatusUtil.java
@@ -23,8 +23,6 @@
 /** Provides static function to get default contact status message. */
 public class ContactStatusUtil {
 
-  private static final String TAG = "ContactStatusUtil";
-
   public static String getStatusString(Context context, int presence) {
     Resources resources = context.getResources();
     switch (presence) {
diff --git a/java/com/android/contacts/common/ContactsUtils.java b/java/com/android/contacts/common/ContactsUtils.java
index 60af44b..66ccc90 100644
--- a/java/com/android/contacts/common/ContactsUtils.java
+++ b/java/com/android/contacts/common/ContactsUtils.java
@@ -16,184 +16,17 @@
 
 package com.android.contacts.common;
 
-import android.content.Context;
-import android.content.Intent;
-import android.database.Cursor;
-import android.net.Uri;
-import android.provider.ContactsContract.CommonDataKinds.Im;
-import android.provider.ContactsContract.DisplayPhoto;
+import android.provider.ContactsContract.Contacts;
 import android.support.annotation.IntDef;
-import android.text.TextUtils;
-import android.util.Pair;
-import com.android.contacts.common.compat.ContactsCompat;
 import com.android.contacts.common.compat.DirectoryCompat;
-import com.android.contacts.common.model.AccountTypeManager;
-import com.android.contacts.common.model.account.AccountWithDataSet;
-import com.android.contacts.common.model.dataitem.ImDataItem;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
-import java.util.List;
 
 public class ContactsUtils {
 
   // Telecomm related schemes are in CallUtil
-  public static final String SCHEME_IMTO = "imto";
-  public static final String SCHEME_MAILTO = "mailto";
-  public static final String SCHEME_SMSTO = "smsto";
   public static final long USER_TYPE_CURRENT = 0;
   public static final long USER_TYPE_WORK = 1;
-  private static final String TAG = "ContactsUtils";
-  private static final int DEFAULT_THUMBNAIL_SIZE = 96;
-  private static int sThumbnailSize = -1;
-
-  /**
-   * This looks up the provider name defined in ProviderNames from the predefined IM protocol id.
-   * This is used for interacting with the IM application.
-   *
-   * @param protocol the protocol ID
-   * @return the provider name the IM app uses for the given protocol, or null if no provider is
-   *     defined for the given protocol
-   * @hide
-   */
-  public static String lookupProviderNameFromId(int protocol) {
-    switch (protocol) {
-      case Im.PROTOCOL_GOOGLE_TALK:
-        return ProviderNames.GTALK;
-      case Im.PROTOCOL_AIM:
-        return ProviderNames.AIM;
-      case Im.PROTOCOL_MSN:
-        return ProviderNames.MSN;
-      case Im.PROTOCOL_YAHOO:
-        return ProviderNames.YAHOO;
-      case Im.PROTOCOL_ICQ:
-        return ProviderNames.ICQ;
-      case Im.PROTOCOL_JABBER:
-        return ProviderNames.JABBER;
-      case Im.PROTOCOL_SKYPE:
-        return ProviderNames.SKYPE;
-      case Im.PROTOCOL_QQ:
-        return ProviderNames.QQ;
-    }
-    return null;
-  }
-
-  /**
-   * Test if the given {@link CharSequence} contains any graphic characters, first checking {@link
-   * TextUtils#isEmpty(CharSequence)} to handle null.
-   */
-  public static boolean isGraphic(CharSequence str) {
-    return !TextUtils.isEmpty(str) && TextUtils.isGraphic(str);
-  }
-
-  /** Returns true if two objects are considered equal. Two null references are equal here. */
-  public static boolean areObjectsEqual(Object a, Object b) {
-    return a == b || (a != null && a.equals(b));
-  }
-
-  /** Returns true if two {@link Intent}s are both null, or have the same action. */
-  public static final boolean areIntentActionEqual(Intent a, Intent b) {
-    if (a == b) {
-      return true;
-    }
-    if (a == null || b == null) {
-      return false;
-    }
-    return TextUtils.equals(a.getAction(), b.getAction());
-  }
-
-  public static boolean areGroupWritableAccountsAvailable(Context context) {
-    final List<AccountWithDataSet> accounts =
-        AccountTypeManager.getInstance(context).getGroupWritableAccounts();
-    return !accounts.isEmpty();
-  }
-
-  /**
-   * Returns the size (width and height) of thumbnail pictures as configured in the provider. This
-   * can safely be called from the UI thread, as the provider can serve this without performing a
-   * database access
-   */
-  public static int getThumbnailSize(Context context) {
-    if (sThumbnailSize == -1) {
-      final Cursor c =
-          context
-              .getContentResolver()
-              .query(
-                  DisplayPhoto.CONTENT_MAX_DIMENSIONS_URI,
-                  new String[] {DisplayPhoto.THUMBNAIL_MAX_DIM},
-                  null,
-                  null,
-                  null);
-      if (c != null) {
-        try {
-          if (c.moveToFirst()) {
-            sThumbnailSize = c.getInt(0);
-          }
-        } finally {
-          c.close();
-        }
-      }
-    }
-    return sThumbnailSize != -1 ? sThumbnailSize : DEFAULT_THUMBNAIL_SIZE;
-  }
-
-  private static Intent getCustomImIntent(ImDataItem im, int protocol) {
-    String host = im.getCustomProtocol();
-    final String data = im.getData();
-    if (TextUtils.isEmpty(data)) {
-      return null;
-    }
-    if (protocol != Im.PROTOCOL_CUSTOM) {
-      // Try bringing in a well-known host for specific protocols
-      host = ContactsUtils.lookupProviderNameFromId(protocol);
-    }
-    if (TextUtils.isEmpty(host)) {
-      return null;
-    }
-    final String authority = host.toLowerCase();
-    final Uri imUri =
-        new Uri.Builder().scheme(SCHEME_IMTO).authority(authority).appendPath(data).build();
-    final Intent intent = new Intent(Intent.ACTION_SENDTO, imUri);
-    return intent;
-  }
-
-  /**
-   * Returns the proper Intent for an ImDatItem. If available, a secondary intent is stored in the
-   * second Pair slot
-   */
-  public static Pair<Intent, Intent> buildImIntent(Context context, ImDataItem im) {
-    Intent intent = null;
-    Intent secondaryIntent = null;
-    final boolean isEmail = im.isCreatedFromEmail();
-
-    if (!isEmail && !im.isProtocolValid()) {
-      return new Pair<>(null, null);
-    }
-
-    final String data = im.getData();
-    if (TextUtils.isEmpty(data)) {
-      return new Pair<>(null, null);
-    }
-
-    final int protocol = isEmail ? Im.PROTOCOL_GOOGLE_TALK : im.getProtocol();
-
-    if (protocol == Im.PROTOCOL_GOOGLE_TALK) {
-      final int chatCapability = im.getChatCapability();
-      if ((chatCapability & Im.CAPABILITY_HAS_CAMERA) != 0) {
-        intent = new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?message"));
-        secondaryIntent = new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?call"));
-      } else if ((chatCapability & Im.CAPABILITY_HAS_VOICE) != 0) {
-        // Allow Talking and Texting
-        intent = new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?message"));
-        secondaryIntent = new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?call"));
-      } else {
-        intent = new Intent(Intent.ACTION_SENDTO, Uri.parse("xmpp:" + data + "?message"));
-      }
-    } else {
-      // Build an IM Intent
-      intent = getCustomImIntent(im, protocol);
-    }
-    return new Pair<>(intent, secondaryIntent);
-  }
 
   /**
    * Determine UserType from directory id and contact id.
@@ -232,27 +65,13 @@
           : USER_TYPE_CURRENT;
     }
     // Only check contact id if directory id is null
-    if (contactId != null && contactId != 0L && ContactsCompat.isEnterpriseContactId(contactId)) {
+    if (contactId != null && contactId != 0L && Contacts.isEnterpriseContactId(contactId)) {
       return USER_TYPE_WORK;
     } else {
       return USER_TYPE_CURRENT;
     }
   }
 
-  // TODO find a proper place for the canonical version of these
-  public interface ProviderNames {
-
-    String YAHOO = "Yahoo";
-    String GTALK = "GTalk";
-    String MSN = "MSN";
-    String ICQ = "ICQ";
-    String AIM = "AIM";
-    String XMPP = "XMPP";
-    String JABBER = "JABBER";
-    String SKYPE = "SKYPE";
-    String QQ = "QQ";
-  }
-
   /**
    * UserType indicates the user type of the contact. If the contact is from Work User (Work Profile
    * in Android Multi-User System), it's {@link #USER_TYPE_WORK}, otherwise, {@link
diff --git a/java/com/android/contacts/common/GeoUtil.java b/java/com/android/contacts/common/GeoUtil.java
deleted file mode 100644
index 50b0cd9..0000000
--- a/java/com/android/contacts/common/GeoUtil.java
+++ /dev/null
@@ -1,55 +0,0 @@
-/*
- * Copyright (C) 2012 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.contacts.common;
-
-import android.app.Application;
-import android.content.Context;
-import com.android.contacts.common.location.CountryDetector;
-import com.google.i18n.phonenumbers.NumberParseException;
-import com.google.i18n.phonenumbers.PhoneNumberUtil;
-import com.google.i18n.phonenumbers.Phonenumber;
-import com.google.i18n.phonenumbers.geocoding.PhoneNumberOfflineGeocoder;
-import java.util.Locale;
-
-/** Static methods related to Geo. */
-public class GeoUtil {
-
-  /**
-   * Returns the country code of the country the user is currently in. Before calling this method,
-   * make sure that {@link CountryDetector#initialize(Context)} has already been called in {@link
-   * Application#onCreate()}.
-   *
-   * @return The ISO 3166-1 two letters country code of the country the user is in.
-   */
-  public static String getCurrentCountryIso(Context context) {
-    // The {@link CountryDetector} should never return null so this is safe to return as-is.
-    return CountryDetector.getInstance(context).getCurrentCountryIso();
-  }
-
-  public static String getGeocodedLocationFor(Context context, String phoneNumber) {
-    final PhoneNumberOfflineGeocoder geocoder = PhoneNumberOfflineGeocoder.getInstance();
-    final PhoneNumberUtil phoneNumberUtil = PhoneNumberUtil.getInstance();
-    try {
-      final Phonenumber.PhoneNumber structuredPhoneNumber =
-          phoneNumberUtil.parse(phoneNumber, getCurrentCountryIso(context));
-      final Locale locale = context.getResources().getConfiguration().locale;
-      return geocoder.getDescriptionForNumber(structuredPhoneNumber, locale);
-    } catch (NumberParseException e) {
-      return null;
-    }
-  }
-}
diff --git a/java/com/android/contacts/common/MoreContactUtils.java b/java/com/android/contacts/common/MoreContactUtils.java
index 028f899..26241b3 100644
--- a/java/com/android/contacts/common/MoreContactUtils.java
+++ b/java/com/android/contacts/common/MoreContactUtils.java
@@ -16,7 +16,6 @@
 
 package com.android.contacts.common;
 
-import android.content.Context;
 import android.content.Intent;
 import android.graphics.Rect;
 import android.net.Uri;
@@ -24,7 +23,6 @@
 import android.telephony.PhoneNumberUtils;
 import android.text.TextUtils;
 import android.view.View;
-import android.widget.TextView;
 import com.android.contacts.common.model.account.AccountType;
 import com.google.i18n.phonenumbers.NumberParseException;
 import com.google.i18n.phonenumbers.PhoneNumberUtil;
@@ -194,40 +192,6 @@
   }
 
   /**
-   * Returns a header view based on the R.layout.list_separator, where the containing {@link
-   * android.widget.TextView} is set using the given textResourceId.
-   */
-  public static TextView createHeaderView(Context context, int textResourceId) {
-    final TextView textView = (TextView) View.inflate(context, R.layout.list_separator, null);
-    textView.setText(context.getString(textResourceId));
-    return textView;
-  }
-
-  /**
-   * Set the top padding on the header view dynamically, based on whether the header is in the first
-   * row or not.
-   */
-  public static void setHeaderViewBottomPadding(
-      Context context, TextView textView, boolean isFirstRow) {
-    final int topPadding;
-    if (isFirstRow) {
-      topPadding =
-          (int)
-              context
-                  .getResources()
-                  .getDimension(R.dimen.frequently_contacted_title_top_margin_when_first_row);
-    } else {
-      topPadding =
-          (int) context.getResources().getDimension(R.dimen.frequently_contacted_title_top_margin);
-    }
-    textView.setPaddingRelative(
-        textView.getPaddingStart(),
-        topPadding,
-        textView.getPaddingEnd(),
-        textView.getPaddingBottom());
-  }
-
-  /**
    * Returns the intent to launch for the given invitable account type and contact lookup URI. This
    * will return null if the account type is not invitable (i.e. there is no {@link
    * AccountType#getInviteContactActivityClassName()} or {@link
diff --git a/java/com/android/contacts/common/compat/ContactsCompat.java b/java/com/android/contacts/common/compat/ContactsCompat.java
index 39d0b55..e0c9b7e 100644
--- a/java/com/android/contacts/common/compat/ContactsCompat.java
+++ b/java/com/android/contacts/common/compat/ContactsCompat.java
@@ -21,7 +21,6 @@
 import android.os.Build.VERSION_CODES;
 import android.provider.ContactsContract;
 import android.provider.ContactsContract.Contacts;
-import com.android.dialer.compat.CompatUtils;
 
 /** Compatibility class for {@link ContactsContract.Contacts} */
 public class ContactsCompat {
@@ -29,8 +28,6 @@
   // TODO: Use N APIs
   private static final Uri ENTERPRISE_CONTENT_FILTER_URI =
       Uri.withAppendedPath(Contacts.CONTENT_URI, "filter_enterprise");
-  // Copied from ContactsContract.Contacts#ENTERPRISE_CONTACT_ID_BASE, which is hidden.
-  private static final long ENTERPRISE_CONTACT_ID_BASE = 1000000000;
 
   /** Not instantiable. */
   private ContactsCompat() {}
@@ -41,17 +38,4 @@
     }
     return Contacts.CONTENT_FILTER_URI;
   }
-
-  /**
-   * Return {@code true} if a contact ID is from the contacts provider on the enterprise profile.
-   */
-  public static boolean isEnterpriseContactId(long contactId) {
-    if (CompatUtils.isLollipopCompatible()) {
-      return Contacts.isEnterpriseContactId(contactId);
-    } else {
-      // copied from ContactsContract.Contacts.isEnterpriseContactId
-      return (contactId >= ENTERPRISE_CONTACT_ID_BASE)
-          && (contactId < ContactsContract.Profile.MIN_ID);
-    }
-  }
 }
diff --git a/java/com/android/contacts/common/compat/PhoneAccountCompat.java b/java/com/android/contacts/common/compat/PhoneAccountCompat.java
index 6a24ec0..aa22c68 100644
--- a/java/com/android/contacts/common/compat/PhoneAccountCompat.java
+++ b/java/com/android/contacts/common/compat/PhoneAccountCompat.java
@@ -20,33 +20,10 @@
 import android.graphics.drawable.Icon;
 import android.support.annotation.Nullable;
 import android.telecom.PhoneAccount;
-import android.util.Log;
-import com.android.dialer.compat.CompatUtils;
 
 /** Compatiblity class for {@link android.telecom.PhoneAccount} */
 public class PhoneAccountCompat {
 
-  private static final String TAG = PhoneAccountCompat.class.getSimpleName();
-
-  /**
-   * Gets the {@link Icon} associated with the given {@link PhoneAccount}
-   *
-   * @param phoneAccount the PhoneAccount from which to retrieve the Icon
-   * @return the Icon, or null
-   */
-  @Nullable
-  public static Icon getIcon(@Nullable PhoneAccount phoneAccount) {
-    if (phoneAccount == null) {
-      return null;
-    }
-
-    if (CompatUtils.isMarshmallowCompatible()) {
-      return phoneAccount.getIcon();
-    }
-
-    return null;
-  }
-
   /**
    * Builds and returns an icon {@code Drawable} to represent this {@code PhoneAccount} in a user
    * interface.
@@ -61,44 +38,16 @@
     if (phoneAccount == null || context == null) {
       return null;
     }
-
-    if (CompatUtils.isMarshmallowCompatible()) {
-      return createIconDrawableMarshmallow(phoneAccount, context);
-    }
-
-    if (CompatUtils.isLollipopMr1Compatible()) {
-      return createIconDrawableLollipopMr1(phoneAccount, context);
-    }
-    return null;
+    return createIconDrawableMarshmallow(phoneAccount, context);
   }
 
   @Nullable
   private static Drawable createIconDrawableMarshmallow(
       PhoneAccount phoneAccount, Context context) {
-    Icon accountIcon = getIcon(phoneAccount);
+    Icon accountIcon = phoneAccount.getIcon();
     if (accountIcon == null) {
       return null;
     }
     return accountIcon.loadDrawable(context);
   }
-
-  @Nullable
-  private static Drawable createIconDrawableLollipopMr1(
-      PhoneAccount phoneAccount, Context context) {
-    try {
-      return (Drawable)
-          PhoneAccount.class
-              .getMethod("createIconDrawable", Context.class)
-              .invoke(phoneAccount, context);
-    } catch (ReflectiveOperationException e) {
-      return null;
-    } catch (Throwable t) {
-      Log.e(
-          TAG,
-          "Unexpected exception when attempting to call "
-              + "android.telecom.PhoneAccount#createIconDrawable",
-          t);
-      return null;
-    }
-  }
 }
diff --git a/java/com/android/contacts/common/compat/PhoneNumberUtilsCompat.java b/java/com/android/contacts/common/compat/PhoneNumberUtilsCompat.java
index 960b340..a6cfe07 100644
--- a/java/com/android/contacts/common/compat/PhoneNumberUtilsCompat.java
+++ b/java/com/android/contacts/common/compat/PhoneNumberUtilsCompat.java
@@ -17,13 +17,7 @@
 package com.android.contacts.common.compat;
 
 import android.telephony.PhoneNumberUtils;
-import android.text.Spannable;
-import android.text.TextUtils;
 import android.text.style.TtsSpan;
-import com.android.dialer.compat.CompatUtils;
-import com.google.i18n.phonenumbers.NumberParseException;
-import com.google.i18n.phonenumbers.PhoneNumberUtil;
-import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
 
 /**
  * This class contains static utility methods extracted from PhoneNumberUtils, and the methods were
@@ -37,138 +31,16 @@
   /** Not instantiable. */
   private PhoneNumberUtilsCompat() {}
 
-  public static String normalizeNumber(String phoneNumber) {
-    if (CompatUtils.isLollipopCompatible()) {
-      return PhoneNumberUtils.normalizeNumber(phoneNumber);
-    } else {
-      return normalizeNumberInternal(phoneNumber);
-    }
-  }
-
-  /** Implementation copied from {@link PhoneNumberUtils#normalizeNumber} */
-  private static String normalizeNumberInternal(String phoneNumber) {
-    if (TextUtils.isEmpty(phoneNumber)) {
-      return "";
-    }
-    StringBuilder sb = new StringBuilder();
-    int len = phoneNumber.length();
-    for (int i = 0; i < len; i++) {
-      char c = phoneNumber.charAt(i);
-      // Character.digit() supports ASCII and Unicode digits (fullwidth, Arabic-Indic, etc.)
-      int digit = Character.digit(c, 10);
-      if (digit != -1) {
-        sb.append(digit);
-      } else if (sb.length() == 0 && c == '+') {
-        sb.append(c);
-      } else if ((c >= 'a' && c <= 'z') || (c >= 'A' && c <= 'Z')) {
-        return normalizeNumber(PhoneNumberUtils.convertKeypadLettersToDigits(phoneNumber));
-      }
-    }
-    return sb.toString();
-  }
-
   public static String formatNumber(
       String phoneNumber, String phoneNumberE164, String defaultCountryIso) {
-    if (CompatUtils.isLollipopCompatible()) {
       return PhoneNumberUtils.formatNumber(phoneNumber, phoneNumberE164, defaultCountryIso);
-    } else {
-      // This method was deprecated in API level 21, so it's only used on pre-L SDKs.
-      return PhoneNumberUtils.formatNumber(phoneNumber);
-    }
   }
 
   public static CharSequence createTtsSpannable(CharSequence phoneNumber) {
-    if (CompatUtils.isMarshmallowCompatible()) {
-      return PhoneNumberUtils.createTtsSpannable(phoneNumber);
-    } else {
-      return createTtsSpannableInternal(phoneNumber);
-    }
+    return PhoneNumberUtils.createTtsSpannable(phoneNumber);
   }
 
   public static TtsSpan createTtsSpan(String phoneNumber) {
-    if (CompatUtils.isMarshmallowCompatible()) {
-      return PhoneNumberUtils.createTtsSpan(phoneNumber);
-    } else if (CompatUtils.isLollipopCompatible()) {
-      return createTtsSpanLollipop(phoneNumber);
-    } else {
-      return null;
-    }
-  }
-
-  /** Copied from {@link PhoneNumberUtils#createTtsSpannable} */
-  private static CharSequence createTtsSpannableInternal(CharSequence phoneNumber) {
-    if (phoneNumber == null) {
-      return null;
-    }
-    Spannable spannable = Spannable.Factory.getInstance().newSpannable(phoneNumber);
-    addTtsSpanInternal(spannable, 0, spannable.length());
-    return spannable;
-  }
-
-  /** Compat method for addTtsSpan, see {@link PhoneNumberUtils#addTtsSpan} */
-  public static void addTtsSpan(Spannable s, int start, int endExclusive) {
-    if (CompatUtils.isMarshmallowCompatible()) {
-      PhoneNumberUtils.addTtsSpan(s, start, endExclusive);
-    } else {
-      addTtsSpanInternal(s, start, endExclusive);
-    }
-  }
-
-  /** Copied from {@link PhoneNumberUtils#addTtsSpan} */
-  private static void addTtsSpanInternal(Spannable s, int start, int endExclusive) {
-    s.setSpan(
-        createTtsSpan(s.subSequence(start, endExclusive).toString()),
-        start,
-        endExclusive,
-        Spannable.SPAN_EXCLUSIVE_EXCLUSIVE);
-  }
-
-  /** Copied from {@link PhoneNumberUtils#createTtsSpan} */
-  private static TtsSpan createTtsSpanLollipop(String phoneNumberString) {
-    if (phoneNumberString == null) {
-      return null;
-    }
-
-    // Parse the phone number
-    final PhoneNumberUtil phoneNumberUtil = PhoneNumberUtil.getInstance();
-    PhoneNumber phoneNumber = null;
-    try {
-      // Don't supply a defaultRegion so this fails for non-international numbers because
-      // we don't want to TalkBalk to read a country code (e.g. +1) if it is not already
-      // present
-      phoneNumber = phoneNumberUtil.parse(phoneNumberString, /* defaultRegion */ null);
-    } catch (NumberParseException ignored) {
-    }
-
-    // Build a telephone tts span
-    final TtsSpan.TelephoneBuilder builder = new TtsSpan.TelephoneBuilder();
-    if (phoneNumber == null) {
-      // Strip separators otherwise TalkBack will be silent
-      // (this behavior was observed with TalkBalk 4.0.2 from their alpha channel)
-      builder.setNumberParts(splitAtNonNumerics(phoneNumberString));
-    } else {
-      if (phoneNumber.hasCountryCode()) {
-        builder.setCountryCode(Integer.toString(phoneNumber.getCountryCode()));
-      }
-      builder.setNumberParts(Long.toString(phoneNumber.getNationalNumber()));
-    }
-    return builder.build();
-  }
-
-  /**
-   * Split a phone number using spaces, ignoring anything that is not a digit
-   *
-   * @param number A {@code CharSequence} before splitting, e.g., "+20(123)-456#"
-   * @return A {@code String} after splitting, e.g., "20 123 456".
-   */
-  private static String splitAtNonNumerics(CharSequence number) {
-    StringBuilder sb = new StringBuilder(number.length());
-    for (int i = 0; i < number.length(); i++) {
-      sb.append(PhoneNumberUtils.isISODigit(number.charAt(i)) ? number.charAt(i) : " ");
-    }
-    // It is very important to remove extra spaces. At time of writing, any leading or trailing
-    // spaces, or any sequence of more than one space, will confuse TalkBack and cause the TTS
-    // span to be non-functional!
-    return sb.toString().replaceAll(" +", " ").trim();
+    return PhoneNumberUtils.createTtsSpan(phoneNumber);
   }
 }
diff --git a/java/com/android/contacts/common/compat/TelephonyManagerCompat.java b/java/com/android/contacts/common/compat/TelephonyManagerCompat.java
index 7e4803c..02113ca 100644
--- a/java/com/android/contacts/common/compat/TelephonyManagerCompat.java
+++ b/java/com/android/contacts/common/compat/TelephonyManagerCompat.java
@@ -27,7 +27,7 @@
 import android.telephony.TelephonyManager;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.telecom.TelecomUtil;
 import java.lang.reflect.InvocationTargetException;
 
 public class TelephonyManagerCompat {
@@ -40,6 +40,8 @@
   public static final String EVENT_CALL_REMOTELY_HELD = "android.telecom.event.CALL_REMOTELY_HELD";
   public static final String EVENT_CALL_REMOTELY_UNHELD =
       "android.telecom.event.CALL_REMOTELY_UNHELD";
+  public static final String EVENT_MERGE_START = "android.telecom.event.MERGE_START";
+  public static final String EVENT_MERGE_COMPLETE = "android.telecom.event.MERGE_COMPLETE";
 
   public static final String EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC =
       "android.telephony.event.EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC";
@@ -49,31 +51,6 @@
   private static final String SECRET_CODE_ACTION = "android.provider.Telephony.SECRET_CODE";
 
   /**
-   * @param telephonyManager The telephony manager instance to use for method calls.
-   * @return true if the current device is "voice capable".
-   *     <p>"Voice capable" means that this device supports circuit-switched (i.e. voice) phone
-   *     calls over the telephony network, and is allowed to display the in-call UI while a cellular
-   *     voice call is active. This will be false on "data only" devices which can't make voice
-   *     calls and don't support any in-call UI.
-   *     <p>Note: the meaning of this flag is subtly different from the
-   *     PackageManager.FEATURE_TELEPHONY system feature, which is available on any device with a
-   *     telephony radio, even if the device is data-only.
-   */
-  public static boolean isVoiceCapable(@Nullable TelephonyManager telephonyManager) {
-    if (telephonyManager == null) {
-      return false;
-    }
-    if (CompatUtils.isLollipopMr1Compatible()
-        || CompatUtils.isMethodAvailable(TELEPHONY_MANAGER_CLASS, "isVoiceCapable")) {
-      // isVoiceCapable was unhidden in L-MR1
-      return telephonyManager.isVoiceCapable();
-    }
-    final int phoneType = telephonyManager.getPhoneType();
-    return phoneType == TelephonyManager.PHONE_TYPE_CDMA
-        || phoneType == TelephonyManager.PHONE_TYPE_GSM;
-  }
-
-  /**
    * Returns the number of phones available. Returns 1 for Single standby mode (Single SIM
    * functionality) Returns 2 for Dual standby mode.(Dual SIM functionality)
    *
@@ -85,31 +62,7 @@
     if (telephonyManager == null) {
       return 1;
     }
-    if (CompatUtils.isMarshmallowCompatible()
-        || CompatUtils.isMethodAvailable(TELEPHONY_MANAGER_CLASS, "getPhoneCount")) {
-      return telephonyManager.getPhoneCount();
-    }
-    return 1;
-  }
-
-  /**
-   * Returns the unique device ID of a subscription, for example, the IMEI for GSM and the MEID for
-   * CDMA phones. Return null if device ID is not available.
-   *
-   * <p>Requires Permission: {@link android.Manifest.permission#READ_PHONE_STATE READ_PHONE_STATE}
-   *
-   * @param telephonyManager The telephony manager instance to use for method calls.
-   * @param slotId of which deviceID is returned
-   */
-  public static String getDeviceId(@Nullable TelephonyManager telephonyManager, int slotId) {
-    if (telephonyManager == null) {
-      return null;
-    }
-    if (CompatUtils.isMarshmallowCompatible()
-        || CompatUtils.isMethodAvailable(TELEPHONY_MANAGER_CLASS, "getDeviceId", Integer.class)) {
-      return telephonyManager.getDeviceId(slotId);
-    }
-    return null;
+    return telephonyManager.getPhoneCount();
   }
 
   /**
@@ -119,14 +72,7 @@
    * @return {@code true} if the device supports TTY mode, and {@code false} otherwise.
    */
   public static boolean isTtyModeSupported(@Nullable TelephonyManager telephonyManager) {
-    if (telephonyManager == null) {
-      return false;
-    }
-    if (CompatUtils.isMarshmallowCompatible()
-        || CompatUtils.isMethodAvailable(TELEPHONY_MANAGER_CLASS, "isTtyModeSupported")) {
-      return telephonyManager.isTtyModeSupported();
-    }
-    return false;
+    return telephonyManager != null && telephonyManager.isTtyModeSupported();
   }
 
   /**
@@ -138,15 +84,7 @@
    */
   public static boolean isHearingAidCompatibilitySupported(
       @Nullable TelephonyManager telephonyManager) {
-    if (telephonyManager == null) {
-      return false;
-    }
-    if (CompatUtils.isMarshmallowCompatible()
-        || CompatUtils.isMethodAvailable(
-            TELEPHONY_MANAGER_CLASS, "isHearingAidCompatibilitySupported")) {
-      return telephonyManager.isHearingAidCompatibilitySupported();
-    }
-    return false;
+    return telephonyManager != null && telephonyManager.isHearingAidCompatibilitySupported();
   }
 
   /**
@@ -228,6 +166,12 @@
   public static void handleSecretCode(Context context, String secretCode) {
     // Must use system service on O+ to avoid using broadcasts, which are not allowed on O+.
     if (BuildCompat.isAtLeastO()) {
+      if (!TelecomUtil.isDefaultDialer(context)) {
+        LogUtil.e(
+            "TelephonyManagerCompat.handleSecretCode",
+            "not default dialer, cannot send special code");
+        return;
+      }
       context.getSystemService(TelephonyManager.class).sendDialerSpecialCode(secretCode);
     } else {
       // System service call is not supported pre-O, so must use a broadcast for N-.
diff --git a/java/com/android/contacts/common/compat/telecom/TelecomManagerCompat.java b/java/com/android/contacts/common/compat/telecom/TelecomManagerCompat.java
index 5687f6f..8393b26 100644
--- a/java/com/android/contacts/common/compat/telecom/TelecomManagerCompat.java
+++ b/java/com/android/contacts/common/compat/telecom/TelecomManagerCompat.java
@@ -15,273 +15,25 @@
  */
 package com.android.contacts.common.compat.telecom;
 
-import android.app.Activity;
-import android.content.Intent;
-import android.net.Uri;
 import android.support.annotation.Nullable;
-import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
-import android.telephony.PhoneNumberUtils;
-import android.telephony.TelephonyManager;
-import android.text.TextUtils;
-import com.android.dialer.compat.CompatUtils;
-import java.util.ArrayList;
-import java.util.List;
+import java.lang.reflect.Field;
 
 /** Compatibility class for {@link android.telecom.TelecomManager}. */
 public class TelecomManagerCompat {
 
-  public static final String TELECOM_MANAGER_CLASS = "android.telecom.TelecomManager";
-
   // TODO: remove once this is available in android.telecom.Call
   // b/33779976
   public static final String EXTRA_LAST_EMERGENCY_CALLBACK_TIME_MILLIS =
       "android.telecom.extra.LAST_EMERGENCY_CALLBACK_TIME_MILLIS";
 
-  /**
-   * Places a new outgoing call to the provided address using the system telecom service with the
-   * specified intent.
-   *
-   * @param activity {@link Activity} used to start another activity for the given intent
-   * @param telecomManager the {@link TelecomManager} used to place a call, if possible
-   * @param intent the intent for the call
-   */
-  public static void placeCall(
-      @Nullable Activity activity,
-      @Nullable TelecomManager telecomManager,
-      @Nullable Intent intent) {
-    if (activity == null || telecomManager == null || intent == null) {
-      return;
-    }
-    if (CompatUtils.isMarshmallowCompatible()) {
-      telecomManager.placeCall(intent.getData(), intent.getExtras());
-      return;
-    }
-    activity.startActivityForResult(intent, 0);
-  }
-
-  /**
-   * Get the URI for running an adn query.
-   *
-   * @param telecomManager the {@link TelecomManager} used for method calls, if possible.
-   * @param accountHandle The handle for the account to derive an adn query URI for or {@code null}
-   *     to return a URI which will use the default account.
-   * @return The URI (with the content:// scheme) specific to the specified {@link PhoneAccount} for
-   *     the the content retrieve.
-   */
-  public static Uri getAdnUriForPhoneAccount(
-      @Nullable TelecomManager telecomManager, PhoneAccountHandle accountHandle) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(
-                TELECOM_MANAGER_CLASS, "getAdnUriForPhoneAccount", PhoneAccountHandle.class))) {
-      return telecomManager.getAdnUriForPhoneAccount(accountHandle);
-    }
-    return Uri.parse("content://icc/adn");
-  }
-
-  /**
-   * Returns a list of {@link PhoneAccountHandle}s which can be used to make and receive phone
-   * calls. The returned list includes only those accounts which have been explicitly enabled by the
-   * user.
-   *
-   * @param telecomManager the {@link TelecomManager} used for method calls, if possible.
-   * @return A list of PhoneAccountHandle objects.
-   */
-  public static List<PhoneAccountHandle> getCallCapablePhoneAccounts(
-      @Nullable TelecomManager telecomManager) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(
-                TELECOM_MANAGER_CLASS, "getCallCapablePhoneAccounts"))) {
-      return telecomManager.getCallCapablePhoneAccounts();
-    }
-    return new ArrayList<>();
-  }
-
-  /**
-   * Used to determine the currently selected default dialer package.
-   *
-   * @param telecomManager the {@link TelecomManager} used for method calls, if possible.
-   * @return package name for the default dialer package or null if no package has been selected as
-   *     the default dialer.
-   */
-  @Nullable
-  public static String getDefaultDialerPackage(@Nullable TelecomManager telecomManager) {
-    if (telecomManager != null && CompatUtils.isDefaultDialerCompatible()) {
-      return telecomManager.getDefaultDialerPackage();
-    }
-    return null;
-  }
-
-  /**
-   * Return the {@link PhoneAccount} which will be used to place outgoing calls to addresses with
-   * the specified {@code uriScheme}. This PhoneAccount will always be a member of the list which is
-   * returned from invoking {@link TelecomManager#getCallCapablePhoneAccounts()}. The specific
-   * account returned depends on the following priorities:
-   *
-   * <p>1. If the user-selected default PhoneAccount supports the specified scheme, it will be
-   * returned. 2. If there exists only one PhoneAccount that supports the specified scheme, it will
-   * be returned.
-   *
-   * <p>If no PhoneAccount fits the criteria above, this method will return {@code null}.
-   *
-   * @param telecomManager the {@link TelecomManager} used for method calls, if possible.
-   * @param uriScheme The URI scheme.
-   * @return The {@link PhoneAccountHandle} corresponding to the account to be used.
-   */
-  @Nullable
-  public static PhoneAccountHandle getDefaultOutgoingPhoneAccount(
-      @Nullable TelecomManager telecomManager, @Nullable String uriScheme) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(
-                TELECOM_MANAGER_CLASS, "getDefaultOutgoingPhoneAccount", String.class))) {
-      return telecomManager.getDefaultOutgoingPhoneAccount(uriScheme);
-    }
-    return null;
-  }
-
-  /**
-   * Return the line 1 phone number for given phone account.
-   *
-   * @param telecomManager the {@link TelecomManager} to use in the event that {@link
-   *     TelecomManager#getLine1Number(PhoneAccountHandle)} is available
-   * @param telephonyManager the {@link TelephonyManager} to use if TelecomManager#getLine1Number is
-   *     unavailable
-   * @param phoneAccountHandle the phoneAccountHandle upon which to check the line one number
-   * @return the line one number
-   */
-  @Nullable
-  public static String getLine1Number(
-      @Nullable TelecomManager telecomManager,
-      @Nullable TelephonyManager telephonyManager,
-      @Nullable PhoneAccountHandle phoneAccountHandle) {
-    if (telecomManager != null && CompatUtils.isMarshmallowCompatible()) {
-      return telecomManager.getLine1Number(phoneAccountHandle);
-    }
-    if (telephonyManager != null) {
-      return telephonyManager.getLine1Number();
-    }
-    return null;
-  }
-
-  /**
-   * Return whether a given phone number is the configured voicemail number for a particular phone
-   * account.
-   *
-   * @param telecomManager the {@link TelecomManager} to use for checking the number.
-   * @param accountHandle The handle for the account to check the voicemail number against
-   * @param number The number to look up.
-   */
-  public static boolean isVoiceMailNumber(
-      @Nullable TelecomManager telecomManager,
-      @Nullable PhoneAccountHandle accountHandle,
-      @Nullable String number) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(
-                TELECOM_MANAGER_CLASS,
-                "isVoiceMailNumber",
-                PhoneAccountHandle.class,
-                String.class))) {
-      return telecomManager.isVoiceMailNumber(accountHandle, number);
-    }
-    return PhoneNumberUtils.isVoiceMailNumber(number);
-  }
-
-  /**
-   * Return the {@link PhoneAccount} for a specified {@link PhoneAccountHandle}. Object includes
-   * resources which can be used in a user interface.
-   *
-   * @param telecomManager the {@link TelecomManager} used for method calls, if possible.
-   * @param account The {@link PhoneAccountHandle}.
-   * @return The {@link PhoneAccount} object or null if it doesn't exist.
-   */
-  @Nullable
-  public static PhoneAccount getPhoneAccount(
-      @Nullable TelecomManager telecomManager, @Nullable PhoneAccountHandle accountHandle) {
-    if (telecomManager != null
-        && (CompatUtils.isMethodAvailable(
-            TELECOM_MANAGER_CLASS, "getPhoneAccount", PhoneAccountHandle.class))) {
-      return telecomManager.getPhoneAccount(accountHandle);
-    }
-    return null;
-  }
-
-  /**
-   * Return the voicemail number for a given phone account.
-   *
-   * @param telecomManager The {@link TelecomManager} object to use for retrieving the voicemail
-   *     number if accountHandle is specified.
-   * @param telephonyManager The {@link TelephonyManager} object to use for retrieving the voicemail
-   *     number if accountHandle is null.
-   * @param accountHandle The handle for the phone account.
-   * @return The voicemail number for the phone account, and {@code null} if one has not been
-   *     configured.
-   */
-  @Nullable
-  public static String getVoiceMailNumber(
-      @Nullable TelecomManager telecomManager,
-      @Nullable TelephonyManager telephonyManager,
-      @Nullable PhoneAccountHandle accountHandle) {
-    if (telecomManager != null
-        && (CompatUtils.isMethodAvailable(
-            TELECOM_MANAGER_CLASS, "getVoiceMailNumber", PhoneAccountHandle.class))) {
-      return telecomManager.getVoiceMailNumber(accountHandle);
-    } else if (telephonyManager != null) {
-      return telephonyManager.getVoiceMailNumber();
-    }
-    return null;
-  }
-
-  /**
-   * Processes the specified dial string as an MMI code. MMI codes are any sequence of characters
-   * entered into the dialpad that contain a "*" or "#". Some of these sequences launch special
-   * behavior through handled by Telephony.
-   *
-   * @param telecomManager The {@link TelecomManager} object to use for handling MMI.
-   * @param dialString The digits to dial.
-   * @return {@code true} if the digits were processed as an MMI code, {@code false} otherwise.
-   */
-  public static boolean handleMmi(
-      @Nullable TelecomManager telecomManager,
-      @Nullable String dialString,
-      @Nullable PhoneAccountHandle accountHandle) {
-    if (telecomManager == null || TextUtils.isEmpty(dialString)) {
-      return false;
-    }
-    if (CompatUtils.isMarshmallowCompatible()) {
-      return telecomManager.handleMmi(dialString, accountHandle);
-    }
-
-    Object handleMmiResult =
-        CompatUtils.invokeMethod(
-            telecomManager,
-            "handleMmi",
-            new Class<?>[] {PhoneAccountHandle.class, String.class},
-            new Object[] {accountHandle, dialString});
-    if (handleMmiResult != null) {
-      return (boolean) handleMmiResult;
-    }
-
-    return telecomManager.handleMmi(dialString);
-  }
-
-  /**
-   * Silences the ringer if a ringing call exists. Noop if {@link TelecomManager#silenceRinger()} is
-   * unavailable.
-   *
-   * @param telecomManager the TelecomManager to use to silence the ringer.
-   */
-  public static void silenceRinger(@Nullable TelecomManager telecomManager) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(TELECOM_MANAGER_CLASS, "silenceRinger"))) {
-      telecomManager.silenceRinger();
-    }
-  }
+  // Constants from http://cs/android/frameworks/base/telecomm/java/android/telecom/Call.java.
+  public static final String EVENT_REQUEST_HANDOVER = "android.telecom.event.REQUEST_HANDOVER";
+  public static final String EXTRA_HANDOVER_PHONE_ACCOUNT_HANDLE =
+      "android.telecom.extra.HANDOVER_PHONE_ACCOUNT_HANDLE";
+  public static final String EXTRA_HANDOVER_VIDEO_STATE =
+      "android.telecom.extra.HANDOVER_VIDEO_STATE";
 
   /**
    * Returns the current SIM call manager. Apps must be prepared for this method to return null,
@@ -292,11 +44,25 @@
    */
   @Nullable
   public static PhoneAccountHandle getSimCallManager(TelecomManager telecomManager) {
-    if (telecomManager != null
-        && (CompatUtils.isMarshmallowCompatible()
-            || CompatUtils.isMethodAvailable(TELECOM_MANAGER_CLASS, "getSimCallManager"))) {
+    if (telecomManager != null) {
       return telecomManager.getSimCallManager();
     }
     return null;
   }
+
+  /**
+   * Handovers are supported from Android O-DR onward. Since there is no API bump from O to O-DR, we
+   * need to use reflection to check the existence of TelecomManager.EXTRA_IS_HANDOVER in
+   * http://cs/android/frameworks/base/telecomm/java/android/telecom/TelecomManager.java.
+   */
+  public static boolean supportsHandover() {
+    //
+    try {
+      Field field = TelecomManager.class.getDeclaredField("EXTRA_IS_HANDOVER");
+      return "android.telecom.extra.IS_HANDOVER".equals(field.get(null /* obj (static field) */));
+    } catch (Exception e) {
+      // Do nothing
+    }
+    return false;
+  }
 }
diff --git a/java/com/android/contacts/common/dialog/CallSubjectDialog.java b/java/com/android/contacts/common/dialog/CallSubjectDialog.java
index 0e79371..88fac02 100644
--- a/java/com/android/contacts/common/dialog/CallSubjectDialog.java
+++ b/java/com/android/contacts/common/dialog/CallSubjectDialog.java
@@ -45,7 +45,7 @@
 import android.widget.TextView;
 import com.android.contacts.common.ContactPhotoManager;
 import com.android.contacts.common.R;
-import com.android.contacts.common.compat.telecom.TelecomManagerCompat;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
 import com.android.dialer.animation.AnimUtils;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallIntentBuilder;
@@ -154,11 +154,7 @@
                   .setCallSubject(subject)
                   .build();
 
-          TelecomManagerCompat.placeCall(
-              CallSubjectDialog.this,
-              (TelecomManager) getSystemService(Context.TELECOM_SERVICE),
-              intent);
-
+          getSystemService(TelecomManager.class).placeCall(intent.getData(), intent.getExtras());
           mSubjectHistory.add(subject);
           saveSubjectHistory(mSubjectHistory);
           finish();
@@ -202,7 +198,7 @@
         number /* number */,
         null /* displayNumber */,
         null /* numberLabel */,
-        ContactPhotoManager.TYPE_DEFAULT,
+        LetterTileDrawable.TYPE_DEFAULT,
         null /* phoneAccountHandle */);
   }
 
@@ -356,7 +352,7 @@
     mNumber = arguments.getString(ARG_NUMBER);
     mDisplayNumber = arguments.getString(ARG_DISPLAY_NUMBER);
     mNumberLabel = arguments.getString(ARG_NUMBER_LABEL);
-    mContactType = arguments.getInt(ARG_CONTACT_TYPE, ContactPhotoManager.TYPE_DEFAULT);
+    mContactType = arguments.getInt(ARG_CONTACT_TYPE, LetterTileDrawable.TYPE_DEFAULT);
     mPhoneAccountHandle = arguments.getParcelable(ARG_PHONE_ACCOUNT_HANDLE);
   }
 
diff --git a/java/com/android/contacts/common/extensions/PhoneDirectoryExtender.java b/java/com/android/contacts/common/extensions/PhoneDirectoryExtender.java
index 2607ad1..6c932daf 100644
--- a/java/com/android/contacts/common/extensions/PhoneDirectoryExtender.java
+++ b/java/com/android/contacts/common/extensions/PhoneDirectoryExtender.java
@@ -15,14 +15,24 @@
 package com.android.contacts.common.extensions;
 
 import android.content.Context;
+import android.net.Uri;
+import android.support.annotation.Nullable;
 import com.android.contacts.common.list.DirectoryPartition;
 import java.util.List;
 
 /** An interface for adding extended phone directories. */
 public interface PhoneDirectoryExtender {
+
   /**
    * Return a list of extended directories to add. May return null if no directories are to be
    * added.
    */
   List<DirectoryPartition> getExtendedDirectories(Context context);
+
+  /** returns true if the nearby places directory is enabled. */
+  boolean isEnabled(Context context);
+
+  /** Returns the content uri for nearby places. */
+  @Nullable
+  Uri getContentUri();
 }
diff --git a/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderAccessor.java b/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderAccessor.java
index 84649f1..7978831 100644
--- a/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderAccessor.java
+++ b/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderAccessor.java
@@ -16,6 +16,7 @@
 
 import android.content.Context;
 import android.support.annotation.NonNull;
+import android.support.annotation.VisibleForTesting;
 import com.android.dialer.common.Assert;
 
 /** Accessor for the phone directory extender singleton. */
@@ -25,6 +26,11 @@
 
   private PhoneDirectoryExtenderAccessor() {}
 
+  @VisibleForTesting
+  public static void setForTesting(PhoneDirectoryExtender extender) {
+    instance = extender;
+  }
+
   @NonNull
   public static PhoneDirectoryExtender get(@NonNull Context context) {
     Assert.isNotNull(context);
diff --git a/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderStub.java b/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderStub.java
index 95f9715..4c3d3d1 100644
--- a/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderStub.java
+++ b/java/com/android/contacts/common/extensions/PhoneDirectoryExtenderStub.java
@@ -15,6 +15,8 @@
 package com.android.contacts.common.extensions;
 
 import android.content.Context;
+import android.net.Uri;
+import android.support.annotation.Nullable;
 import com.android.contacts.common.list.DirectoryPartition;
 import java.util.Collections;
 import java.util.List;
@@ -26,4 +28,15 @@
   public List<DirectoryPartition> getExtendedDirectories(Context context) {
     return Collections.emptyList();
   }
+
+  @Override
+  public boolean isEnabled(Context context) {
+    return false;
+  }
+
+  @Nullable
+  @Override
+  public Uri getContentUri() {
+    return null;
+  }
 }
diff --git a/java/com/android/contacts/common/format/FormatUtils.java b/java/com/android/contacts/common/format/FormatUtils.java
deleted file mode 100644
index 727c15b..0000000
--- a/java/com/android/contacts/common/format/FormatUtils.java
+++ /dev/null
@@ -1,181 +0,0 @@
-/*
- * Copyright (C) 2011 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.contacts.common.format;
-
-import android.database.CharArrayBuffer;
-import android.graphics.Typeface;
-import android.support.annotation.VisibleForTesting;
-import android.text.SpannableString;
-import android.text.style.StyleSpan;
-import java.util.Arrays;
-
-/** Assorted utility methods related to text formatting in Contacts. */
-public class FormatUtils {
-
-  /**
-   * Finds the earliest point in buffer1 at which the first part of buffer2 matches. For example,
-   * overlapPoint("abcd", "cdef") == 2.
-   */
-  public static int overlapPoint(CharArrayBuffer buffer1, CharArrayBuffer buffer2) {
-    if (buffer1 == null || buffer2 == null) {
-      return -1;
-    }
-    return overlapPoint(
-        Arrays.copyOfRange(buffer1.data, 0, buffer1.sizeCopied),
-        Arrays.copyOfRange(buffer2.data, 0, buffer2.sizeCopied));
-  }
-
-  /**
-   * Finds the earliest point in string1 at which the first part of string2 matches. For example,
-   * overlapPoint("abcd", "cdef") == 2.
-   */
-  @VisibleForTesting
-  public static int overlapPoint(String string1, String string2) {
-    if (string1 == null || string2 == null) {
-      return -1;
-    }
-    return overlapPoint(string1.toCharArray(), string2.toCharArray());
-  }
-
-  /**
-   * Finds the earliest point in array1 at which the first part of array2 matches. For example,
-   * overlapPoint("abcd", "cdef") == 2.
-   */
-  public static int overlapPoint(char[] array1, char[] array2) {
-    if (array1 == null || array2 == null) {
-      return -1;
-    }
-    int count1 = array1.length;
-    int count2 = array2.length;
-
-    // Ignore matching tails of the two arrays.
-    while (count1 > 0 && count2 > 0 && array1[count1 - 1] == array2[count2 - 1]) {
-      count1--;
-      count2--;
-    }
-
-    int size = count2;
-    for (int i = 0; i < count1; i++) {
-      if (i + size > count1) {
-        size = count1 - i;
-      }
-      int j;
-      for (j = 0; j < size; j++) {
-        if (array1[i + j] != array2[j]) {
-          break;
-        }
-      }
-      if (j == size) {
-        return i;
-      }
-    }
-
-    return -1;
-  }
-
-  /**
-   * Applies the given style to a range of the input CharSequence.
-   *
-   * @param style The style to apply (see the style constants in {@link Typeface}).
-   * @param input The CharSequence to style.
-   * @param start Starting index of the range to style (will be clamped to be a minimum of 0).
-   * @param end Ending index of the range to style (will be clamped to a maximum of the input
-   *     length).
-   * @param flags Bitmask for configuring behavior of the span. See {@link android.text.Spanned}.
-   * @return The styled CharSequence.
-   */
-  public static CharSequence applyStyleToSpan(
-      int style, CharSequence input, int start, int end, int flags) {
-    // Enforce bounds of the char sequence.
-    start = Math.max(0, start);
-    end = Math.min(input.length(), end);
-    SpannableString text = new SpannableString(input);
-    text.setSpan(new StyleSpan(style), start, end, flags);
-    return text;
-  }
-
-  @VisibleForTesting
-  public static void copyToCharArrayBuffer(String text, CharArrayBuffer buffer) {
-    if (text != null) {
-      char[] data = buffer.data;
-      if (data == null || data.length < text.length()) {
-        buffer.data = text.toCharArray();
-      } else {
-        text.getChars(0, text.length(), data, 0);
-      }
-      buffer.sizeCopied = text.length();
-    } else {
-      buffer.sizeCopied = 0;
-    }
-  }
-
-  /** Returns a String that represents the content of the given {@link CharArrayBuffer}. */
-  @VisibleForTesting
-  public static String charArrayBufferToString(CharArrayBuffer buffer) {
-    return new String(buffer.data, 0, buffer.sizeCopied);
-  }
-
-  /**
-   * Finds the index of the first word that starts with the given prefix.
-   *
-   * <p>If not found, returns -1.
-   *
-   * @param text the text in which to search for the prefix
-   * @param prefix the text to find, in upper case letters
-   */
-  public static int indexOfWordPrefix(CharSequence text, String prefix) {
-    if (prefix == null || text == null) {
-      return -1;
-    }
-
-    int textLength = text.length();
-    int prefixLength = prefix.length();
-
-    if (prefixLength == 0 || textLength < prefixLength) {
-      return -1;
-    }
-
-    int i = 0;
-    while (i < textLength) {
-      // Skip non-word characters
-      while (i < textLength && !Character.isLetterOrDigit(text.charAt(i))) {
-        i++;
-      }
-
-      if (i + prefixLength > textLength) {
-        return -1;
-      }
-
-      // Compare the prefixes
-      int j;
-      for (j = 0; j < prefixLength; j++) {
-        if (Character.toUpperCase(text.charAt(i + j)) != prefix.charAt(j)) {
-          break;
-        }
-      }
-      if (j == prefixLength) {
-        return i;
-      }
-
-      // Skip this word
-      while (i < textLength && Character.isLetterOrDigit(text.charAt(i))) {
-        i++;
-      }
-    }
-
-    return -1;
-  }
-}
diff --git a/java/com/android/contacts/common/format/TextHighlighter.java b/java/com/android/contacts/common/format/TextHighlighter.java
index 30c03fd..f397f04 100644
--- a/java/com/android/contacts/common/format/TextHighlighter.java
+++ b/java/com/android/contacts/common/format/TextHighlighter.java
@@ -24,8 +24,6 @@
 /** Highlights the text in a text field. */
 public class TextHighlighter {
 
-  private static final boolean DEBUG = false;
-  private final String TAG = TextHighlighter.class.getSimpleName();
   private int mTextStyle;
 
   private CharacterStyle mTextStyleSpan;
@@ -81,7 +79,7 @@
     }
     final String trimmedPrefix = prefix.substring(prefixStart);
 
-    int index = FormatUtils.indexOfWordPrefix(text, trimmedPrefix);
+    int index = indexOfWordPrefix(text, trimmedPrefix);
     if (index != -1) {
       final SpannableString result = new SpannableString(text);
       result.setSpan(mTextStyleSpan, index, index + trimmedPrefix.length(), 0 /* flags */);
@@ -90,4 +88,55 @@
       return text;
     }
   }
+
+  /**
+   * Finds the index of the first word that starts with the given prefix.
+   *
+   * <p>If not found, returns -1.
+   *
+   * @param text the text in which to search for the prefix
+   * @param prefix the text to find, in upper case letters
+   */
+  public static int indexOfWordPrefix(CharSequence text, String prefix) {
+    if (prefix == null || text == null) {
+      return -1;
+    }
+
+    int textLength = text.length();
+    int prefixLength = prefix.length();
+
+    if (prefixLength == 0 || textLength < prefixLength) {
+      return -1;
+    }
+
+    int i = 0;
+    while (i < textLength) {
+      // Skip non-word characters
+      while (i < textLength && !Character.isLetterOrDigit(text.charAt(i))) {
+        i++;
+      }
+
+      if (i + prefixLength > textLength) {
+        return -1;
+      }
+
+      // Compare the prefixes
+      int j;
+      for (j = 0; j < prefixLength; j++) {
+        if (Character.toUpperCase(text.charAt(i + j)) != prefix.charAt(j)) {
+          break;
+        }
+      }
+      if (j == prefixLength) {
+        return i;
+      }
+
+      // Skip this word
+      while (i < textLength && Character.isLetterOrDigit(text.charAt(i))) {
+        i++;
+      }
+    }
+
+    return -1;
+  }
 }
diff --git a/java/com/android/contacts/common/format/testing/SpannedTestUtils.java b/java/com/android/contacts/common/format/testing/SpannedTestUtils.java
deleted file mode 100644
index 293d9d5..0000000
--- a/java/com/android/contacts/common/format/testing/SpannedTestUtils.java
+++ /dev/null
@@ -1,85 +0,0 @@
-/*
- * Copyright (C) 2011 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.contacts.common.format.testing;
-
-import android.test.suitebuilder.annotation.SmallTest;
-import android.text.Html;
-import android.text.SpannableString;
-import android.text.Spanned;
-import android.text.TextUtils;
-import android.text.style.StyleSpan;
-import android.widget.TextView;
-import junit.framework.Assert;
-
-/** Utility class to check the value of spanned text in text views. */
-@SmallTest
-public class SpannedTestUtils {
-
-  /**
-   * Checks that the text contained in the text view matches the given HTML text.
-   *
-   * @param expectedHtmlText the expected text to be in the text view
-   * @param textView the text view from which to get the text
-   */
-  public static void checkHtmlText(String expectedHtmlText, TextView textView) {
-    String actualHtmlText = Html.toHtml((Spanned) textView.getText());
-    if (TextUtils.isEmpty(expectedHtmlText)) {
-      // If the text is empty, it does not add the <p></p> bits to it.
-      Assert.assertEquals("", actualHtmlText);
-    } else {
-      Assert.assertEquals("<p dir=ltr>" + expectedHtmlText + "</p>\n", actualHtmlText);
-    }
-  }
-
-  /**
-   * Assert span exists in the correct location.
-   *
-   * @param seq The spannable string to check.
-   * @param start The starting index.
-   * @param end The ending index.
-   */
-  public static void assertPrefixSpan(CharSequence seq, int start, int end) {
-    Assert.assertTrue(seq instanceof Spanned);
-    Spanned spannable = (Spanned) seq;
-
-    if (start > 0) {
-      Assert.assertEquals(0, getNumForegroundColorSpansBetween(spannable, 0, start - 1));
-    }
-    Assert.assertEquals(1, getNumForegroundColorSpansBetween(spannable, start, end));
-    Assert.assertEquals(
-        0, getNumForegroundColorSpansBetween(spannable, end + 1, spannable.length() - 1));
-  }
-
-  private static int getNumForegroundColorSpansBetween(Spanned value, int start, int end) {
-    return value.getSpans(start, end, StyleSpan.class).length;
-  }
-
-  /**
-   * Asserts that the given character sequence is not a Spanned object and text is correct.
-   *
-   * @param seq The sequence to check.
-   * @param expected The expected text.
-   */
-  public static void assertNotSpanned(CharSequence seq, String expected) {
-    Assert.assertFalse(seq instanceof Spanned);
-    Assert.assertEquals(expected, seq);
-  }
-
-  public static int getNextTransition(SpannableString seq, int start) {
-    return seq.nextSpanTransition(start, seq.length(), StyleSpan.class);
-  }
-}
diff --git a/java/com/android/contacts/common/lettertiles/LetterTileDrawable.java b/java/com/android/contacts/common/lettertiles/LetterTileDrawable.java
index 88522c4..5c401fe 100644
--- a/java/com/android/contacts/common/lettertiles/LetterTileDrawable.java
+++ b/java/com/android/contacts/common/lettertiles/LetterTileDrawable.java
@@ -29,9 +29,12 @@
 import android.graphics.Typeface;
 import android.graphics.drawable.Drawable;
 import android.support.annotation.IntDef;
+import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.telecom.TelecomManager;
 import android.text.TextUtils;
 import com.android.contacts.common.R;
+import com.android.contacts.common.lettertiles.LetterTileDrawable.ContactType;
 import com.android.dialer.common.Assert;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
@@ -122,10 +125,16 @@
       sLetterToTileRatio = res.getFraction(R.dimen.letter_to_tile_ratio, 1, 1);
       sDefaultPersonAvatar =
           res.getDrawable(R.drawable.product_logo_avatar_anonymous_white_color_120, null);
+      Assert.isNotNull(sDefaultPersonAvatar, "sDefaultPersonAvatar is null");
       sDefaultBusinessAvatar = res.getDrawable(R.drawable.quantum_ic_business_vd_theme_24, null);
+      Assert.isNotNull(sDefaultBusinessAvatar, "sDefaultBusinessAvatar is null");
       sDefaultVoicemailAvatar = res.getDrawable(R.drawable.quantum_ic_voicemail_vd_theme_24, null);
+      Assert.isNotNull(sDefaultVoicemailAvatar, "sDefaultVoicemailAvatar is null");
       sDefaultSpamAvatar = res.getDrawable(R.drawable.quantum_ic_report_vd_theme_24, null);
+      Assert.isNotNull(sDefaultSpamAvatar, "sDefaultSpamAvatar is null");
       sDefaultConferenceAvatar = res.getDrawable(R.drawable.quantum_ic_group_vd_theme_24, null);
+      Assert.isNotNull(sDefaultConferenceAvatar, "sDefaultConferenceAvatar is null");
+
       sPaint.setTypeface(
           Typeface.create(res.getString(R.string.letter_tile_letter_font_family), Typeface.NORMAL));
       sPaint.setTextAlign(Align.CENTER);
@@ -178,7 +187,7 @@
   }
 
   @Override
-  public void draw(final Canvas canvas) {
+  public void draw(@NonNull final Canvas canvas) {
     final Rect bounds = getBounds();
     if (!isVisible() || bounds.isEmpty()) {
       return;
@@ -233,6 +242,11 @@
     } else {
       // Draw the default image if there is no letter/digit to be drawn
       Drawable drawable = getDrawableForContactType(mContactType);
+      if (drawable == null) {
+        throw Assert.createIllegalStateFailException(
+            "Unable to find drawable for contact type " + mContactType);
+      }
+
       drawable.setBounds(getScaledBounds(mScale, mOffset));
       drawable.setAlpha(drawable == sDefaultSpamAvatar ? SPAM_ALPHA : ALPHA);
       drawable.draw(canvas);
@@ -406,4 +420,30 @@
     }
     return this;
   }
+
+  /**
+   * Returns the appropriate LetterTileDrawable.TYPE_ based on the given primitive conditions.
+   *
+   * <p>If no special state is detected, yields TYPE_DEFAULT
+   */
+  public static @ContactType int getContactTypeFromPrimitives(
+      boolean isVoicemailNumber,
+      boolean isSpam,
+      boolean isBusiness,
+      int numberPresentation,
+      boolean isConference) {
+    if (isVoicemailNumber) {
+      return LetterTileDrawable.TYPE_VOICEMAIL;
+    } else if (isSpam) {
+      return LetterTileDrawable.TYPE_SPAM;
+    } else if (isBusiness) {
+      return LetterTileDrawable.TYPE_BUSINESS;
+    } else if (numberPresentation == TelecomManager.PRESENTATION_RESTRICTED) {
+      return LetterTileDrawable.TYPE_GENERIC_AVATAR;
+    } else if (isConference) {
+      return LetterTileDrawable.TYPE_CONFERENCE;
+    } else {
+      return LetterTileDrawable.TYPE_DEFAULT;
+    }
+  }
 }
diff --git a/java/com/android/contacts/common/list/ContactEntryListAdapter.java b/java/com/android/contacts/common/list/ContactEntryListAdapter.java
index 18bbae3..7335297 100644
--- a/java/com/android/contacts/common/list/ContactEntryListAdapter.java
+++ b/java/com/android/contacts/common/list/ContactEntryListAdapter.java
@@ -26,7 +26,6 @@
 import android.provider.ContactsContract.Contacts;
 import android.provider.ContactsContract.Directory;
 import android.text.TextUtils;
-import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
@@ -39,7 +38,11 @@
 import com.android.contacts.common.R;
 import com.android.contacts.common.compat.DirectoryCompat;
 import com.android.contacts.common.util.SearchUtil;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.configprovider.ConfigProviderBindings;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 import java.util.HashSet;
 
 /**
@@ -53,7 +56,6 @@
    */
   public static final boolean LOCAL_INVISIBLE_DIRECTORY_ENABLED = false;
 
-  private static final String TAG = "ContactEntryListAdapter";
   private int mDisplayOrder;
   private int mSortOrder;
 
@@ -80,6 +82,8 @@
   private ContactListFilter mFilter;
   private boolean mDarkTheme = false;
 
+  public static final int SUGGESTIONS_LOADER_ID = 0;
+
   /** Resource used to provide header-text for default filter. */
   private CharSequence mDefaultFilterHeaderText;
 
@@ -128,9 +132,22 @@
   }
 
   protected void addPartitions() {
+    if (ConfigProviderBindings.get(getContext()).getBoolean("p13n_ranker_should_enable", false)) {
+      addPartition(createSuggestionsDirectoryPartition());
+    }
     addPartition(createDefaultDirectoryPartition());
   }
 
+  protected DirectoryPartition createSuggestionsDirectoryPartition() {
+    DirectoryPartition partition = new DirectoryPartition(true, true);
+    partition.setDirectoryId(SUGGESTIONS_LOADER_ID);
+    partition.setDirectoryType(getContext().getString(R.string.contact_suggestions));
+    partition.setPriorityDirectory(true);
+    partition.setPhotoSupported(true);
+    partition.setLabel(getContext().getString(R.string.local_suggestions_search_label));
+    return partition;
+  }
+
   protected DirectoryPartition createDefaultDirectoryPartition() {
     DirectoryPartition partition = new DirectoryPartition(true, true);
     partition.setDirectoryId(Directory.DEFAULT);
@@ -243,6 +260,11 @@
     } else {
       mUpperCaseQueryString = SearchUtil.cleanStartAndEndOfSearchQuery(queryString.toUpperCase());
     }
+
+    // Enable default partition header if in search mode (including zero-suggest).
+    if (mQueryString != null) {
+      setDefaultPartitionHeader(true);
+    }
   }
 
   public String getUpperCaseQueryString() {
@@ -354,9 +376,9 @@
     if (cursor.getCount() == 0) {
       // Directory table must have at least local directory, without which this adapter will
       // enter very weird state.
-      Log.e(
-          TAG,
-          "Directory search loader returned an empty cursor, which implies we have "
+      LogUtil.i(
+          "ContactEntryListAdapter.changeDirectories",
+          "directory search loader returned an empty cursor, which implies we have "
               + "no directory entries.",
           new RuntimeException());
       return;
@@ -529,22 +551,27 @@
     return false;
   }
 
-  /** Changes visibility parameters for the default directory partition. */
-  public void configureDefaultPartition(boolean showIfEmpty, boolean hasHeader) {
+  /** Configures visibility parameters for the directory partitions. */
+  public void configurePartitionsVisibility(boolean isInSearchMode) {
+    for (int i = 0; i < getPartitionCount(); i++) {
+      setShowIfEmpty(i, false);
+      setHasHeader(i, isInSearchMode);
+    }
+  }
+
+  // Sets header for the default partition.
+  private void setDefaultPartitionHeader(boolean setHeader) {
+    // Iterate in reverse here to ensure the first DEFAULT directory has header.
+    // Both "Suggestions" and "All Contacts" directories have DEFAULT id.
     int defaultPartitionIndex = -1;
-    int count = getPartitionCount();
-    for (int i = 0; i < count; i++) {
+    for (int i = getPartitionCount() - 1; i >= 0; i--) {
       Partition partition = getPartition(i);
       if (partition instanceof DirectoryPartition
           && ((DirectoryPartition) partition).getDirectoryId() == Directory.DEFAULT) {
         defaultPartitionIndex = i;
-        break;
       }
     }
-    if (defaultPartitionIndex != -1) {
-      setShowIfEmpty(defaultPartitionIndex, showIfEmpty);
-      setHasHeader(defaultPartitionIndex, hasHeader);
-    }
+    setHasHeader(defaultPartitionIndex, setHeader);
   }
 
   @Override
@@ -678,6 +705,9 @@
       // mimetype here is reasonable.
       quickContact.setPrioritizedMimeType(Phone.CONTENT_ITEM_TYPE);
     }
+    Logger.get(mContext)
+        .logQuickContactOnTouch(
+            quickContact, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_SEARCH, true);
 
     if (photoId != 0 || photoUriColumn == -1) {
       getPhotoLoader().loadThumbnail(quickContact, photoId, mDarkTheme, mCircularPhotos, null);
diff --git a/java/com/android/contacts/common/list/ContactEntryListFragment.java b/java/com/android/contacts/common/list/ContactEntryListFragment.java
index 278175c..04658be 100644
--- a/java/com/android/contacts/common/list/ContactEntryListFragment.java
+++ b/java/com/android/contacts/common/list/ContactEntryListFragment.java
@@ -47,6 +47,7 @@
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contacts.common.util.ContactListViewUtils;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.performancereport.PerformanceReport;
 import java.lang.ref.WeakReference;
 import java.util.Locale;
 
@@ -440,6 +441,11 @@
       return;
     }
 
+    // Return for non-"Suggestions" if on the zero-suggest screen.
+    if (TextUtils.isEmpty(mQueryString) && partitionIndex > 0) {
+      return;
+    }
+
     mAdapter.changeCursor(partitionIndex, data);
     setProfileHeader();
 
@@ -555,7 +561,6 @@
   protected void setSearchMode(boolean flag) {
     if (mSearchMode != flag) {
       mSearchMode = flag;
-      setSectionHeaderDisplayEnabled(!mSearchMode);
 
       if (!flag) {
         mDirectoryListStatus = STATUS_NOT_LOADED;
@@ -572,7 +577,7 @@
           // should be cleaned up on exiting the search mode.
           mAdapter.removeDirectoriesAfterDefault();
         }
-        mAdapter.configureDefaultPartition(false, flag);
+        mAdapter.configurePartitionsVisibility(flag);
       }
 
       if (mListView != null) {
@@ -676,22 +681,16 @@
 
     boolean searchMode = isSearchMode();
     mAdapter.setSearchMode(searchMode);
-    mAdapter.configureDefaultPartition(false, searchMode);
+    mAdapter.configurePartitionsVisibility(searchMode);
     mAdapter.setPhotoLoader(mPhotoManager);
     mListView.setAdapter(mAdapter);
-
-    if (!isSearchMode()) {
-      mListView.setFocusableInTouchMode(true);
-      mListView.requestFocus();
-    }
-
     return mView;
   }
 
   protected void onCreateView(LayoutInflater inflater, ViewGroup container) {
     mView = inflateView(inflater, container);
 
-    mListView = (ListView) mView.findViewById(android.R.id.list);
+    mListView = mView.findViewById(android.R.id.list);
     if (mListView == null) {
       throw new RuntimeException(
           "Your content must have a ListView whose id attribute is " + "'android.R.id.list'");
@@ -770,6 +769,7 @@
 
   @Override
   public void onScrollStateChanged(AbsListView view, int scrollState) {
+    PerformanceReport.recordScrollStateChange(scrollState);
     if (scrollState == OnScrollListener.SCROLL_STATE_FLING) {
       mPhotoManager.pause();
     } else if (isPhotoLoaderEnabled()) {
diff --git a/java/com/android/contacts/common/list/ContactListItemView.java b/java/com/android/contacts/common/list/ContactListItemView.java
index 7a31947..91abe4c 100644
--- a/java/com/android/contacts/common/list/ContactListItemView.java
+++ b/java/com/android/contacts/common/list/ContactListItemView.java
@@ -30,8 +30,8 @@
 import android.provider.ContactsContract.Contacts;
 import android.provider.ContactsContract.SearchSnippets;
 import android.support.annotation.IntDef;
+import android.support.annotation.NonNull;
 import android.support.v4.content.ContextCompat;
-import android.support.v4.graphics.drawable.DrawableCompat;
 import android.text.Spannable;
 import android.text.SpannableString;
 import android.text.TextUtils;
@@ -55,7 +55,6 @@
 import com.android.contacts.common.list.PhoneNumberListAdapter.Listener;
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.contacts.common.util.SearchUtil;
-import com.android.dialer.compat.CompatUtils;
 import com.android.dialer.util.ViewUtil;
 import java.lang.annotation.Retention;
 import java.lang.annotation.RetentionPolicy;
@@ -81,13 +80,15 @@
 
   /** IntDef for indices of ViewPager tabs. */
   @Retention(RetentionPolicy.SOURCE)
-  @IntDef({NONE, VIDEO, CALL_AND_SHARE})
+  @IntDef({NONE, VIDEO, LIGHTBRINGER, CALL_AND_SHARE})
   public @interface CallToAction {}
 
   public static final int NONE = 0;
   public static final int VIDEO = 1;
-  public static final int CALL_AND_SHARE = 2;
+  public static final int LIGHTBRINGER = 2;
+  public static final int CALL_AND_SHARE = 3;
 
+  private final PhotoPosition mPhotoPosition = getDefaultPhotoPosition();
   private static final Pattern SPLIT_PATTERN =
       Pattern.compile("([\\w-\\.]+)@((?:[\\w]+\\.)+)([a-zA-Z]{2,4})|[\\w]+");
   static final char SNIPPET_START_MATCH = '[';
@@ -106,7 +107,7 @@
   private int mNameTextViewTextSize;
   private int mHeaderWidth;
   private Drawable mActivatedBackgroundDrawable;
-  private int mCallToActionSize = 32;
+  private int mCallToActionSize = 48;
   private int mCallToActionMargin = 16;
   // Set in onLayout. Represent left and right position of the View on the screen.
   private int mLeftOffset;
@@ -122,10 +123,7 @@
   private String mHighlightedPrefix;
   /** Indicates whether the view should leave room for the "video call" icon. */
   private boolean mSupportVideoCall;
-  /** Indicates whether the view should leave room for the "call and share" icon. */
-  private boolean mSupportCallAndShare;
 
-  private PhotoPosition mPhotoPosition = getDefaultPhotoPosition(false /* normal/non opposite */);
   // Header layout data
   private TextView mHeaderTextView;
   private boolean mIsSectionHeaderEnabled;
@@ -139,7 +137,7 @@
   private TextView mSnippetView;
   private TextView mStatusView;
   private ImageView mPresenceIcon;
-  private ImageView mCallToAction;
+  @NonNull private final ImageView mCallToActionView;
   private ImageView mWorkProfileIcon;
   private ColorStateList mSecondaryTextColor;
   private int mDefaultPhotoViewSize = 0;
@@ -181,23 +179,14 @@
   private Rect mBoundsWithoutHeader = new Rect();
   private CharSequence mUnknownNameText;
 
-  public ContactListItemView(Context context) {
-    super(context);
+  private String mPhoneNumber;
+  private int mPosition = -1;
+  private @CallToAction int mCallToAction = NONE;
 
-    mTextHighlighter = new TextHighlighter(Typeface.BOLD);
-    mNameHighlightSequence = new ArrayList<>();
-    mNumberHighlightSequence = new ArrayList<>();
-  }
-
-  public ContactListItemView(
-      Context context,
-      AttributeSet attrs,
-      boolean supportVideoCallIcon,
-      boolean supportCallAndShare) {
+  public ContactListItemView(Context context, AttributeSet attrs, boolean supportVideoCallIcon) {
     this(context, attrs);
 
     mSupportVideoCall = supportVideoCallIcon;
-    mSupportCallAndShare = supportCallAndShare;
   }
 
   public ContactListItemView(Context context, AttributeSet attrs) {
@@ -284,19 +273,20 @@
     mNameHighlightSequence = new ArrayList<>();
     mNumberHighlightSequence = new ArrayList<>();
 
+    mCallToActionView = new ImageView(getContext());
+    mCallToActionView.setId(R.id.call_to_action);
+    mCallToActionView.setLayoutParams(new LayoutParams(mCallToActionSize, mCallToActionSize));
+    mCallToActionView.setScaleType(ScaleType.CENTER);
+    mCallToActionView.setImageTintList(
+        ContextCompat.getColorStateList(getContext(), R.color.search_video_call_icon_tint));
+    addView(mCallToActionView);
+
     setLayoutDirection(View.LAYOUT_DIRECTION_LOCALE);
   }
 
-  public static PhotoPosition getDefaultPhotoPosition(boolean opposite) {
-    final Locale locale = Locale.getDefault();
-    final int layoutDirection = TextUtils.getLayoutDirectionFromLocale(locale);
-    switch (layoutDirection) {
-      case View.LAYOUT_DIRECTION_RTL:
-        return (opposite ? PhotoPosition.LEFT : PhotoPosition.RIGHT);
-      case View.LAYOUT_DIRECTION_LTR:
-      default:
-        return (opposite ? PhotoPosition.RIGHT : PhotoPosition.LEFT);
-    }
+  public static PhotoPosition getDefaultPhotoPosition() {
+    int layoutDirection = TextUtils.getLayoutDirectionFromLocale(Locale.getDefault());
+    return layoutDirection == View.LAYOUT_DIRECTION_RTL ? PhotoPosition.RIGHT : PhotoPosition.LEFT;
   }
 
   /**
@@ -333,35 +323,47 @@
    * @param position The position in the adapter of the call to action.
    */
   public void setCallToAction(@CallToAction int action, Listener listener, int position) {
-    int drawable;
+    mCallToAction = action;
+    mPosition = position;
+
+    Drawable drawable;
     int description;
     OnClickListener onClickListener;
-    if (action == CALL_AND_SHARE && mSupportCallAndShare) {
-      drawable = R.drawable.ic_call_and_share;
-      description = R.string.description_search_video_call;
+    if (action == CALL_AND_SHARE) {
+      drawable = ContextCompat.getDrawable(getContext(), R.drawable.ic_phone_attach);
+      drawable.setAutoMirrored(true);
+      description = R.string.description_search_call_and_share;
       onClickListener = v -> listener.onCallAndShareIconClicked(position);
     } else if (action == VIDEO && mSupportVideoCall) {
-      drawable = R.drawable.ic_search_video_call;
-      description = R.string.description_search_call_and_share;
+      drawable =
+          ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_videocam_vd_theme_24);
+      drawable.setAutoMirrored(true);
+      description = R.string.description_search_video_call;
       onClickListener = v -> listener.onVideoCallIconClicked(position);
+    } else if (action == LIGHTBRINGER) {
+      drawable =
+          ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_videocam_vd_theme_24);
+      drawable.setAutoMirrored(true);
+      description = R.string.description_search_video_call;
+      onClickListener = v -> listener.onLightbringerIconClicked(position);
     } else {
-      if (mCallToAction != null) {
-        mCallToAction.setVisibility(View.GONE);
-        mCallToAction.setOnClickListener(null);
-      }
+      mCallToActionView.setVisibility(View.GONE);
+      mCallToActionView.setOnClickListener(null);
       return;
     }
 
-    if (mCallToAction == null) {
-      mCallToAction = new ImageView(getContext());
-      mCallToAction.setLayoutParams(new LayoutParams(mCallToActionSize, mCallToActionSize));
-      mCallToAction.setScaleType(ScaleType.CENTER);
-      addView(mCallToAction);
-    }
-    mCallToAction.setContentDescription(getContext().getString(description));
-    mCallToAction.setOnClickListener(onClickListener);
-    mCallToAction.setImageResource(drawable);
-    mCallToAction.setVisibility(View.VISIBLE);
+    mCallToActionView.setContentDescription(getContext().getString(description));
+    mCallToActionView.setOnClickListener(onClickListener);
+    mCallToActionView.setImageDrawable(drawable);
+    mCallToActionView.setVisibility(View.VISIBLE);
+  }
+
+  public @CallToAction int getCallToAction() {
+    return mCallToAction;
+  }
+
+  public int getPosition() {
+    return mPosition;
   }
 
   /**
@@ -376,18 +378,6 @@
     mSupportVideoCall = supportVideoCall;
   }
 
-  /**
-   * Sets whether the view supports a call and share icon. This is independent of whether the view
-   * is actually showing an icon. Support for the icon ensures that the layout leaves space for it,
-   * should it be shown.
-   *
-   * @param supportCallAndShare {@code true} if the call and share icon is supported, {@code false}
-   *     otherwise.
-   */
-  public void setSupportCallAndShareIcon(boolean supportCallAndShare) {
-    mSupportCallAndShare = supportCallAndShare;
-  }
-
   @Override
   protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
     // We will match parent's width and wrap content vertically, but make sure
@@ -423,9 +413,7 @@
       effectiveWidth -= mHeaderWidth + mGapBetweenImageAndText;
     }
 
-    if (mSupportVideoCall || mSupportCallAndShare) {
-      effectiveWidth -= (mCallToActionSize + mCallToActionMargin);
-    }
+    effectiveWidth -= (mCallToActionSize + mCallToActionMargin);
 
     // Go over all visible text views and measure actual width of each of them.
     // Also calculate their heights to get the total height for this entire view.
@@ -496,11 +484,9 @@
       mStatusTextViewHeight = mPresenceIcon.getMeasuredHeight();
     }
 
-    if ((mSupportVideoCall || mSupportCallAndShare) && isVisible(mCallToAction)) {
-      mCallToAction.measure(
-          MeasureSpec.makeMeasureSpec(mCallToActionSize, MeasureSpec.EXACTLY),
-          MeasureSpec.makeMeasureSpec(mCallToActionSize, MeasureSpec.EXACTLY));
-    }
+    mCallToActionView.measure(
+        MeasureSpec.makeMeasureSpec(mCallToActionSize, MeasureSpec.EXACTLY),
+        MeasureSpec.makeMeasureSpec(mCallToActionSize, MeasureSpec.EXACTLY));
 
     if (isVisible(mWorkProfileIcon)) {
       mWorkProfileIcon.measure(
@@ -629,34 +615,30 @@
       leftBound += mTextIndent;
     }
 
-    if (mSupportVideoCall || mSupportCallAndShare) {
-      // Place the call to action at the end of the list (e.g. take into account RTL mode).
-      if (isVisible(mCallToAction)) {
-        // Center the icon vertically
-        final int callToActionTop = topBound + (height - topBound - mCallToActionSize) / 2;
+    // Place the call to action at the end of the list (e.g. take into account RTL mode).
+    // Center the icon vertically
+    final int callToActionTop = topBound + (height - topBound - mCallToActionSize) / 2;
 
-        if (!isLayoutRtl) {
-          // When photo is on left, icon is placed on the right edge.
-          mCallToAction.layout(
-              rightBound - mCallToActionSize,
-              callToActionTop,
-              rightBound,
-              callToActionTop + mCallToActionSize);
-        } else {
-          // When photo is on right, icon is placed on the left edge.
-          mCallToAction.layout(
-              leftBound,
-              callToActionTop,
-              leftBound + mCallToActionSize,
-              callToActionTop + mCallToActionSize);
-        }
-      }
+    if (!isLayoutRtl) {
+      // When photo is on left, icon is placed on the right edge.
+      mCallToActionView.layout(
+          rightBound - mCallToActionSize,
+          callToActionTop,
+          rightBound,
+          callToActionTop + mCallToActionSize);
+    } else {
+      // When photo is on right, icon is placed on the left edge.
+      mCallToActionView.layout(
+          leftBound,
+          callToActionTop,
+          leftBound + mCallToActionSize,
+          callToActionTop + mCallToActionSize);
+    }
 
-      if (mPhotoPosition == PhotoPosition.LEFT) {
-        rightBound -= (mCallToActionSize + mCallToActionMargin);
-      } else {
-        leftBound += mCallToActionSize + mCallToActionMargin;
-      }
+    if (mPhotoPosition == PhotoPosition.LEFT) {
+      rightBound -= (mCallToActionSize + mCallToActionMargin);
+    } else {
+      leftBound += mCallToActionSize + mCallToActionMargin;
     }
 
     // Center text vertically, then apply the top offset.
@@ -901,9 +883,7 @@
     }
     if (mQuickContact == null) {
       mQuickContact = new QuickContactBadge(getContext());
-      if (CompatUtils.isLollipopCompatible()) {
-        mQuickContact.setOverlay(null);
-      }
+      mQuickContact.setOverlay(null);
       mQuickContact.setLayoutParams(getDefaultPhotoLayoutParams());
       if (mNameTextView != null) {
         mQuickContact.setContentDescription(
@@ -1008,9 +988,7 @@
       mNameTextView.setGravity(Gravity.CENTER_VERTICAL);
       mNameTextView.setTextAlignment(View.TEXT_ALIGNMENT_VIEW_START);
       mNameTextView.setId(R.id.cliv_name_textview);
-      if (CompatUtils.isLollipopCompatible()) {
-        mNameTextView.setElegantTextHeight(false);
-      }
+      mNameTextView.setElegantTextHeight(false);
       addView(mNameTextView);
     }
     return mNameTextView;
@@ -1056,6 +1034,7 @@
    * exists.
    */
   public void setPhoneNumber(String text) {
+    mPhoneNumber = text;
     if (text == null) {
       if (mDataView != null) {
         mDataView.setVisibility(View.GONE);
@@ -1086,6 +1065,10 @@
     }
   }
 
+  public String getPhoneNumber() {
+    return mPhoneNumber;
+  }
+
   private void setMarqueeText(TextView textView, CharSequence text) {
     if (getTextEllipsis() == TruncateAt.MARQUEE) {
       // To show MARQUEE correctly (with END effect during non-active state), we need
@@ -1109,9 +1092,7 @@
       mDataView.setTextAlignment(View.TEXT_ALIGNMENT_VIEW_START);
       mDataView.setActivated(isActivated());
       mDataView.setId(R.id.cliv_data_view);
-      if (CompatUtils.isLollipopCompatible()) {
-        mDataView.setElegantTextHeight(false);
-      }
+      mDataView.setElegantTextHeight(false);
       addView(mDataView);
     }
     return mDataView;
@@ -1469,28 +1450,17 @@
     forceLayout();
   }
 
-  public void setPhotoPosition(PhotoPosition photoPosition) {
-    mPhotoPosition = photoPosition;
-  }
-
   /**
    * Set drawable resources directly for the drawable resource of the photo view.
    *
-   * @param drawableId Id of drawable resource.
+   * @param drawable A drawable resource.
    */
-  public void setDrawableResource(int drawableId) {
+  public void setDrawable(Drawable drawable) {
     ImageView photo = getPhotoView();
     photo.setScaleType(ImageView.ScaleType.CENTER);
-    final Drawable drawable = ContextCompat.getDrawable(getContext(), drawableId);
-    final int iconColor = ContextCompat.getColor(getContext(), R.color.search_shortcut_icon_color);
-    if (CompatUtils.isLollipopCompatible()) {
-      photo.setImageDrawable(drawable);
-      photo.setImageTintList(ColorStateList.valueOf(iconColor));
-    } else {
-      final Drawable drawableWrapper = DrawableCompat.wrap(drawable).mutate();
-      DrawableCompat.setTint(drawableWrapper, iconColor);
-      photo.setImageDrawable(drawableWrapper);
-    }
+    int iconColor = ContextCompat.getColor(getContext(), R.color.search_shortcut_icon_color);
+    photo.setImageDrawable(drawable);
+    photo.setImageTintList(ColorStateList.valueOf(iconColor));
   }
 
   @Override
diff --git a/java/com/android/contacts/common/list/ContactTileView.java b/java/com/android/contacts/common/list/ContactTileView.java
index 9273b05..15582d6 100644
--- a/java/com/android/contacts/common/list/ContactTileView.java
+++ b/java/com/android/contacts/common/list/ContactTileView.java
@@ -19,7 +19,6 @@
 import android.graphics.Rect;
 import android.net.Uri;
 import android.util.AttributeSet;
-import android.util.Log;
 import android.view.View;
 import android.widget.FrameLayout;
 import android.widget.ImageView;
@@ -28,6 +27,9 @@
 import com.android.contacts.common.ContactPhotoManager.DefaultImageRequest;
 import com.android.contacts.common.MoreContactUtils;
 import com.android.contacts.common.R;
+import com.android.dialer.callintent.CallInitiationType;
+import com.android.dialer.callintent.CallSpecificAppData;
+import com.android.dialer.common.LogUtil;
 
 /** A ContactTile displays a contact's picture and name */
 public abstract class ContactTileView extends FrameLayout {
@@ -60,8 +62,14 @@
         if (mListener == null) {
           return;
         }
+        CallSpecificAppData callSpecificAppData =
+            CallSpecificAppData.newBuilder()
+                .setCallInitiationType(CallInitiationType.Type.SPEED_DIAL)
+                .build();
         mListener.onContactSelected(
-            getLookupUri(), MoreContactUtils.getTargetRectFromView(ContactTileView.this));
+            getLookupUri(),
+            MoreContactUtils.getTargetRectFromView(ContactTileView.this),
+            callSpecificAppData);
       }
     };
   }
@@ -97,7 +105,7 @@
 
         }
       } else {
-        Log.w(TAG, "contactPhotoManager not set");
+        LogUtil.w(TAG, "contactPhotoManager not set");
       }
     } else {
       setVisibility(View.INVISIBLE);
@@ -163,9 +171,10 @@
   public interface Listener {
 
     /** Notification that the contact was selected; no specific action is dictated. */
-    void onContactSelected(Uri contactLookupUri, Rect viewRect);
+    void onContactSelected(
+        Uri contactLookupUri, Rect viewRect, CallSpecificAppData callSpecificAppData);
 
     /** Notification that the specified number is to be called. */
-    void onCallNumberDirectly(String phoneNumber);
+    void onCallNumberDirectly(String phoneNumber, CallSpecificAppData callSpecificAppData);
   }
 }
diff --git a/java/com/android/contacts/common/list/PhoneNumberListAdapter.java b/java/com/android/contacts/common/list/PhoneNumberListAdapter.java
index 9a490d7..d1118c3 100644
--- a/java/com/android/contacts/common/list/PhoneNumberListAdapter.java
+++ b/java/com/android/contacts/common/list/PhoneNumberListAdapter.java
@@ -30,7 +30,6 @@
 import android.text.TextUtils;
 import android.view.View;
 import android.view.ViewGroup;
-import com.android.contacts.common.ContactPhotoManager;
 import com.android.contacts.common.ContactPhotoManager.DefaultImageRequest;
 import com.android.contacts.common.ContactsUtils;
 import com.android.contacts.common.R;
@@ -38,15 +37,17 @@
 import com.android.contacts.common.compat.DirectoryCompat;
 import com.android.contacts.common.compat.PhoneCompat;
 import com.android.contacts.common.extensions.PhoneDirectoryExtenderAccessor;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
 import com.android.contacts.common.list.ContactListItemView.CallToAction;
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contacts.common.util.Constants;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.enrichedcall.EnrichedCallCapabilities;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
+import com.android.dialer.lightbringer.LightbringerComponent;
 import com.android.dialer.location.GeoUtil;
 import com.android.dialer.util.CallUtil;
 import java.util.ArrayList;
@@ -68,16 +69,14 @@
   // A list of extended directories to add to the directories from the database
   private final List<DirectoryPartition> mExtendedDirectories;
   private final CharSequence mUnknownNameText;
-  private final boolean mCallAndShareEnabled;
+  protected final boolean mIsImsVideoEnabled;
+
   // Extended directories will have ID's that are higher than any of the id's from the database,
   // so that we can identify them and set them up properly. If no extended directories
   // exist, this will be Long.MAX_VALUE
   private long mFirstExtendedDirectoryId = Long.MAX_VALUE;
-  private ContactListItemView.PhotoPosition mPhotoPosition;
   private boolean mUseCallableUri;
   private Listener mListener;
-  private boolean mIsVideoEnabled;
-  private boolean mIsPresenceEnabled;
 
   public PhoneNumberListAdapter(Context context) {
     super(context);
@@ -88,11 +87,9 @@
         PhoneDirectoryExtenderAccessor.get(mContext).getExtendedDirectories(mContext);
 
     int videoCapabilities = CallUtil.getVideoCallingAvailability(context);
-    mIsVideoEnabled = (videoCapabilities & CallUtil.VIDEO_CALLING_ENABLED) != 0;
-    mIsPresenceEnabled = (videoCapabilities & CallUtil.VIDEO_CALLING_PRESENCE) != 0;
-
-    // TODO
-    mCallAndShareEnabled = true;
+    mIsImsVideoEnabled =
+        CallUtil.isVideoEnabled(context)
+            && (videoCapabilities & CallUtil.VIDEO_CALLING_PRESENCE) != 0;
   }
 
   @Override
@@ -249,10 +246,10 @@
     return item != null ? item.getString(PhoneQuery.LOOKUP_KEY) : null;
   }
 
-  public CallComposerContact getCallComposerContact(int position) {
+  public DialerContact getDialerContact(int position) {
     Cursor cursor = (Cursor) getItem(position);
     if (cursor == null) {
-      LogUtil.e("PhoneNumberListAdapter.getCallComposerContact", "cursor was null.");
+      LogUtil.e("PhoneNumberListAdapter.getDialerContact", "cursor was null.");
       return null;
     }
 
@@ -263,11 +260,11 @@
         Contacts.getLookupUri(
             cursor.getLong(PhoneQuery.CONTACT_ID), cursor.getString(PhoneQuery.LOOKUP_KEY));
 
-    CallComposerContact.Builder contact = CallComposerContact.newBuilder();
+    DialerContact.Builder contact = DialerContact.newBuilder();
     contact
         .setNumber(number)
         .setPhotoId(cursor.getLong(PhoneQuery.PHOTO_ID))
-        .setContactType(ContactPhotoManager.TYPE_DEFAULT)
+        .setContactType(LetterTileDrawable.TYPE_DEFAULT)
         .setNameOrNumber(displayName)
         .setNumberLabel(
             Phone.getTypeLabel(
@@ -297,7 +294,6 @@
     ContactListItemView view = super.newView(context, partition, cursor, position, parent);
     view.setUnknownNameText(mUnknownNameText);
     view.setQuickContactEnabled(isQuickContactEnabled());
-    view.setPhotoPosition(mPhotoPosition);
     return view;
   }
 
@@ -355,14 +351,8 @@
     }
 
     final DirectoryPartition directory = (DirectoryPartition) getPartition(partition);
-
-    // If the first partition does not have a header, then all subsequent partitions'
-    // getPositionForPartition returns an index off by 1.
-    int partitionOffset = 0;
-    if (partition > 0 && !getPartition(0).getHasHeader()) {
-      partitionOffset = 1;
-    }
-    position += getPositionForPartition(partition) + partitionOffset;
+    // All sections have headers, so scroll position is off by 1.
+    position += getPositionForPartition(partition) + 1;
 
     bindPhoneNumber(view, cursor, directory.isDisplayNumber(), position);
   }
@@ -401,13 +391,17 @@
       int carrierPresence = cursor.getInt(PhoneQuery.CARRIER_PRESENCE);
       boolean isPresent = (carrierPresence & Phone.CARRIER_PRESENCE_VT_CAPABLE) != 0;
 
-      boolean isVideoIconShown = mIsVideoEnabled && (!mIsPresenceEnabled || isPresent);
-      if (isVideoIconShown) {
+      boolean showViewIcon = mIsImsVideoEnabled && isPresent;
+      if (showViewIcon) {
         action = ContactListItemView.VIDEO;
       }
     }
 
-    if (isCallAndShareEnabled() && action == ContactListItemView.NONE && number != null) {
+    if (LightbringerComponent.get(mContext).getLightbringer().isReachable(mContext, number)) {
+      action = ContactListItemView.LIGHTBRINGER;
+    }
+
+    if (action == ContactListItemView.NONE) {
       EnrichedCallManager manager = EnrichedCallComponent.get(mContext).getEnrichedCallManager();
       EnrichedCallCapabilities capabilities = manager.getCapabilities(number);
       if (capabilities != null && capabilities.supportsCallComposer()) {
@@ -481,14 +475,6 @@
     }
   }
 
-  public ContactListItemView.PhotoPosition getPhotoPosition() {
-    return mPhotoPosition;
-  }
-
-  public void setPhotoPosition(ContactListItemView.PhotoPosition photoPosition) {
-    mPhotoPosition = photoPosition;
-  }
-
   public void setUseCallableUri(boolean useCallableUri) {
     mUseCallableUri = useCallableUri;
   }
@@ -570,14 +556,12 @@
     mListener = listener;
   }
 
-  public boolean isCallAndShareEnabled() {
-    return mCallAndShareEnabled;
-  }
-
   public interface Listener {
 
     void onVideoCallIconClicked(int position);
 
+    void onLightbringerIconClicked(int position);
+
     void onCallAndShareIconClicked(int position);
   }
 
@@ -642,18 +626,14 @@
     static {
       final List<String> projectionList =
           new ArrayList<>(Arrays.asList(PROJECTION_PRIMARY_INTERNAL));
-      if (CompatUtils.isMarshmallowCompatible()) {
-        projectionList.add(Phone.CARRIER_PRESENCE); // 9
-      }
+      projectionList.add(Phone.CARRIER_PRESENCE); // 9
       PROJECTION_PRIMARY = projectionList.toArray(new String[projectionList.size()]);
     }
 
     static {
       final List<String> projectionList =
           new ArrayList<>(Arrays.asList(PROJECTION_ALTERNATIVE_INTERNAL));
-      if (CompatUtils.isMarshmallowCompatible()) {
-        projectionList.add(Phone.CARRIER_PRESENCE); // 9
-      }
+      projectionList.add(Phone.CARRIER_PRESENCE); // 9
       PROJECTION_ALTERNATIVE = projectionList.toArray(new String[projectionList.size()]);
     }
   }
diff --git a/java/com/android/contacts/common/list/PhoneNumberPickerFragment.java b/java/com/android/contacts/common/list/PhoneNumberPickerFragment.java
index 8f25f82..de7903e 100644
--- a/java/com/android/contacts/common/list/PhoneNumberPickerFragment.java
+++ b/java/com/android/contacts/common/list/PhoneNumberPickerFragment.java
@@ -29,16 +29,20 @@
 import android.view.View;
 import android.view.ViewGroup;
 import com.android.contacts.common.R;
+import com.android.contacts.common.list.PhoneNumberListAdapter.Listener;
 import com.android.contacts.common.util.AccountFilterUtil;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallInitiationType.Type;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
+import com.android.dialer.lightbringer.LightbringerComponent;
+import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.protos.ProtoParsers;
 import java.util.Set;
 import org.json.JSONException;
@@ -61,9 +65,6 @@
 
   private boolean mUseCallableUri;
 
-  private ContactListItemView.PhotoPosition mPhotoPosition =
-      ContactListItemView.getDefaultPhotoPosition(false /* normal/non opposite */);
-
   private final Set<OnLoadFinishedListener> mLoadFinishedListeners = new ArraySet<>();
 
   private CursorReranker mCursorReranker;
@@ -71,7 +72,7 @@
   public PhoneNumberPickerFragment() {
     setQuickContactEnabled(false);
     setPhotoLoaderEnabled(true);
-    setSectionHeaderDisplayEnabled(true);
+    setSectionHeaderDisplayEnabled(false);
     setDirectorySearchMode(DirectoryListLoader.SEARCH_MODE_NONE);
 
     // Show nothing instead of letting caller Activity show something.
@@ -85,17 +86,33 @@
    */
   @Override
   public void onVideoCallIconClicked(int position) {
+    Logger.get(getContext()).logImpression(DialerImpression.Type.IMS_VIDEO_REQUESTED_FROM_SEARCH);
     callNumber(position, true /* isVideoCall */);
   }
 
   @Override
+  public void onLightbringerIconClicked(int position) {
+    PerformanceReport.stopRecording();
+    String phoneNumber = getPhoneNumber(position);
+    Intent intent =
+        LightbringerComponent.get(getContext())
+            .getLightbringer()
+            .getIntent(getContext(), phoneNumber);
+    // DialtactsActivity.ACTIVITY_REQUEST_CODE_LIGHTBRINGER
+    // Cannot reference because of cyclic dependencies
+    Logger.get(getContext())
+        .logImpression(DialerImpression.Type.LIGHTBRINGER_VIDEO_REQUESTED_FROM_SEARCH);
+    int dialactsActivityRequestCode = 3;
+    getActivity().startActivityForResult(intent, dialactsActivityRequestCode);
+  }
+
+  @Override
   public void onCallAndShareIconClicked(int position) {
     // Required because of cyclic dependencies of everything depending on contacts/common.
     String componentName = "com.android.dialer.callcomposer.CallComposerActivity";
     Intent intent = new Intent();
     intent.setComponent(new ComponentName(getContext(), componentName));
-    CallComposerContact contact =
-        ((PhoneNumberListAdapter) getAdapter()).getCallComposerContact(position);
+    DialerContact contact = ((PhoneNumberListAdapter) getAdapter()).getDialerContact(position);
     ProtoParsers.put(intent, "CALL_COMPOSER_CONTACT", contact);
     startActivity(intent);
   }
@@ -267,7 +284,7 @@
         && data != null
         && !data.isClosed()
         && data.getCount() > 0
-        && loader.getId() != -1) { // skip invalid directory ID of -1
+        && loader.getId() == 0) { // only re-rank if a suggestions loader with id of 0.
       data = mCursorReranker.rerankCursor(data);
     }
     super.onLoadFinished(loader, data);
@@ -320,7 +337,27 @@
   @Override
   public void onCapabilitiesUpdated() {
     if (getAdapter() != null) {
-      getAdapter().notifyDataSetChanged();
+      EnrichedCallManager manager =
+          EnrichedCallComponent.get(getContext()).getEnrichedCallManager();
+      Listener listener = ((PhoneNumberListAdapter) getAdapter()).getListener();
+
+      for (int i = 0; i < getListView().getChildCount(); i++) {
+        if (!(getListView().getChildAt(i) instanceof ContactListItemView)) {
+          continue;
+        }
+
+        // Since call and share is the lowest priority call to action, if any others are set,
+        // do not reset the call to action. Also do not set the call and share call to action if
+        // the number doesn't support call composer.
+        ContactListItemView view = (ContactListItemView) getListView().getChildAt(i);
+        if (view.getCallToAction() != ContactListItemView.NONE
+            || view.getPhoneNumber() == null
+            || manager.getCapabilities(view.getPhoneNumber()) == null
+            || !manager.getCapabilities(view.getPhoneNumber()).supportsCallComposer()) {
+          continue;
+        }
+        view.setCallToAction(ContactListItemView.CALL_AND_SHARE, listener, view.getPosition());
+      }
     }
   }
 
@@ -360,12 +397,6 @@
     if (!isSearchMode() && mFilter != null) {
       adapter.setFilter(mFilter);
     }
-
-    setPhotoPosition(adapter);
-  }
-
-  protected void setPhotoPosition(ContactEntryListAdapter adapter) {
-    ((PhoneNumberListAdapter) adapter).setPhotoPosition(mPhotoPosition);
   }
 
   @Override
@@ -389,15 +420,6 @@
     updateFilterHeaderView();
   }
 
-  public void setPhotoPosition(ContactListItemView.PhotoPosition photoPosition) {
-    mPhotoPosition = photoPosition;
-
-    final PhoneNumberListAdapter adapter = (PhoneNumberListAdapter) getAdapter();
-    if (adapter != null) {
-      adapter.setPhotoPosition(photoPosition);
-    }
-  }
-
   /**
    * @param isRemoteDirectory {@code true} if the call was initiated using a contact/phone number
    *     not in the local contacts database
diff --git a/java/com/android/contacts/common/list/ViewPagerTabs.java b/java/com/android/contacts/common/list/ViewPagerTabs.java
index 34f623e..1e6cf13 100644
--- a/java/com/android/contacts/common/list/ViewPagerTabs.java
+++ b/java/com/android/contacts/common/list/ViewPagerTabs.java
@@ -33,7 +33,6 @@
 import android.widget.TextView;
 import android.widget.Toast;
 import com.android.contacts.common.R;
-import com.android.dialer.compat.CompatUtils;
 
 /**
  * Lightweight implementation of ViewPager tabs. This looks similar to traditional actionBar tabs,
@@ -43,7 +42,13 @@
  */
 public class ViewPagerTabs extends HorizontalScrollView implements ViewPager.OnPageChangeListener {
 
-  private static final ViewOutlineProvider VIEW_BOUNDS_OUTLINE_PROVIDER;
+  private static final ViewOutlineProvider VIEW_BOUNDS_OUTLINE_PROVIDER =
+      new ViewOutlineProvider() {
+        @Override
+        public void getOutline(View view, Outline outline) {
+          outline.setRect(0, 0, view.getWidth(), view.getHeight());
+        }
+      };
   private static final int TAB_SIDE_PADDING_IN_DPS = 10;
   // TODO: This should use <declare-styleable> in the future
   private static final int[] ATTRS =
@@ -54,20 +59,6 @@
         android.R.attr.textAllCaps
       };
 
-  static {
-    if (CompatUtils.isLollipopCompatible()) {
-      VIEW_BOUNDS_OUTLINE_PROVIDER =
-          new ViewOutlineProvider() {
-            @Override
-            public void getOutline(View view, Outline outline) {
-              outline.setRect(0, 0, view.getWidth(), view.getHeight());
-            }
-          };
-    } else {
-      VIEW_BOUNDS_OUTLINE_PROVIDER = null;
-    }
-  }
-
   /**
    * Linearlayout that will contain the TextViews serving as tabs. This is the only child of the
    * parent HorizontalScrollView.
@@ -111,10 +102,8 @@
         new FrameLayout.LayoutParams(LayoutParams.WRAP_CONTENT, LayoutParams.MATCH_PARENT));
     a.recycle();
 
-    if (CompatUtils.isLollipopCompatible()) {
-      // enable shadow casting from view bounds
-      setOutlineProvider(VIEW_BOUNDS_OUTLINE_PROVIDER);
-    }
+    // enable shadow casting from view bounds
+    setOutlineProvider(VIEW_BOUNDS_OUTLINE_PROVIDER);
   }
 
   public void setViewPager(ViewPager viewPager) {
diff --git a/java/com/android/contacts/common/location/CountryDetector.java b/java/com/android/contacts/common/location/CountryDetector.java
deleted file mode 100644
index 7d9e42b..0000000
--- a/java/com/android/contacts/common/location/CountryDetector.java
+++ /dev/null
@@ -1,221 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.contacts.common.location;
-
-import android.app.PendingIntent;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.content.SharedPreferences;
-import android.location.Geocoder;
-import android.location.Location;
-import android.location.LocationManager;
-import android.preference.PreferenceManager;
-import android.telephony.TelephonyManager;
-import android.text.TextUtils;
-import android.util.Log;
-import com.android.dialer.util.PermissionsUtil;
-import java.util.Locale;
-
-/**
- * This class is used to detect the country where the user is. It is a simplified version of the
- * country detector service in the framework. The sources of country location are queried in the
- * following order of reliability:
- *
- * <ul>
- * <li>Mobile network
- * <li>Location manager
- * <li>SIM's country
- * <li>User's default locale
- * </ul>
- *
- * As far as possible this class tries to replicate the behavior of the system's country detector
- * service: 1) Order in priority of sources of country location 2) Mobile network information
- * provided by CDMA phones is ignored 3) Location information is updated every 12 hours (instead of
- * 24 hours in the system) 4) Location updates only uses the {@link
- * LocationManager#PASSIVE_PROVIDER} to avoid active use of the GPS 5) If a location is successfully
- * obtained and geocoded, we never fall back to use of the SIM's country (for the system, the
- * fallback never happens without a reboot) 6) Location is not used if the device does not implement
- * a {@link android.location.Geocoder}
- */
-public class CountryDetector {
-
-  public static final String KEY_PREFERENCE_TIME_UPDATED = "preference_time_updated";
-  public static final String KEY_PREFERENCE_CURRENT_COUNTRY = "preference_current_country";
-  private static final String TAG = "CountryDetector";
-  // Wait 12 hours between updates
-  private static final long TIME_BETWEEN_UPDATES_MS = 1000L * 60 * 60 * 12;
-  // Minimum distance before an update is triggered, in meters. We don't need this to be too
-  // exact because all we care about is what country the user is in.
-  private static final long DISTANCE_BETWEEN_UPDATES_METERS = 5000;
-  private static CountryDetector sInstance;
-  private final TelephonyManager mTelephonyManager;
-  private final LocationManager mLocationManager;
-  private final LocaleProvider mLocaleProvider;
-  // Used as a default country code when all the sources of country data have failed in the
-  // exceedingly rare event that the device does not have a default locale set for some reason.
-  private static final String DEFAULT_COUNTRY_ISO = "US";
-  private final Context mContext;
-
-  private CountryDetector(Context context) {
-    this(
-        context,
-        (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE),
-        (LocationManager) context.getSystemService(Context.LOCATION_SERVICE),
-        new LocaleProvider());
-  }
-
-  private CountryDetector(
-      Context context,
-      TelephonyManager telephonyManager,
-      LocationManager locationManager,
-      LocaleProvider localeProvider) {
-    mTelephonyManager = telephonyManager;
-    mLocationManager = locationManager;
-    mLocaleProvider = localeProvider;
-    mContext = context;
-
-    registerForLocationUpdates(context, mLocationManager);
-  }
-
-  public static void registerForLocationUpdates(Context context, LocationManager locationManager) {
-    if (!PermissionsUtil.hasLocationPermissions(context)) {
-      Log.w(TAG, "No location permissions, not registering for location updates.");
-      return;
-    }
-
-    if (!Geocoder.isPresent()) {
-      // Certain devices do not have an implementation of a geocoder - in that case there is
-      // no point trying to get location updates because we cannot retrieve the country based
-      // on the location anyway.
-      return;
-    }
-    final Intent activeIntent = new Intent(context, LocationChangedReceiver.class);
-    final PendingIntent pendingIntent =
-        PendingIntent.getBroadcast(context, 0, activeIntent, PendingIntent.FLAG_UPDATE_CURRENT);
-
-    locationManager.requestLocationUpdates(
-        LocationManager.PASSIVE_PROVIDER,
-        TIME_BETWEEN_UPDATES_MS,
-        DISTANCE_BETWEEN_UPDATES_METERS,
-        pendingIntent);
-  }
-
-  /**
-   * Returns the instance of the country detector. {@link #initialize(Context)} must have been
-   * called previously.
-   *
-   * @return the initialized country detector.
-   */
-  public static synchronized CountryDetector getInstance(Context context) {
-    if (sInstance == null) {
-      sInstance = new CountryDetector(context.getApplicationContext());
-    }
-    return sInstance;
-  }
-
-  /** Factory method for {@link CountryDetector} that allows the caller to provide mock objects. */
-  public CountryDetector getInstanceForTest(
-      Context context,
-      TelephonyManager telephonyManager,
-      LocationManager locationManager,
-      LocaleProvider localeProvider,
-      Geocoder geocoder) {
-    return new CountryDetector(context, telephonyManager, locationManager, localeProvider);
-  }
-
-  public String getCurrentCountryIso() {
-    String result = null;
-    if (isNetworkCountryCodeAvailable()) {
-      result = getNetworkBasedCountryIso();
-    }
-    if (TextUtils.isEmpty(result)) {
-      result = getLocationBasedCountryIso();
-    }
-    if (TextUtils.isEmpty(result)) {
-      result = getSimBasedCountryIso();
-    }
-    if (TextUtils.isEmpty(result)) {
-      result = getLocaleBasedCountryIso();
-    }
-    if (TextUtils.isEmpty(result)) {
-      result = DEFAULT_COUNTRY_ISO;
-    }
-    return result.toUpperCase(Locale.US);
-  }
-
-  /** @return the country code of the current telephony network the user is connected to. */
-  private String getNetworkBasedCountryIso() {
-    return mTelephonyManager.getNetworkCountryIso();
-  }
-
-  /** @return the geocoded country code detected by the {@link LocationManager}. */
-  private String getLocationBasedCountryIso() {
-    if (!Geocoder.isPresent() || !PermissionsUtil.hasLocationPermissions(mContext)) {
-      return null;
-    }
-    final SharedPreferences sharedPreferences =
-        PreferenceManager.getDefaultSharedPreferences(mContext);
-    return sharedPreferences.getString(KEY_PREFERENCE_CURRENT_COUNTRY, null);
-  }
-
-  /** @return the country code of the SIM card currently inserted in the device. */
-  private String getSimBasedCountryIso() {
-    return mTelephonyManager.getSimCountryIso();
-  }
-
-  /** @return the country code of the user's currently selected locale. */
-  private String getLocaleBasedCountryIso() {
-    Locale defaultLocale = mLocaleProvider.getDefaultLocale();
-    if (defaultLocale != null) {
-      return defaultLocale.getCountry();
-    }
-    return null;
-  }
-
-  private boolean isNetworkCountryCodeAvailable() {
-    // On CDMA TelephonyManager.getNetworkCountryIso() just returns the SIM's country code.
-    // In this case, we want to ignore the value returned and fallback to location instead.
-    return mTelephonyManager.getPhoneType() == TelephonyManager.PHONE_TYPE_GSM;
-  }
-
-  /**
-   * Class that can be used to return the user's default locale. This is in its own class so that it
-   * can be mocked out.
-   */
-  public static class LocaleProvider {
-
-    public Locale getDefaultLocale() {
-      return Locale.getDefault();
-    }
-  }
-
-  public static class LocationChangedReceiver extends BroadcastReceiver {
-
-    @Override
-    public void onReceive(final Context context, Intent intent) {
-      if (!intent.hasExtra(LocationManager.KEY_LOCATION_CHANGED)) {
-        return;
-      }
-
-      final Location location =
-          (Location) intent.getExtras().get(LocationManager.KEY_LOCATION_CHANGED);
-
-      UpdateCountryService.updateCountry(context, location);
-    }
-  }
-}
diff --git a/java/com/android/contacts/common/location/UpdateCountryService.java b/java/com/android/contacts/common/location/UpdateCountryService.java
deleted file mode 100644
index f23e09e..0000000
--- a/java/com/android/contacts/common/location/UpdateCountryService.java
+++ /dev/null
@@ -1,104 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.contacts.common.location;
-
-import android.app.IntentService;
-import android.content.Context;
-import android.content.Intent;
-import android.content.SharedPreferences;
-import android.content.SharedPreferences.Editor;
-import android.location.Address;
-import android.location.Geocoder;
-import android.location.Location;
-import android.preference.PreferenceManager;
-import android.util.Log;
-import java.io.IOException;
-import java.util.List;
-
-/**
- * Service used to perform asynchronous geocoding from within a broadcast receiver. Given a {@link
- * Location}, convert it into a country code, and save it in shared preferences.
- */
-public class UpdateCountryService extends IntentService {
-
-  private static final String TAG = UpdateCountryService.class.getSimpleName();
-
-  private static final String ACTION_UPDATE_COUNTRY = "saveCountry";
-
-  private static final String KEY_INTENT_LOCATION = "location";
-
-  public UpdateCountryService() {
-    super(TAG);
-  }
-
-  public static void updateCountry(Context context, Location location) {
-    final Intent serviceIntent = new Intent(context, UpdateCountryService.class);
-    serviceIntent.setAction(ACTION_UPDATE_COUNTRY);
-    serviceIntent.putExtra(UpdateCountryService.KEY_INTENT_LOCATION, location);
-    context.startService(serviceIntent);
-  }
-
-  @Override
-  protected void onHandleIntent(Intent intent) {
-    if (intent == null) {
-      Log.d(TAG, "onHandleIntent: could not handle null intent");
-      return;
-    }
-    if (ACTION_UPDATE_COUNTRY.equals(intent.getAction())) {
-      final Location location = intent.getParcelableExtra(KEY_INTENT_LOCATION);
-      final String country = getCountryFromLocation(getApplicationContext(), location);
-
-      if (country == null) {
-        return;
-      }
-
-      final SharedPreferences prefs =
-          PreferenceManager.getDefaultSharedPreferences(getApplicationContext());
-
-      final Editor editor = prefs.edit();
-      editor.putLong(CountryDetector.KEY_PREFERENCE_TIME_UPDATED, System.currentTimeMillis());
-      editor.putString(CountryDetector.KEY_PREFERENCE_CURRENT_COUNTRY, country);
-      editor.commit();
-    }
-  }
-
-  /**
-   * Given a {@link Location}, return a country code.
-   *
-   * @return the ISO 3166-1 two letter country code
-   */
-  private String getCountryFromLocation(Context context, Location location) {
-    final Geocoder geocoder = new Geocoder(context);
-    String country = null;
-    try {
-      double latitude = location.getLatitude();
-      // Latitude has to be between 90 and -90 (latitude of north and south poles wrt equator)
-      if (latitude <= 90 && latitude >= -90) {
-        final List<Address> addresses =
-            geocoder.getFromLocation(location.getLatitude(), location.getLongitude(), 1);
-        if (addresses != null && addresses.size() > 0) {
-          country = addresses.get(0).getCountryCode();
-        }
-      } else {
-        Log.w(TAG, "Invalid latitude");
-      }
-    } catch (IOException e) {
-      Log.w(TAG, "Exception occurred when getting geocoded country from location");
-    }
-    return country;
-  }
-}
diff --git a/java/com/android/contacts/common/model/ContactLoader.java b/java/com/android/contacts/common/model/ContactLoader.java
index 55464b1..7ef3b73 100644
--- a/java/com/android/contacts/common/model/ContactLoader.java
+++ b/java/com/android/contacts/common/model/ContactLoader.java
@@ -522,6 +522,7 @@
     cursorColumnToContentValues(cursor, cv, ContactQuery.TIMES_USED);
     cursorColumnToContentValues(cursor, cv, ContactQuery.LAST_TIME_USED);
     cursorColumnToContentValues(cursor, cv, ContactQuery.CARRIER_PRESENCE);
+
     return cv;
   }
 
diff --git a/java/com/android/contacts/common/model/account/AccountType.java b/java/com/android/contacts/common/model/account/AccountType.java
index 1ae485a..ed0d421 100644
--- a/java/com/android/contacts/common/model/account/AccountType.java
+++ b/java/com/android/contacts/common/model/account/AccountType.java
@@ -25,6 +25,7 @@
 import android.provider.ContactsContract.Contacts;
 import android.provider.ContactsContract.RawContacts;
 import android.support.annotation.VisibleForTesting;
+import android.support.v4.content.ContextCompat;
 import android.util.ArrayMap;
 import android.view.inputmethod.EditorInfo;
 import android.widget.EditText;
@@ -113,7 +114,7 @@
       final PackageManager pm = context.getPackageManager();
       return pm.getDrawable(syncAdapterPackageName, iconRes, null);
     } else if (titleRes != -1) {
-      return context.getResources().getDrawable(iconRes);
+      return ContextCompat.getDrawable(context, iconRes);
     } else {
       return null;
     }
diff --git a/java/com/android/contacts/common/model/account/BaseAccountType.java b/java/com/android/contacts/common/model/account/BaseAccountType.java
index 8e9ba73..ccdad36 100644
--- a/java/com/android/contacts/common/model/account/BaseAccountType.java
+++ b/java/com/android/contacts/common/model/account/BaseAccountType.java
@@ -307,7 +307,7 @@
     DataKind kind =
         addKind(
             new DataKind(Phone.CONTENT_ITEM_TYPE, R.string.phoneLabelsGroup, Weight.PHONE, true));
-    kind.iconAltRes = R.drawable.quantum_ic_message_white_24;
+    kind.iconAltRes = R.drawable.quantum_ic_message_vd_theme_24;
     kind.iconAltDescriptionRes = R.string.sms;
     kind.actionHeader = new PhoneActionInflater();
     kind.actionAltHeader = new PhoneActionAltInflater();
@@ -1228,7 +1228,7 @@
               new PhoneActionInflater(),
               new SimpleInflater(Phone.NUMBER));
 
-      kind.iconAltRes = R.drawable.quantum_ic_message_white_24;
+      kind.iconAltRes = R.drawable.quantum_ic_message_vd_theme_24;
       kind.iconAltDescriptionRes = R.string.sms;
       kind.actionAltHeader = new PhoneActionAltInflater();
 
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_ab_search.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_ab_search.png
deleted file mode 100644
index d86b219..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_ab_search.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_arrow_back_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_arrow_back_24dp.png
deleted file mode 100644
index ddbb2c4..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_arrow_back_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_business_white_120dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_business_white_120dp.png
deleted file mode 100644
index d5942dc..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_business_white_120dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_call_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_call_24dp.png
deleted file mode 100644
index 4dc5065..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_call_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_close_dk.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_close_dk.png
deleted file mode 100644
index 9695529..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_close_dk.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_create_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_create_24dp.png
deleted file mode 100644
index 540ab4d..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_create_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_group_white_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_group_white_24dp.png
deleted file mode 100644
index 017e4bb..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_group_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_history_white_drawable_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_history_white_drawable_24dp.png
deleted file mode 100644
index 703d30b..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_history_white_drawable_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_info_outline_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_info_outline_24dp.png
deleted file mode 100644
index c7b1113..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_info_outline_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_back.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_back.png
deleted file mode 100644
index deb3a6d..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_back.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_dk.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_dk.png
deleted file mode 100644
index 06bd18f..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_dk.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_lt.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_lt.png
deleted file mode 100644
index d829d11..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_group_lt.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_overflow_lt.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_overflow_lt.png
deleted file mode 100644
index 1ba1295..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_overflow_lt.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_dk.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_dk.png
deleted file mode 100644
index 5ff3ac5..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_dk.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_lt.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_lt.png
deleted file mode 100644
index b4ebfc7..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_person_lt.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_remove_field_holo_light.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_remove_field_holo_light.png
deleted file mode 100644
index 03fd2fb..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_remove_field_holo_light.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_dk.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_dk.png
deleted file mode 100644
index e8cb0f5..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_dk.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_holo_light.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_holo_light.png
deleted file mode 100644
index 4513796..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_holo_light.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_lt.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_lt.png
deleted file mode 100644
index 1c9bb81..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_menu_star_lt.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_person_24dp.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_person_24dp.png
deleted file mode 100644
index 56708b0..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_person_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_rx_videocam.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_rx_videocam.png
deleted file mode 100644
index ccdda67..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_rx_videocam.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_tx_videocam.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_tx_videocam.png
deleted file mode 100644
index 603ddc8..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_tx_videocam.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_videocam.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_videocam.png
deleted file mode 100644
index 97905c9..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_videocam.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/ic_voicemail_avatar.png b/java/com/android/contacts/common/res/drawable-hdpi/ic_voicemail_avatar.png
deleted file mode 100644
index 2121878..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/ic_voicemail_avatar.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_activated_holo.9.png
deleted file mode 100644
index 4ea7afa..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_background_holo.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_background_holo.9.png
deleted file mode 100644
index cddf9be..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_background_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_focused_holo.9.png
deleted file mode 100644
index 86578be..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_longpressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_longpressed_holo_light.9.png
deleted file mode 100644
index e9afcc9..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_longpressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_pressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_pressed_holo_light.9.png
deleted file mode 100644
index 2054530..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_pressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index a0f1756..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-hdpi/list_title_holo.9.png b/java/com/android/contacts/common/res/drawable-hdpi/list_title_holo.9.png
deleted file mode 100644
index ae93717..0000000
--- a/java/com/android/contacts/common/res/drawable-hdpi/list_title_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_focused_holo.9.png
deleted file mode 100644
index 4139942..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index 569d28f..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_title_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_title_holo.9.png
deleted file mode 100644
index 5ec4c96..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-hdpi/list_title_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_focused_holo.9.png
deleted file mode 100644
index 4139942..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index 065ff62..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_title_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_title_holo.9.png
deleted file mode 100644
index 013d5e7..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-mdpi/list_title_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-hdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-hdpi/list_activated_holo.9.png
deleted file mode 100644
index 947f03c..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-hdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-mdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-mdpi/list_activated_holo.9.png
deleted file mode 100644
index 6d09d72..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-mdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-xhdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-xhdpi/list_activated_holo.9.png
deleted file mode 100644
index 63c7456..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-sw600dp-xhdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_focused_holo.9.png
deleted file mode 100644
index 4139942..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index af58554..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_title_holo.9.png b/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_title_holo.9.png
deleted file mode 100644
index cb801ac..0000000
--- a/java/com/android/contacts/common/res/drawable-ldrtl-xhdpi/list_title_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-mdpi/list_activated_holo.9.png
deleted file mode 100644
index 3bf8e03..0000000
--- a/java/com/android/contacts/common/res/drawable-mdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-mdpi/list_focused_holo.9.png
deleted file mode 100644
index 86578be..0000000
--- a/java/com/android/contacts/common/res/drawable-mdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/list_longpressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-mdpi/list_longpressed_holo_light.9.png
deleted file mode 100644
index 3226ab7..0000000
--- a/java/com/android/contacts/common/res/drawable-mdpi/list_longpressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/list_pressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-mdpi/list_pressed_holo_light.9.png
deleted file mode 100644
index 061904c..0000000
--- a/java/com/android/contacts/common/res/drawable-mdpi/list_pressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-mdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-mdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index 1d9371d..0000000
--- a/java/com/android/contacts/common/res/drawable-mdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-sw600dp-hdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-sw600dp-hdpi/list_activated_holo.9.png
deleted file mode 100644
index 046b24a..0000000
--- a/java/com/android/contacts/common/res/drawable-sw600dp-hdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-sw600dp-mdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-sw600dp-mdpi/list_activated_holo.9.png
deleted file mode 100644
index 1ff3373..0000000
--- a/java/com/android/contacts/common/res/drawable-sw600dp-mdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-sw600dp-xhdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-sw600dp-xhdpi/list_activated_holo.9.png
deleted file mode 100644
index 2eb7c7e..0000000
--- a/java/com/android/contacts/common/res/drawable-sw600dp-xhdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-xhdpi/list_activated_holo.9.png
deleted file mode 100644
index eda10e6..0000000
--- a/java/com/android/contacts/common/res/drawable-xhdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-xhdpi/list_focused_holo.9.png
deleted file mode 100644
index 86578be..0000000
--- a/java/com/android/contacts/common/res/drawable-xhdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/list_longpressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-xhdpi/list_longpressed_holo_light.9.png
deleted file mode 100644
index 5532e88..0000000
--- a/java/com/android/contacts/common/res/drawable-xhdpi/list_longpressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/list_pressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-xhdpi/list_pressed_holo_light.9.png
deleted file mode 100644
index f4af926..0000000
--- a/java/com/android/contacts/common/res/drawable-xhdpi/list_pressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xhdpi/list_section_divider_holo_custom.9.png b/java/com/android/contacts/common/res/drawable-xhdpi/list_section_divider_holo_custom.9.png
deleted file mode 100644
index 8fb0636..0000000
--- a/java/com/android/contacts/common/res/drawable-xhdpi/list_section_divider_holo_custom.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxhdpi/list_activated_holo.9.png b/java/com/android/contacts/common/res/drawable-xxhdpi/list_activated_holo.9.png
deleted file mode 100644
index 52c00dd..0000000
--- a/java/com/android/contacts/common/res/drawable-xxhdpi/list_activated_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxhdpi/list_focused_holo.9.png b/java/com/android/contacts/common/res/drawable-xxhdpi/list_focused_holo.9.png
deleted file mode 100644
index 3e4ca68..0000000
--- a/java/com/android/contacts/common/res/drawable-xxhdpi/list_focused_holo.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxhdpi/list_longpressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-xxhdpi/list_longpressed_holo_light.9.png
deleted file mode 100644
index 230d649..0000000
--- a/java/com/android/contacts/common/res/drawable-xxhdpi/list_longpressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable-xxhdpi/list_pressed_holo_light.9.png b/java/com/android/contacts/common/res/drawable-xxhdpi/list_pressed_holo_light.9.png
deleted file mode 100644
index 1352a17..0000000
--- a/java/com/android/contacts/common/res/drawable-xxhdpi/list_pressed_holo_light.9.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable/ic_call_and_share.xml b/java/com/android/contacts/common/res/drawable/ic_call_and_share.xml
deleted file mode 100644
index be0cdd3..0000000
--- a/java/com/android/contacts/common/res/drawable/ic_call_and_share.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2015 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License
-  -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/ic_phone_attach"
-    android:tint="@color/search_video_call_icon_tint"
-    android:background="?attr/selectableItemBackgroundBorderless"/>
\ No newline at end of file
diff --git a/java/com/android/contacts/common/res/drawable/ic_search_add_contact.xml b/java/com/android/contacts/common/res/drawable/ic_search_add_contact.xml
deleted file mode 100644
index 476212d..0000000
--- a/java/com/android/contacts/common/res/drawable/ic_search_add_contact.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-     Copyright (C) 2014 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/quantum_ic_person_add_white_24"/>
diff --git a/java/com/android/contacts/common/res/drawable/ic_search_video_call.xml b/java/com/android/contacts/common/res/drawable/ic_search_video_call.xml
deleted file mode 100644
index 0fe0367..0000000
--- a/java/com/android/contacts/common/res/drawable/ic_search_video_call.xml
+++ /dev/null
@@ -1,22 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2015 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License
-  -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/quantum_ic_videocam_white_24"
-  android:tint="@color/search_video_call_icon_tint"
-  android:background="?attr/selectableItemBackgroundBorderless"/>
diff --git a/java/com/android/contacts/common/res/drawable/list_selector_background_transition_holo_light.xml b/java/com/android/contacts/common/res/drawable/list_selector_background_transition_holo_light.xml
deleted file mode 100644
index 35fff99..0000000
--- a/java/com/android/contacts/common/res/drawable/list_selector_background_transition_holo_light.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2010 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<transition xmlns:android="http://schemas.android.com/apk/res/android">
-  <item android:drawable="@drawable/list_pressed_holo_light"/>
-  <item android:drawable="@drawable/list_longpressed_holo_light"/>
-</transition>
diff --git a/java/com/android/contacts/common/res/layout/dialog_call_subject.xml b/java/com/android/contacts/common/res/layout/dialog_call_subject.xml
index a33b2ac..df8e8d2 100644
--- a/java/com/android/contacts/common/res/layout/dialog_call_subject.xml
+++ b/java/com/android/contacts/common/res/layout/dialog_call_subject.xml
@@ -129,7 +129,7 @@
           android:layout_height="25dp"
           android:layout_alignParentStart="true"
           android:layout_centerVertical="true"
-          android:src="@drawable/quantum_ic_history_white_24"
+          android:src="@drawable/quantum_ic_history_vd_theme_24"
           android:tint="@color/call_subject_history_icon"/>
 
         <TextView
diff --git a/java/com/android/contacts/common/res/layout/search_bar_expanded.xml b/java/com/android/contacts/common/res/layout/search_bar_expanded.xml
index fa16083..7192eb0 100644
--- a/java/com/android/contacts/common/res/layout/search_bar_expanded.xml
+++ b/java/com/android/contacts/common/res/layout/search_bar_expanded.xml
@@ -29,7 +29,7 @@
     android:layout_margin="@dimen/search_box_navigation_icon_margin"
     android:background="?attr/selectableItemBackgroundBorderless"
     android:contentDescription="@string/action_menu_back_from_search"
-    android:src="@drawable/ic_back_arrow"
+    android:src="@drawable/quantum_ic_arrow_back_vd_theme_24"
     android:tint="@color/contactscommon_actionbar_background_color"/>
 
   <EditText
@@ -56,7 +56,7 @@
     android:background="?attr/selectableItemBackgroundBorderless"
     android:clickable="true"
     android:contentDescription="@string/description_clear_search"
-    android:src="@drawable/quantum_ic_close_white_24"
+    android:src="@drawable/quantum_ic_close_vd_theme_24"
     android:tint="@color/searchbox_icon_tint"/>
 
 </LinearLayout>
diff --git a/java/com/android/contacts/common/res/values-af/strings.xml b/java/com/android/contacts/common/res/values-af/strings.xml
index 52e612d..4ca39cf 100644
--- a/java/com/android/contacts/common/res/values-af/strings.xml
+++ b/java/com/android/contacts/common/res/values-af/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Weg"</string>
     <string name="status_busy" msgid="5990832098713248503">"Besig"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakte"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Topvoorgestel"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Ander"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Gids"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Werkgids"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle kontakte"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Voorstelle"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ek"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Soek tans…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Meer as <xliff:g id="COUNT">%d</xliff:g> gevind."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Tik \'n nota om saam met oproep te stuur …"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"STUUR EN BEL"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>-oortjie"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>-oortjie <xliff:g id="COUNT_3">%2$d</xliff:g> ongelese items. </item>
diff --git a/java/com/android/contacts/common/res/values-am/strings.xml b/java/com/android/contacts/common/res/values-am/strings.xml
index 0283fbb..d216b0b 100644
--- a/java/com/android/contacts/common/res/values-am/strings.xml
+++ b/java/com/android/contacts/common/res/values-am/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ወጣ ብሏል"</string>
     <string name="status_busy" msgid="5990832098713248503">"ተይዟል"</string>
     <string name="contactsList" msgid="8806067891419291513">"እውቅያዎች"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"በብዛት የተጠቆሙ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ሌላ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ማውጫ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"የሥራ ስልክ ማውጫ"</string>
     <string name="local_search_label" msgid="907622822323119235">"ሁሉም እውቅያዎች"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"ጥቆማዎች"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"እኔ"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"በመፈለግ ላይ…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"ከ<xliff:g id="COUNT">%d</xliff:g> በላይ ተገኝተዋል።"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ከጥሪ ጋር ለመላክ የማስታወሻ ጽሑፍ ይተይቡ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ላክ እና ደውል"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g><xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"የ<xliff:g id="TITLE">%1$s</xliff:g> ትር።"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> የ<xliff:g id="TITLE_2">%1$s</xliff:g> ትር። <xliff:g id="COUNT_3">%2$d</xliff:g> ያልተነበቡ ንጥሎች። </item>
diff --git a/java/com/android/contacts/common/res/values-ar/strings.xml b/java/com/android/contacts/common/res/values-ar/strings.xml
index a3862fe..040b544 100644
--- a/java/com/android/contacts/common/res/values-ar/strings.xml
+++ b/java/com/android/contacts/common/res/values-ar/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"بالخارج"</string>
     <string name="status_busy" msgid="5990832098713248503">"مشغول"</string>
     <string name="contactsList" msgid="8806067891419291513">"جهات الاتصال"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"أهم المقترحات"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"غير ذلك"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"الدليل"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"دليل العمل"</string>
     <string name="local_search_label" msgid="907622822323119235">"جميع جهات الاتصال"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"الاقتراحات"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"أنا"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"جارِ البحث…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"تم العثور على أكثر من <xliff:g id="COUNT">%d</xliff:g> من جهات الاتصال."</string>
@@ -252,7 +254,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"اكتب ملاحظة لإرسالها مع المكالمة ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"إرسال واتصال"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"علامة تبويب <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="zero"> <xliff:g id="TITLE_2">%1$s</xliff:g> علامة تبويب. <xliff:g id="COUNT_3">%2$d</xliff:g> عناصر غير مقروءة. </item>
diff --git a/java/com/android/contacts/common/res/values-az/strings.xml b/java/com/android/contacts/common/res/values-az/strings.xml
index 9433771..13250f7 100644
--- a/java/com/android/contacts/common/res/values-az/strings.xml
+++ b/java/com/android/contacts/common/res/values-az/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Kənar"</string>
     <string name="status_busy" msgid="5990832098713248503">"Məşğul"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktlar"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Ən yaxşı Təkliflər"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Digər"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Kataloq"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"İş kataloqu"</string>
     <string name="local_search_label" msgid="907622822323119235">"Bütün kontaktlar"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Təkliflər"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Mən"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Axtarılır..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ədəddən çox tapılıb."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Zəng ilə göndərmək üçün qeyd yazın..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"GÖNDƏRİN VƏ ZƏNG EDİN"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> tabel."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> tabel. <xliff:g id="COUNT_3">%2$d</xliff:g> oxunmamış element. </item>
diff --git a/java/com/android/contacts/common/res/values-b+sr+Latn/strings.xml b/java/com/android/contacts/common/res/values-b+sr+Latn/strings.xml
index fc99567..d3b6b0c 100644
--- a/java/com/android/contacts/common/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/contacts/common/res/values-b+sr+Latn/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Odsutan/na"</string>
     <string name="status_busy" msgid="5990832098713248503">"Zauzet/a"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakti"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najpopularniji predlozi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Drugo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktorijum"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Direktorijum za Work"</string>
     <string name="local_search_label" msgid="907622822323119235">"Svi kontakti"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Predlozi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ja"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Pretražuje se…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Pronađeno je više od <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Unesite belešku koju ćete poslati uz poziv..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"POŠALJI I POZOVI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Kartica <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Kartica <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> nepročitana stavka. </item>
diff --git a/java/com/android/contacts/common/res/values-be/strings.xml b/java/com/android/contacts/common/res/values-be/strings.xml
index a9652a1..ca8f164 100644
--- a/java/com/android/contacts/common/res/values-be/strings.xml
+++ b/java/com/android/contacts/common/res/values-be/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Адсутнічае"</string>
     <string name="status_busy" msgid="5990832098713248503">"Заняты"</string>
     <string name="contactsList" msgid="8806067891419291513">"Кантакты"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Лепшыя прапановы"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Іншае"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Дырэкторыя"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Працоўны каталог"</string>
     <string name="local_search_label" msgid="907622822323119235">"Усе кантакты"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Прапановы"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Я"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Пошук..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Знойдзена вынікаў: больш за <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Увесці нататку для адпраўкі з выклікам…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"АДПРАВІЦЬ І ВЫКЛІКАЦЬ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Укладка <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one">Укладка <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> непрачытаны элемент. </item>
diff --git a/java/com/android/contacts/common/res/values-bg/strings.xml b/java/com/android/contacts/common/res/values-bg/strings.xml
index 0b57eb6..4fdcc8c 100644
--- a/java/com/android/contacts/common/res/values-bg/strings.xml
+++ b/java/com/android/contacts/common/res/values-bg/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Отсъства"</string>
     <string name="status_busy" msgid="5990832098713248503">"Зает/а"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контакти"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Водещи предложения"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Други"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Директория"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Служебен указател"</string>
     <string name="local_search_label" msgid="907622822323119235">"Всички контакти"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Предложения"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Аз"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Търси се…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Намерени са повече от <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Напишете придружаваща бележка, която ще се изпрати при извършване на обаждането..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ИЗПРАЩАНЕ И ОБАЖДАНЕ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Раздел „<xliff:g id="TITLE">%1$s</xliff:g>“."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Раздел „<xliff:g id="TITLE_2">%1$s</xliff:g>“. <xliff:g id="COUNT_3">%2$d</xliff:g> непрочетени елемента. </item>
diff --git a/java/com/android/contacts/common/res/values-bn/strings.xml b/java/com/android/contacts/common/res/values-bn/strings.xml
index 8e783d1..debbe58 100644
--- a/java/com/android/contacts/common/res/values-bn/strings.xml
+++ b/java/com/android/contacts/common/res/values-bn/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"অন্যত্র"</string>
     <string name="status_busy" msgid="5990832098713248503">"ব্যস্ত"</string>
     <string name="contactsList" msgid="8806067891419291513">"পরিচিতিগুলি"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"শীর্ষস্থানীয় প্রস্তাবনা"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"অন্যান্য"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ডিরেক্টরি"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"কাজের সংগ্রহ"</string>
     <string name="local_search_label" msgid="907622822323119235">"সকল পরিচিতি"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"প্রস্তাবনাগুলি"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"আমি"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"অনুসন্ধান করছে..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>টির থেকে বেশি খুঁজে পাওয়া গিয়েছে৷"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"কলের সাথে পাঠানোর জন্য একটি নোট লিখুন ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"পাঠান এবং কল করুন"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ট্যাব৷"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> ট্যাব৷ <xliff:g id="COUNT_3">%2$d</xliff:g>টি অপঠিত আইটেম৷ </item>
diff --git a/java/com/android/contacts/common/res/values-bs/strings.xml b/java/com/android/contacts/common/res/values-bs/strings.xml
index 278f6a8..c5f85e5 100644
--- a/java/com/android/contacts/common/res/values-bs/strings.xml
+++ b/java/com/android/contacts/common/res/values-bs/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Odsutan"</string>
     <string name="status_busy" msgid="5990832098713248503">"Zauzeto"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakti"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najbolji prijedlozi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Ostalo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Imenik"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Poslovni imenik"</string>
     <string name="local_search_label" msgid="907622822323119235">"Svi kontakti"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Prijedlozi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ja"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Pretraživanje…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Pronađeno je više od <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Upišite bilješku koja će se poslati uz poziv ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"POŠALJI I POZOVI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Kartica <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Kartica <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> nepročitana stavka. </item>
diff --git a/java/com/android/contacts/common/res/values-ca/strings.xml b/java/com/android/contacts/common/res/values-ca/strings.xml
index ad31a01..7e814ff 100644
--- a/java/com/android/contacts/common/res/values-ca/strings.xml
+++ b/java/com/android/contacts/common/res/values-ca/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Absent"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupat"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contactes"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Suggeriments principals"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Altres"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directori"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directori de la feina"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tots els contactes"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggeriments"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Jo"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"S\'està cercant…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Se n\'han trobat més de <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escriu una nota per enviar-la juntament amb la trucada..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIA I TRUCA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Pestanya <xliff:g id="TITLE">%1$s</xliff:g>"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Pestanya <xliff:g id="TITLE_2">%1$s</xliff:g>: <xliff:g id="COUNT_3">%2$d</xliff:g> elements no llegits </item>
diff --git a/java/com/android/contacts/common/res/values-cs/strings.xml b/java/com/android/contacts/common/res/values-cs/strings.xml
index ab54be9..0bea069 100644
--- a/java/com/android/contacts/common/res/values-cs/strings.xml
+++ b/java/com/android/contacts/common/res/values-cs/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Pryč"</string>
     <string name="status_busy" msgid="5990832098713248503">"Nemám čas"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakty"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Hlavní návrhy"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Ostatní"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Adresář"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Pracovní adresář"</string>
     <string name="local_search_label" msgid="907622822323119235">"Všechny kontakty"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Návrhy"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Já"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Vyhledávání..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Nalezeno více kontaktů než <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Zadejte poznámku, která se odešle pomocí volání…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ODESLAT A ZAVOLAT"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Karta <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="few"> Karta <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> nepřečtené položky. </item>
diff --git a/java/com/android/contacts/common/res/values-da/strings.xml b/java/com/android/contacts/common/res/values-da/strings.xml
index 965d04a..c000b2f 100644
--- a/java/com/android/contacts/common/res/values-da/strings.xml
+++ b/java/com/android/contacts/common/res/values-da/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ikke til stede"</string>
     <string name="status_busy" msgid="5990832098713248503">"Optaget"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakter"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Populære forslag"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Andre"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Indeks"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Indeks for arbejde"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle kontakter"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Forslag"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Mig"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Søger..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Der er fundet mere end <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Indtast en note, som skal sendes ved opkald..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND OG RING"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Fanen <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Fanen <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> ulæst element. </item>
diff --git a/java/com/android/contacts/common/res/values-de/strings.xml b/java/com/android/contacts/common/res/values-de/strings.xml
index 60c5e68..90e1336 100644
--- a/java/com/android/contacts/common/res/values-de/strings.xml
+++ b/java/com/android/contacts/common/res/values-de/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Abwesend"</string>
     <string name="status_busy" msgid="5990832098713248503">"Beschäftigt"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakte"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Top-Vorschläge"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Andere"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Verzeichnis"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Verzeichnis geschäftlicher Kontakte"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle Kontakte"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Vorschläge"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ich"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Suche läuft..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Mehr als <xliff:g id="COUNT">%d</xliff:g> Kontakte gefunden"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Notiz eingeben, die beim Anrufen gesendet wird..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SENDEN UND ANRUFEN"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tab \"<xliff:g id="TITLE">%1$s</xliff:g>\"."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Tab \"<xliff:g id="TITLE_2">%1$s</xliff:g>\". <xliff:g id="COUNT_3">%2$d</xliff:g> ungelesene Elemente. </item>
diff --git a/java/com/android/contacts/common/res/values-el/strings.xml b/java/com/android/contacts/common/res/values-el/strings.xml
index 9af3bc5..33d2db4 100644
--- a/java/com/android/contacts/common/res/values-el/strings.xml
+++ b/java/com/android/contacts/common/res/values-el/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Μη διαθέσιμος"</string>
     <string name="status_busy" msgid="5990832098713248503">"Απασχολημένος"</string>
     <string name="contactsList" msgid="8806067891419291513">"Επαφές"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Κορυφαίες προτάσεις"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Άλλο"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Κατάλογος"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Κατάλογος εργασίας"</string>
     <string name="local_search_label" msgid="907622822323119235">"Όλες οι επαφές"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Προτάσεις"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Εγώ"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Αναζήτηση..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Βρέθηκαν περισσότερα από <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Πληκτρολογήστε μια σημείωση για αποστολή με την κλήση…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ΑΠΟΣΤΟΛΗ ΚΑΙ ΚΛΗΣΗ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Καρτέλα <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Καρτέλα <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> μη αναγνωσμένα στοιχεία. </item>
diff --git a/java/com/android/contacts/common/res/values-en-rAU/strings.xml b/java/com/android/contacts/common/res/values-en-rAU/strings.xml
index 996c6ee..e4e09dc 100644
--- a/java/com/android/contacts/common/res/values-en-rAU/strings.xml
+++ b/java/com/android/contacts/common/res/values-en-rAU/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Away"</string>
     <string name="status_busy" msgid="5990832098713248503">"Busy"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacts"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Top suggested"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Other"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directory"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Work directory"</string>
     <string name="local_search_label" msgid="907622822323119235">"All contacts"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggestions"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Me"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Searching…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"More than <xliff:g id="COUNT">%d</xliff:g> found."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Type a note to send with call ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND &amp; CALL"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> tab."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> tab. <xliff:g id="COUNT_3">%2$d</xliff:g> unread items. </item>
diff --git a/java/com/android/contacts/common/res/values-en-rGB/strings.xml b/java/com/android/contacts/common/res/values-en-rGB/strings.xml
index 996c6ee..e4e09dc 100644
--- a/java/com/android/contacts/common/res/values-en-rGB/strings.xml
+++ b/java/com/android/contacts/common/res/values-en-rGB/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Away"</string>
     <string name="status_busy" msgid="5990832098713248503">"Busy"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacts"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Top suggested"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Other"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directory"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Work directory"</string>
     <string name="local_search_label" msgid="907622822323119235">"All contacts"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggestions"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Me"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Searching…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"More than <xliff:g id="COUNT">%d</xliff:g> found."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Type a note to send with call ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND &amp; CALL"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> tab."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> tab. <xliff:g id="COUNT_3">%2$d</xliff:g> unread items. </item>
diff --git a/java/com/android/contacts/common/res/values-en-rIN/strings.xml b/java/com/android/contacts/common/res/values-en-rIN/strings.xml
index 996c6ee..e4e09dc 100644
--- a/java/com/android/contacts/common/res/values-en-rIN/strings.xml
+++ b/java/com/android/contacts/common/res/values-en-rIN/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Away"</string>
     <string name="status_busy" msgid="5990832098713248503">"Busy"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacts"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Top suggested"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Other"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directory"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Work directory"</string>
     <string name="local_search_label" msgid="907622822323119235">"All contacts"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggestions"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Me"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Searching…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"More than <xliff:g id="COUNT">%d</xliff:g> found."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Type a note to send with call ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND &amp; CALL"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> tab."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> tab. <xliff:g id="COUNT_3">%2$d</xliff:g> unread items. </item>
diff --git a/java/com/android/contacts/common/res/values-es-rUS/strings.xml b/java/com/android/contacts/common/res/values-es-rUS/strings.xml
index acb563c..894c352 100644
--- a/java/com/android/contacts/common/res/values-es-rUS/strings.xml
+++ b/java/com/android/contacts/common/res/values-es-rUS/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contactos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Principales lugares sugeridos"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Otros"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directorio"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directorio del trabajo"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos los contactos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugerencias"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Yo"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Buscando..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Más de <xliff:g id="COUNT">%d</xliff:g> encontrados"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escribe una nota para enviar con la llamada…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR Y LLAMAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Pestaña <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Pestaña <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> elementos no leídos. </item>
diff --git a/java/com/android/contacts/common/res/values-es/strings.xml b/java/com/android/contacts/common/res/values-es/strings.xml
index def7a44..39e11d7 100644
--- a/java/com/android/contacts/common/res/values-es/strings.xml
+++ b/java/com/android/contacts/common/res/values-es/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contactos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Sugerencias principales"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Otro"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directorio"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directorio de trabajo"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos los contactos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugerencias"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Yo"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Buscando..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Se han encontrado más de <xliff:g id="COUNT">%d</xliff:g> contactos."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escribe una nota para enviarla con la llamada..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR Y LLAMAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Pestaña <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Pestaña <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> elementos no leídos. </item>
diff --git a/java/com/android/contacts/common/res/values-et/strings.xml b/java/com/android/contacts/common/res/values-et/strings.xml
index c80d542..e146038 100644
--- a/java/com/android/contacts/common/res/values-et/strings.xml
+++ b/java/com/android/contacts/common/res/values-et/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Eemal"</string>
     <string name="status_busy" msgid="5990832098713248503">"Hõivatud"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktid"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Populaarsed soovitused"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Muu"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Kataloog"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Töökontaktide kataloog"</string>
     <string name="local_search_label" msgid="907622822323119235">"Kõik kontaktid"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Soovitused"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Mina"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Otsimine ..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Leitud rohkem kui <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Sisestage märkus, mis koos kõnega saata ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SAADA JA HELISTA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Vahekaart <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Vahekaart <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> lugemata üksust. </item>
diff --git a/java/com/android/contacts/common/res/values-eu/strings.xml b/java/com/android/contacts/common/res/values-eu/strings.xml
index 868d668..9caf1f1 100644
--- a/java/com/android/contacts/common/res/values-eu/strings.xml
+++ b/java/com/android/contacts/common/res/values-eu/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Kanpoan"</string>
     <string name="status_busy" msgid="5990832098713248503">"Okupatuta"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktuak"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Iradokizun garrantzitsuenak"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Beste bat"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktorioa"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Laneko kontaktuak"</string>
     <string name="local_search_label" msgid="907622822323119235">"Kontaktu guztiak"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Iradokizunak"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ni"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Bilatzen…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> baino gehiago aurkitu dira."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Idatzi deiarekin batera bidali beharreko oharra…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"BIDALI ETA DEITU"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g>: <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> fitxa."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> fitxa. Irakurri gabeko <xliff:g id="COUNT_3">%2$d</xliff:g> elementu. </item>
diff --git a/java/com/android/contacts/common/res/values-fa/strings.xml b/java/com/android/contacts/common/res/values-fa/strings.xml
index dda1064..c0bc010 100644
--- a/java/com/android/contacts/common/res/values-fa/strings.xml
+++ b/java/com/android/contacts/common/res/values-fa/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"غایب"</string>
     <string name="status_busy" msgid="5990832098713248503">"مشغول"</string>
     <string name="contactsList" msgid="8806067891419291513">"مخاطبین"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"پیشنهادهای برتر"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"سایر موارد"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"فهرست"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"فهرست کار"</string>
     <string name="local_search_label" msgid="907622822323119235">"همه مخاطبین"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"پیشنهادها"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"من"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"در حال جستجو…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"بیش از <xliff:g id="COUNT">%d</xliff:g> مورد یافت شد."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"یادداشتی بنویسید که همراه تماس ارسال شود…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ارسال و تماس"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / ‏<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"برگه «<xliff:g id="TITLE">%1$s</xliff:g>»."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> برگه «<xliff:g id="TITLE_2">%1$s</xliff:g>». <xliff:g id="COUNT_3">%2$d</xliff:g> مورد خوانده‌نشده. </item>
diff --git a/java/com/android/contacts/common/res/values-fi/strings.xml b/java/com/android/contacts/common/res/values-fi/strings.xml
index b8065b2..c124765 100644
--- a/java/com/android/contacts/common/res/values-fi/strings.xml
+++ b/java/com/android/contacts/common/res/values-fi/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Poissa"</string>
     <string name="status_busy" msgid="5990832098713248503">"Varattu"</string>
     <string name="contactsList" msgid="8806067891419291513">"Yhteystiedot"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Kiinnostavimmat ehdotukset"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Muu"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Osoitekirja"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Työhakemisto"</string>
     <string name="local_search_label" msgid="907622822323119235">"Kaikki yhteystiedot"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Ehdotukset"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Minä"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Haetaan…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Löytyi yli <xliff:g id="COUNT">%d</xliff:g> yhteystietoa."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Kirjoita muistiinpano lähetettäväksi puhelun kanssa…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"LÄHETÄ JA SOITA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>-välilehti."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>-välilehti. <xliff:g id="COUNT_3">%2$d</xliff:g> lukematonta kohdetta. </item>
diff --git a/java/com/android/contacts/common/res/values-fr-rCA/strings.xml b/java/com/android/contacts/common/res/values-fr-rCA/strings.xml
index 82f5492..c055408 100644
--- a/java/com/android/contacts/common/res/values-fr-rCA/strings.xml
+++ b/java/com/android/contacts/common/res/values-fr-rCA/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Absent"</string>
     <string name="status_busy" msgid="5990832098713248503">"Occupé(e)"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacts"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Meilleures suggestions"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Autre"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Répertoire"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Annuaire professionnel"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tous les contacts"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggestions"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Moi"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Recherche en cours…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Plus de <xliff:g id="COUNT">%d</xliff:g> contacts ont été trouvés."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Tapez une note à envoyer avec l\'appel..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVOYER ET APPELER"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> : <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Onglet <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Onglet <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> élément non lu. </item>
diff --git a/java/com/android/contacts/common/res/values-fr/strings.xml b/java/com/android/contacts/common/res/values-fr/strings.xml
index 474d721..a47a5a2 100644
--- a/java/com/android/contacts/common/res/values-fr/strings.xml
+++ b/java/com/android/contacts/common/res/values-fr/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Absent"</string>
     <string name="status_busy" msgid="5990832098713248503">"Occupé"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacts"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Principaux dossiers recommandés"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Autre"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Répertoire"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Contacts professionnels"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tous les contacts"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggestions"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Moi"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Recherche..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Plus de <xliff:g id="COUNT">%d</xliff:g> contacts ont été trouvés."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Saisissez une note pour accompagner l\'appel..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVOYER ET APPELER"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Onglet <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Onglet <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> élément non lu. </item>
diff --git a/java/com/android/contacts/common/res/values-gl/strings.xml b/java/com/android/contacts/common/res/values-gl/strings.xml
index 4a3262a..a90481d 100644
--- a/java/com/android/contacts/common/res/values-gl/strings.xml
+++ b/java/com/android/contacts/common/res/values-gl/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contactos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Suxestións destacadas"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Outro"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directorio"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directorio de traballo"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos os contactos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suxestións"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Eu"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Buscando..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Encontráronse máis de <xliff:g id="COUNT">%d</xliff:g> contactos."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escribe unha nota para enviala coa chamada…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR E CHAMAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Pestana <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Pestana <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> elementos non lidos. </item>
diff --git a/java/com/android/contacts/common/res/values-gu/strings.xml b/java/com/android/contacts/common/res/values-gu/strings.xml
index 536aceb..9b1a6a8 100644
--- a/java/com/android/contacts/common/res/values-gu/strings.xml
+++ b/java/com/android/contacts/common/res/values-gu/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"દૂર"</string>
     <string name="status_busy" msgid="5990832098713248503">"વ્યસ્ત"</string>
     <string name="contactsList" msgid="8806067891419291513">"સંપર્કો"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ટોચના સૂચવેલ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"અન્ય"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"નિર્દેશિકા"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"કાર્ય નિર્દેશિકા"</string>
     <string name="local_search_label" msgid="907622822323119235">"તમામ સંપર્કો"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"સૂચનો"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"હું"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"શોધી રહ્યું છે..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> કરતાં વધુ મળ્યાં."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"કૉલ સાથે મોકલવા માટે એક નોંધ લખો ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"મોકલો અને કૉલ કરો"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ટૅબ."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> ટૅબ. <xliff:g id="COUNT_3">%2$d</xliff:g> વાંચ્યા વગરની આઇટમ. </item>
diff --git a/java/com/android/contacts/common/res/values-hi/strings.xml b/java/com/android/contacts/common/res/values-hi/strings.xml
index c61e195..e33f7d2 100644
--- a/java/com/android/contacts/common/res/values-hi/strings.xml
+++ b/java/com/android/contacts/common/res/values-hi/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"दूर"</string>
     <string name="status_busy" msgid="5990832098713248503">"व्यस्त"</string>
     <string name="contactsList" msgid="8806067891419291513">"संपर्क"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"शीर्ष सुझाव"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"अन्य"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"निर्देशिका"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"कार्य निर्देशिका"</string>
     <string name="local_search_label" msgid="907622822323119235">"सभी संपर्क"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"सुझाव"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"मुझे"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"खोज रहा है..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> से अधिक मिले."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"कॉल के साथ भेजने के लिए नोट लिखें ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"भेजें और कॉल करें"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> टैब."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> टैब. <xliff:g id="COUNT_3">%2$d</xliff:g> नहीं पढ़े गए आइटम. </item>
diff --git a/java/com/android/contacts/common/res/values-hr/strings.xml b/java/com/android/contacts/common/res/values-hr/strings.xml
index 66986dd..d6e0b10 100644
--- a/java/com/android/contacts/common/res/values-hr/strings.xml
+++ b/java/com/android/contacts/common/res/values-hr/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Odsutan"</string>
     <string name="status_busy" msgid="5990832098713248503">"Zauzet"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakti"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najbolji prijedlozi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Drugo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktorij"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Poslovni direktorij"</string>
     <string name="local_search_label" msgid="907622822323119235">"Svi kontakti"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Prijedlozi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ja"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Pretraživanje…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Pronađeno je više od <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Napišite bilješku koju ćete poslati uz poziv..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"POŠALJI I NAZOVI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Kartica <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Kartica <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> nepročitana stavka. </item>
diff --git a/java/com/android/contacts/common/res/values-hu/strings.xml b/java/com/android/contacts/common/res/values-hu/strings.xml
index 22bf509..44bf9c8 100644
--- a/java/com/android/contacts/common/res/values-hu/strings.xml
+++ b/java/com/android/contacts/common/res/values-hu/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Nincs a gépnél"</string>
     <string name="status_busy" msgid="5990832098713248503">"Elfoglalt"</string>
     <string name="contactsList" msgid="8806067891419291513">"Címtár"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Legjobb javaslatok"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Egyéb"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Címtár"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Munkahelyi névjegyek címtára"</string>
     <string name="local_search_label" msgid="907622822323119235">"Összes névjegy"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Javaslatok"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Én"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Keresés…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Több mint <xliff:g id="COUNT">%d</xliff:g> találat."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Írjon üzenetet, amelyet elküldhetünk a hívással együtt…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"KÜLDÉS ÉS HÍVÁS"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="LIMIT">%2$s</xliff:g>/<xliff:g id="COUNT">%1$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> lap."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> lap. <xliff:g id="COUNT_3">%2$d</xliff:g> olvasatlan elem. </item>
diff --git a/java/com/android/contacts/common/res/values-hy/strings.xml b/java/com/android/contacts/common/res/values-hy/strings.xml
index 85c9023..b1490c7 100644
--- a/java/com/android/contacts/common/res/values-hy/strings.xml
+++ b/java/com/android/contacts/common/res/values-hy/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Տեղում չէ"</string>
     <string name="status_busy" msgid="5990832098713248503">"Զբաղված"</string>
     <string name="contactsList" msgid="8806067891419291513">"Կոնտակտներ"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Լավագույն առաջարկներ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Այլ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Գրացուցակ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Աշխատանքային գրացուցակ"</string>
     <string name="local_search_label" msgid="907622822323119235">"Բոլոր կոնտակտները"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Առաջարկներ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ես"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Որոնում..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Գտնվել են <xliff:g id="COUNT">%d</xliff:g>-ից ավելի:"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Մուտքագրեք նշում՝ զանգի հետ ուղարկելու համար ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ՈՒՂԱՐԿԵԼ ԵՎ ԶԱՆԳԵԼ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ներդիր:"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> tab. <xliff:g id="COUNT_3">%2$d</xliff:g> unread items. </item>
diff --git a/java/com/android/contacts/common/res/values-in/strings.xml b/java/com/android/contacts/common/res/values-in/strings.xml
index d7ee8bf..a54821e 100644
--- a/java/com/android/contacts/common/res/values-in/strings.xml
+++ b/java/com/android/contacts/common/res/values-in/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Keluar"</string>
     <string name="status_busy" msgid="5990832098713248503">"Sibuk"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontak"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Paling Disarankan"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Lainnya"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktori"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Direktori kerja"</string>
     <string name="local_search_label" msgid="907622822323119235">"Semua kontak"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Saran"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Saya"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Menelusuri…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Ditemukan lebih dari <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Ketik catatan untuk dikirim dengan panggilan telepon ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"KIRIM &amp; TELEPON"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tab <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Tab <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> item belum dibaca. </item>
diff --git a/java/com/android/contacts/common/res/values-is/strings.xml b/java/com/android/contacts/common/res/values-is/strings.xml
index 26c1aef..803a44b 100644
--- a/java/com/android/contacts/common/res/values-is/strings.xml
+++ b/java/com/android/contacts/common/res/values-is/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Í burtu"</string>
     <string name="status_busy" msgid="5990832098713248503">"Upptekin(n)"</string>
     <string name="contactsList" msgid="8806067891419291513">"Tengiliðir"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Helstu tillögur"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Annað"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Skrá"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Vinnuskrá"</string>
     <string name="local_search_label" msgid="907622822323119235">"Allir tengiliðir"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Tillögur"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ég"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Leitar…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Yfir <xliff:g id="COUNT">%d</xliff:g> fundust."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Sláðu inn texta til að senda með símtalinu..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SENDA OG HRINGJA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Flipinn <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Flipinn <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> ólesið atriði. </item>
diff --git a/java/com/android/contacts/common/res/values-it/strings.xml b/java/com/android/contacts/common/res/values-it/strings.xml
index 8ea5648..1c4c769 100644
--- a/java/com/android/contacts/common/res/values-it/strings.xml
+++ b/java/com/android/contacts/common/res/values-it/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Assente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Occupato"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contatti"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Suggerimenti più popolari"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Altro"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directory"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directory di lavoro"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tutti i contatti"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggerimenti"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Io"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Ricerca..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Più di <xliff:g id="COUNT">%d</xliff:g> trovati."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Digita una nota da inviare con la chiamata..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"INVIA E CHIAMA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Scheda <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Scheda <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> elementi da leggere. </item>
diff --git a/java/com/android/contacts/common/res/values-iw/strings.xml b/java/com/android/contacts/common/res/values-iw/strings.xml
index 2a6b2c1..9f1fd49 100644
--- a/java/com/android/contacts/common/res/values-iw/strings.xml
+++ b/java/com/android/contacts/common/res/values-iw/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"לא נמצא"</string>
     <string name="status_busy" msgid="5990832098713248503">"לא פנוי"</string>
     <string name="contactsList" msgid="8806067891419291513">"אנשי קשר"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"הצעות מובילות"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"אחר"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ספריה"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ספריית עבודה"</string>
     <string name="local_search_label" msgid="907622822323119235">"כל אנשי הקשר"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"הצעות"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"אני"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"מחפש..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"נמצאו יותר מ-<xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"הקלד הערה לשליחה עם השיחה..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"שלח והתקשר"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"‎<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>‎"</string>
     <string name="tab_title" msgid="3387876802026074288">"הכרטיסייה <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="two">הכרטיסייה <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> פריטים שלא נקראו. </item>
diff --git a/java/com/android/contacts/common/res/values-ja/strings.xml b/java/com/android/contacts/common/res/values-ja/strings.xml
index 3271b46..8dd7768 100644
--- a/java/com/android/contacts/common/res/values-ja/strings.xml
+++ b/java/com/android/contacts/common/res/values-ja/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"不在"</string>
     <string name="status_busy" msgid="5990832098713248503">"取り込み中"</string>
     <string name="contactsList" msgid="8806067891419291513">"連絡先"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"おすすめ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"その他"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ディレクトリ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"仕事用の連絡先リスト"</string>
     <string name="local_search_label" msgid="907622822323119235">"すべての連絡先"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"候補"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"自分"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"検索中..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>件以上見つかりました。"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"発信時に送信するメモを入力..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"送信 / 通話"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g>、<xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> タブ。"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> タブ。<xliff:g id="COUNT_3">%2$d</xliff:g> 件の未読項目。</item>
diff --git a/java/com/android/contacts/common/res/values-ka/strings.xml b/java/com/android/contacts/common/res/values-ka/strings.xml
index ebbee6e..a7f536d 100644
--- a/java/com/android/contacts/common/res/values-ka/strings.xml
+++ b/java/com/android/contacts/common/res/values-ka/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"გასული"</string>
     <string name="status_busy" msgid="5990832098713248503">"დაკავებული"</string>
     <string name="contactsList" msgid="8806067891419291513">"კონტაქტები"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"საუკეთესო შეთავაზებები"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"სხვა"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"კატალოგი"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"სამსახურის კატალოგი"</string>
     <string name="local_search_label" msgid="907622822323119235">"ყველა კონტაქტი"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"შეთავაზებები"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"მე"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"ძიება..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"ნაპოვნია <xliff:g id="COUNT">%d</xliff:g>-ზე მეტი."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"აკრიფეთ შენიშვნა ზართან ერთად გასაგზავნად ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"გაგზავნა და დარეკვა"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ცხრ."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ცხრ. <xliff:g id="COUNT_3">%2$d</xliff:g> წაუკითხავი ერთეული. </item>
diff --git a/java/com/android/contacts/common/res/values-kk/strings.xml b/java/com/android/contacts/common/res/values-kk/strings.xml
index 327532a..cf2f5f1 100644
--- a/java/com/android/contacts/common/res/values-kk/strings.xml
+++ b/java/com/android/contacts/common/res/values-kk/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Желіден тыс"</string>
     <string name="status_busy" msgid="5990832098713248503">"Бос емес"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контактілер"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Үздік ұсыныстар"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Басқа"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Анықтама"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Жұмыс каталогы"</string>
     <string name="local_search_label" msgid="907622822323119235">"Барлық контактілер"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Ұсыныстар"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Мен"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Іздеуде…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> көбірек табылды."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Қоңыраумен жіберу үшін ескертпе теріңіз ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ЖІБЕРУ ЖӘНЕ ҚОҢЫРАУ ШАЛУ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> қойындысы."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> қойындысы. <xliff:g id="COUNT_3">%2$d</xliff:g> оқылмаған элемент. </item>
diff --git a/java/com/android/contacts/common/res/values-km/strings.xml b/java/com/android/contacts/common/res/values-km/strings.xml
index 5030167..d22ebb2 100644
--- a/java/com/android/contacts/common/res/values-km/strings.xml
+++ b/java/com/android/contacts/common/res/values-km/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ចាក​ឆ្ងាយ"</string>
     <string name="status_busy" msgid="5990832098713248503">"រវល់"</string>
     <string name="contactsList" msgid="8806067891419291513">"ទំនាក់ទំនង"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"បាន​ណែនាំ​​កម្រិត​ខ្ពស់"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ផ្សេងៗ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ថត"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ថតកន្លែងការងារ"</string>
     <string name="local_search_label" msgid="907622822323119235">"ទំនាក់ទំនង​ទាំងអស់"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"ការ​ណែនាំ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ខ្ញុំ"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"កំពុង​ស្វែងរក..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"បាន​រក​ឃើញ​ច្រើន​ជាង <xliff:g id="COUNT">%d</xliff:g> ។"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"វាយបញ្ចូលចំណាំដែលត្រូវផ្ញើជាមួយការហៅទូរស័ព្ទ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ផ្ញើ &amp; ហៅ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"ផ្ទាំង <xliff:g id="TITLE">%1$s</xliff:g>។"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">ផ្ទាំង <xliff:g id="TITLE_2">%1$s</xliff:g>។ ធាតុមិនទាន់​អាន <xliff:g id="COUNT_3">%2$d</xliff:g> </item>
diff --git a/java/com/android/contacts/common/res/values-kn/strings.xml b/java/com/android/contacts/common/res/values-kn/strings.xml
index 446e078..6b49a0b 100644
--- a/java/com/android/contacts/common/res/values-kn/strings.xml
+++ b/java/com/android/contacts/common/res/values-kn/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ದೂರ"</string>
     <string name="status_busy" msgid="5990832098713248503">"ಕಾರ್ಯನಿರತ"</string>
     <string name="contactsList" msgid="8806067891419291513">"ಸಂಪರ್ಕಗಳು"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ಉನ್ನತ ಸಲಹೆ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ಇತರೆ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ಡೈರೆಕ್ಟರಿ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ಕೆಲಸದ ಡೈರೆಕ್ಟರಿ"</string>
     <string name="local_search_label" msgid="907622822323119235">"ಎಲ್ಲಾ ಸಂಪರ್ಕಗಳು"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"ಸಲಹೆಗಳು"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ನಾನು"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"ಹುಡುಕಲಾಗುತ್ತಿದೆ…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ಗಿಂತ ಹೆಚ್ಚಾಗಿ ಕಂಡುಬಂದಿದೆ."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ಕರೆ ಕಳುಹಿಸಲು ಟಿಪ್ಪಣಿಯನ್ನು ಟೈಪ್ ಮಾಡಿ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ಕಳುಹಿಸು ಮತ್ತು ಕರೆಮಾಡು"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ಟ್ಯಾಬ್."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> ಟ್ಯಾಬ್. <xliff:g id="COUNT_3">%2$d</xliff:g> ಓದದಿರುವ ಐಟಂಗಳು. </item>
diff --git a/java/com/android/contacts/common/res/values-ko/strings.xml b/java/com/android/contacts/common/res/values-ko/strings.xml
index 4c2bd4f..f186596 100644
--- a/java/com/android/contacts/common/res/values-ko/strings.xml
+++ b/java/com/android/contacts/common/res/values-ko/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"자리 비움"</string>
     <string name="status_busy" msgid="5990832098713248503">"다른 용무 중"</string>
     <string name="contactsList" msgid="8806067891419291513">"주소록"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"인기 추천"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"기타"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"디렉토리"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"직장 디렉토리"</string>
     <string name="local_search_label" msgid="907622822323119235">"모든 연락처"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"추천"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"나"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"검색 중..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>개 이상 찾았습니다."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"통화에 함께 전송할 메모를 입력하세요..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"보내기 및 전화 걸기"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> 탭"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> 탭. 읽지 않은 항목 <xliff:g id="COUNT_3">%2$d</xliff:g>개 </item>
diff --git a/java/com/android/contacts/common/res/values-ky/strings.xml b/java/com/android/contacts/common/res/values-ky/strings.xml
index e5bab45..eaa7dcc 100644
--- a/java/com/android/contacts/common/res/values-ky/strings.xml
+++ b/java/com/android/contacts/common/res/values-ky/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Чыгып кетти"</string>
     <string name="status_busy" msgid="5990832098713248503">"Бош эмес"</string>
     <string name="contactsList" msgid="8806067891419291513">"Байланыштар"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Эң көп сунушталгандар"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Башка"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Директорий"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Жумуш профилиндеги байланыштар китепчеси"</string>
     <string name="local_search_label" msgid="907622822323119235">"Бардык байланыштар"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Сунуштар"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Мен"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Изделүүдө…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ашык табылды."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Чалуу менен жөнөтүлө турган кыска жазууну териңиз …"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ЖӨНӨТҮҮ ЖАНА ЧАЛУУ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"\"<xliff:g id="TITLE">%1$s</xliff:g>\" өтмөгү."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> \"<xliff:g id="TITLE_2">%1$s</xliff:g>\" өтмөгү. <xliff:g id="COUNT_3">%2$d</xliff:g> нерсе окула элек. </item>
diff --git a/java/com/android/contacts/common/res/values-lo/strings.xml b/java/com/android/contacts/common/res/values-lo/strings.xml
index c649539..fa6d3c6 100644
--- a/java/com/android/contacts/common/res/values-lo/strings.xml
+++ b/java/com/android/contacts/common/res/values-lo/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ບໍ່ຢູ່"</string>
     <string name="status_busy" msgid="5990832098713248503">"ບໍ່ຫວ່າງ"</string>
     <string name="contactsList" msgid="8806067891419291513">"ລາຍຊື່ຜູ້ຕິດຕໍ່"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ແນະນຳຫຼາຍທີ່ສຸດ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ອື່ນໆ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ໄດເຣັກທໍຣີ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ໄດເຣັກທໍຣີບ່ອນເຮັດວຽກ"</string>
     <string name="local_search_label" msgid="907622822323119235">"ລາຍຊື່ຜູ້ຕິດຕໍ່ທັງໝົດ"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"ຄຳແນະນຳ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ຂ້ອຍ"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"ກຳລັງຊອກຫາ..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"ພົບຫຼາຍກວ່າ <xliff:g id="COUNT">%d</xliff:g> ລາຍການ."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ພິມ​ບັນ​ທຶກ ເພື່ອ​ສົ່ງ​ກັບ​ການ​ໂທ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ສົ່ງ ແລະ ໂທ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"ແຖບ <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">ແຖບ <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> ລາຍການບໍ່ທັນໄດ້ອ່ານ. </item>
diff --git a/java/com/android/contacts/common/res/values-lt/strings.xml b/java/com/android/contacts/common/res/values-lt/strings.xml
index b74bd99..b577260 100644
--- a/java/com/android/contacts/common/res/values-lt/strings.xml
+++ b/java/com/android/contacts/common/res/values-lt/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Pasišalinęs"</string>
     <string name="status_busy" msgid="5990832098713248503">"Užsiėmęs"</string>
     <string name="contactsList" msgid="8806067891419291513">"Adresinė"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Populiariausi siūlomi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Kita"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalogas"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Darbo katalogas"</string>
     <string name="local_search_label" msgid="907622822323119235">"Visi kontaktai"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Pasiūlymai"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Aš"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Ieškoma…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Rasta daugiau nei <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Įveskite užrašą, kurį galima išsiųsti skambinant..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SIŲSTI IR SKAMBINTI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Skirtukas „<xliff:g id="TITLE">%1$s</xliff:g>“."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Skirtukas „<xliff:g id="TITLE_2">%1$s</xliff:g>“. <xliff:g id="COUNT_3">%2$d</xliff:g> neskaitytas elementas. </item>
diff --git a/java/com/android/contacts/common/res/values-lv/strings.xml b/java/com/android/contacts/common/res/values-lv/strings.xml
index c09a27f..81551e2 100644
--- a/java/com/android/contacts/common/res/values-lv/strings.xml
+++ b/java/com/android/contacts/common/res/values-lv/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Prombūtnē"</string>
     <string name="status_busy" msgid="5990832098713248503">"Aizņemts"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktpersonas"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Populārākie ieteikumi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Cits"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalogs"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Darba katalogs"</string>
     <string name="local_search_label" msgid="907622822323119235">"Visas kontaktpersonas"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Ieteikumi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Es"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Notiek meklēšana…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Atrastas vairāk nekā <xliff:g id="COUNT">%d</xliff:g> kontaktpersonas."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Ierakstiet piezīmi, ko nosūtīt ar zvanu..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SŪTĪT UN ZVANĪT"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> no <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g>: <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Cilne “<xliff:g id="TITLE">%1$s</xliff:g>”"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="zero"> Cilne “<xliff:g id="TITLE_2">%1$s</xliff:g>”. <xliff:g id="COUNT_3">%2$d</xliff:g> nelasīti vienumi. </item>
diff --git a/java/com/android/contacts/common/res/values-mk/strings.xml b/java/com/android/contacts/common/res/values-mk/strings.xml
index da1530f..475ea17 100644
--- a/java/com/android/contacts/common/res/values-mk/strings.xml
+++ b/java/com/android/contacts/common/res/values-mk/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Отсутен"</string>
     <string name="status_busy" msgid="5990832098713248503">"Зафатен"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контакти"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Нејдобри предложени"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Друг"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Адресар"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Работен директориум"</string>
     <string name="local_search_label" msgid="907622822323119235">"Сите контакти"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Предлози"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Јас"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Се пребарува..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Повеќе од <xliff:g id="COUNT">%d</xliff:g> се пронајдени."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Напишете белешка да се испрати со повикот..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ИСПРАТИ И ПОВИКАЈ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Картичка <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Картичка <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> непрочитана ставка. </item>
diff --git a/java/com/android/contacts/common/res/values-ml/strings.xml b/java/com/android/contacts/common/res/values-ml/strings.xml
index 7e92749..969a99b 100644
--- a/java/com/android/contacts/common/res/values-ml/strings.xml
+++ b/java/com/android/contacts/common/res/values-ml/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ലഭ്യമല്ല"</string>
     <string name="status_busy" msgid="5990832098713248503">"തിരക്കിലാണ്"</string>
     <string name="contactsList" msgid="8806067891419291513">"കോണ്ടാക്റ്റ്"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"കൂടുതൽ നിർദ്ദേശിച്ചിരിക്കുന്നവ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"മറ്റുള്ളവ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ഡയറക്‌ടറി"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ഔദ്യോഗിക ഡയറക്‌ടറി"</string>
     <string name="local_search_label" msgid="907622822323119235">"എല്ലാ കോൺടാക്റ്റുകളും"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"നിര്‍ദ്ദേശങ്ങള്‍"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ഞാന്‍"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"തിരയുന്നു…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>-ൽ കൂടുതൽ കണ്ടെത്തി."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"കോളിനൊപ്പം അയയ്ക്കുന്നതിന് ഒരു കുറിപ്പ് ടൈപ്പുചെയ്യുക ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"അയയ്‌ക്കുകയും വിളിക്കുകയും ചെയ്യുക"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ടാബ്."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ടാബ്. <xliff:g id="COUNT_3">%2$d</xliff:g> വായിക്കാത്ത ഇനങ്ങൾ. </item>
diff --git a/java/com/android/contacts/common/res/values-mn/strings.xml b/java/com/android/contacts/common/res/values-mn/strings.xml
index f0a8c92..12fba53 100644
--- a/java/com/android/contacts/common/res/values-mn/strings.xml
+++ b/java/com/android/contacts/common/res/values-mn/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Холдсон"</string>
     <string name="status_busy" msgid="5990832098713248503">"Завгүй"</string>
     <string name="contactsList" msgid="8806067891419291513">"Харилцагчид"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Санал болгосон шилдэг"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Бусад"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Директор"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Ажлын лавлагаа"</string>
     <string name="local_search_label" msgid="907622822323119235">"Бүх харилцагчид"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Санал болголт"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Би"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Хайж байна..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>-с олон олдлоо."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Дуудлаганд илгээх тэмдэглэл бичнэ үү..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ИЛГЭЭХ, ДУУДЛАГА"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> таб."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> таб. <xliff:g id="COUNT_3">%2$d</xliff:g> уншаагүй зүйл. </item>
diff --git a/java/com/android/contacts/common/res/values-mr/strings.xml b/java/com/android/contacts/common/res/values-mr/strings.xml
index 96504c7..8770f8b 100644
--- a/java/com/android/contacts/common/res/values-mr/strings.xml
+++ b/java/com/android/contacts/common/res/values-mr/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"दूर आहे"</string>
     <string name="status_busy" msgid="5990832098713248503">"व्यस्त"</string>
     <string name="contactsList" msgid="8806067891419291513">"संपर्क"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"सुचविलेले उत्कृष्ट"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"इतर"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"निर्देशिका"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"कार्य निर्देशिका"</string>
     <string name="local_search_label" msgid="907622822323119235">"सर्व संपर्क"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"सूचना"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"मी"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"शोधत आहे..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> पेक्षा जास्त आढळले."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"कॉलसह पाठविण्‍यासाठी एक टीप टाइप करा..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"पाठवा आणि कॉल करा"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> टॅब."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> टॅब. <xliff:g id="COUNT_3">%2$d</xliff:g> न वाचलेला आयटम. </item>
diff --git a/java/com/android/contacts/common/res/values-ms/strings.xml b/java/com/android/contacts/common/res/values-ms/strings.xml
index 60d2b7a..45c297f 100644
--- a/java/com/android/contacts/common/res/values-ms/strings.xml
+++ b/java/com/android/contacts/common/res/values-ms/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Tiada"</string>
     <string name="status_busy" msgid="5990832098713248503">"Sibuk"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kenalan"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Teratas Dicadangkan"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Lain-lain"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktori"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Direktori kerja"</string>
     <string name="local_search_label" msgid="907622822323119235">"Semua kenalan"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Cadangan"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Saya"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Mencari..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"lebih daripada <xliff:g id="COUNT">%d</xliff:g> ditemui"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Taip nota untuk dihantar dengan panggilan…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"HANTAR &amp; PANGGIL"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tab <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Tab <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> item belum dibaca. </item>
diff --git a/java/com/android/contacts/common/res/values-my/strings.xml b/java/com/android/contacts/common/res/values-my/strings.xml
index d81e895..6fbad16 100644
--- a/java/com/android/contacts/common/res/values-my/strings.xml
+++ b/java/com/android/contacts/common/res/values-my/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"အဝေးရောက်နေပါသည်"</string>
     <string name="status_busy" msgid="5990832098713248503">"အလုပ်များနေသည်"</string>
     <string name="contactsList" msgid="8806067891419291513">"အဆက်အသွယ်များ"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ထိပ်တန်း အကြံပြုထားပါသည်"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"တစ်ခြား"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"လမ်းညွှန်"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"အလုပ်လမ်းညွှန်"</string>
     <string name="local_search_label" msgid="907622822323119235">"လိပ်စာများအားလုံး"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"အကြံပြုချက်များ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ကျွန်ုပ်"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"ရှာဖွေနေသည်…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ထက်ပိုတွေ့ရှိသည်"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ခေါ်ဆိုမှုဖြင့် ပေးပို့ရန် မှတ်စုတစ်ခု ရိုက်ပါ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ပေးပို့ပြီး ခေါ်ပါ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> တဘ်။"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> တဘ်။ မဖတ်ရသေးသည့် အရာ <xliff:g id="COUNT_3">%2$d</xliff:g> ခု။ </item>
diff --git a/java/com/android/contacts/common/res/values-nb/strings.xml b/java/com/android/contacts/common/res/values-nb/strings.xml
index 7085cb3..8162ee7 100644
--- a/java/com/android/contacts/common/res/values-nb/strings.xml
+++ b/java/com/android/contacts/common/res/values-nb/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Borte"</string>
     <string name="status_busy" msgid="5990832098713248503">"Opptatt"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakter"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Toppforslag"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Annen"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalog"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Jobbkatalog"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle kontakter"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Forslag"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Meg"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Søker …"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Fant mer enn <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Skriv et notat du vil sende med anropet …"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND OG RING"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>-fanen."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>-fanen. <xliff:g id="COUNT_3">%2$d</xliff:g> uleste elementer. </item>
diff --git a/java/com/android/contacts/common/res/values-ne/strings.xml b/java/com/android/contacts/common/res/values-ne/strings.xml
index 1f54232..0034852 100644
--- a/java/com/android/contacts/common/res/values-ne/strings.xml
+++ b/java/com/android/contacts/common/res/values-ne/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"टाढा"</string>
     <string name="status_busy" msgid="5990832098713248503">"व्यस्त"</string>
     <string name="contactsList" msgid="8806067891419291513">"सम्पर्क"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"सबैभन्दा धेरै सुझाव दिइएको"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"अन्य"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"निर्देशिका"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"कार्यको निर्देशिका"</string>
     <string name="local_search_label" msgid="907622822323119235">"सबै सम्पर्कहरू"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"सुझावहरू"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"म"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"खोजी गर्दै..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>भन्दा बढी पाइयो।"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"यस कलसँग पठाउन एक टिप्पणी  टाइप गर्नुहोस्"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"पठाउनुहोस् र कल गर्नुहोस्"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ट्याब।"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ट्याब। <xliff:g id="COUNT_3">%2$d</xliff:g> नपढिएका वस्तुहरू। </item>
diff --git a/java/com/android/contacts/common/res/values-nl/strings.xml b/java/com/android/contacts/common/res/values-nl/strings.xml
index 9d41899..e8f1b15 100644
--- a/java/com/android/contacts/common/res/values-nl/strings.xml
+++ b/java/com/android/contacts/common/res/values-nl/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Niet beschikbaar"</string>
     <string name="status_busy" msgid="5990832098713248503">"Bezet"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contacten"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Populaire suggesties"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Overig"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Directory"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Zakelijke contactenlijst"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle contacten"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Suggesties"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ik"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Zoeken..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Meer dan <xliff:g id="COUNT">%d</xliff:g> gevonden."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Typ een notitie om te verzenden met de oproep..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"VERZENDEN EN BELLEN"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tabblad <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Tabblad <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> ongelezen items. </item>
diff --git a/java/com/android/contacts/common/res/values-no/strings.xml b/java/com/android/contacts/common/res/values-no/strings.xml
index 7085cb3..8162ee7 100644
--- a/java/com/android/contacts/common/res/values-no/strings.xml
+++ b/java/com/android/contacts/common/res/values-no/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Borte"</string>
     <string name="status_busy" msgid="5990832098713248503">"Opptatt"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakter"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Toppforslag"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Annen"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalog"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Jobbkatalog"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alle kontakter"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Forslag"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Meg"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Søker …"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Fant mer enn <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Skriv et notat du vil sende med anropet …"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SEND OG RING"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>-fanen."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>-fanen. <xliff:g id="COUNT_3">%2$d</xliff:g> uleste elementer. </item>
diff --git a/java/com/android/contacts/common/res/values-pa/strings.xml b/java/com/android/contacts/common/res/values-pa/strings.xml
index c96510c..8a1a134 100644
--- a/java/com/android/contacts/common/res/values-pa/strings.xml
+++ b/java/com/android/contacts/common/res/values-pa/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ਦੂਰ"</string>
     <string name="status_busy" msgid="5990832098713248503">"ਰੁੱਝਾ ਹੋਇਆ ਹੈ"</string>
     <string name="contactsList" msgid="8806067891419291513">"ਸੰਪਰਕ"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ਪ੍ਰਮੁੱਖ ਸੁਝਾਏ ਗਏ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ਹੋਰ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ਡਾਇਰੈਕਟਰੀ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ਕੰਮ ਡਾਇਰੈਕਟਰੀ"</string>
     <string name="local_search_label" msgid="907622822323119235">"ਸਾਰੇ ਸੰਪਰਕ"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"ਸੁਝਾਅ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ਮੈਂ"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"ਖੋਜ ਰਿਹਾ ਹੈ..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ਤੋਂ ਵੱਧ ਮਿਲੇ।"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ਕਾਲ ਦੇ ਨਾਲ ਭੇਜਣ ਲਈ ਕੋਈ ਨੋਟ ਟਾਈਪ ਕਰੋ ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ਭੇਜੋ ਅਤੇ ਕਾਲ ਕਰੋ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ਟੈਬ।"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> ਟੈਬ। <xliff:g id="COUNT_3">%2$d</xliff:g> ਅਣ-ਪੜ੍ਹੀਆਂ ਆਈਟਮਾਂ। </item>
diff --git a/java/com/android/contacts/common/res/values-pl/strings.xml b/java/com/android/contacts/common/res/values-pl/strings.xml
index c4e65f5..37d5b62 100644
--- a/java/com/android/contacts/common/res/values-pl/strings.xml
+++ b/java/com/android/contacts/common/res/values-pl/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Nieobecny"</string>
     <string name="status_busy" msgid="5990832098713248503">"Zajęty"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakty"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najlepsze sugestie"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Inny"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalog"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Katalog służbowy"</string>
     <string name="local_search_label" msgid="907622822323119235">"Wszystkie kontakty"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugestie"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ja"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Wyszukiwanie..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Znaleziono więcej niż <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Wpisz notatkę, którą chcesz wysłać razem z połączeniem..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"WYŚLIJ I ZADZWOŃ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Karta <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="few"> Karta <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> nieprzeczytane elementy. </item>
diff --git a/java/com/android/contacts/common/res/values-pt-rBR/strings.xml b/java/com/android/contacts/common/res/values-pt-rBR/strings.xml
index ee2b87c..5083c4a 100644
--- a/java/com/android/contacts/common/res/values-pt-rBR/strings.xml
+++ b/java/com/android/contacts/common/res/values-pt-rBR/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contatos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Principais sugestões"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Outros"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Diretório"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Diretório de trabalho"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos os contatos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugestões"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Eu"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Pesquisando..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Mais de <xliff:g id="COUNT">%d</xliff:g> encontrados."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escreva uma nota para enviar com a chamada..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR E LIGAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Guia \"<xliff:g id="TITLE">%1$s</xliff:g>\"."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one">Guia \"<xliff:g id="TITLE_2">%1$s</xliff:g>\". <xliff:g id="COUNT_3">%2$d</xliff:g> item não lido. </item>
diff --git a/java/com/android/contacts/common/res/values-pt-rPT/strings.xml b/java/com/android/contacts/common/res/values-pt-rPT/strings.xml
index 44bba14..298b7a2 100644
--- a/java/com/android/contacts/common/res/values-pt-rPT/strings.xml
+++ b/java/com/android/contacts/common/res/values-pt-rPT/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado(a)"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contactos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Principais sugestões"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Outro"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Diretório"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Diretório de trabalho"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos os contactos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugestões"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Eu"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"A pesquisar..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Foram encontrados mais de <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escrever uma nota para enviar com a chamada..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR E LIGAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Separador <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> tab. <xliff:g id="COUNT_3">%2$d</xliff:g> unread items. </item>
diff --git a/java/com/android/contacts/common/res/values-pt/strings.xml b/java/com/android/contacts/common/res/values-pt/strings.xml
index ee2b87c..5083c4a 100644
--- a/java/com/android/contacts/common/res/values-pt/strings.xml
+++ b/java/com/android/contacts/common/res/values-pt/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ausente"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupado"</string>
     <string name="contactsList" msgid="8806067891419291513">"Contatos"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Principais sugestões"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Outros"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Diretório"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Diretório de trabalho"</string>
     <string name="local_search_label" msgid="907622822323119235">"Todos os contatos"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugestões"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Eu"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Pesquisando..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Mais de <xliff:g id="COUNT">%d</xliff:g> encontrados."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Escreva uma nota para enviar com a chamada..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ENVIAR E LIGAR"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Guia \"<xliff:g id="TITLE">%1$s</xliff:g>\"."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one">Guia \"<xliff:g id="TITLE_2">%1$s</xliff:g>\". <xliff:g id="COUNT_3">%2$d</xliff:g> item não lido. </item>
diff --git a/java/com/android/contacts/common/res/values-ro/strings.xml b/java/com/android/contacts/common/res/values-ro/strings.xml
index 358e7af..2fd5e5b 100644
--- a/java/com/android/contacts/common/res/values-ro/strings.xml
+++ b/java/com/android/contacts/common/res/values-ro/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Plecat(ă)"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ocupat(ă)"</string>
     <string name="contactsList" msgid="8806067891419291513">"Agendă"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Cele mai populare sugestii"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Altul"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Director"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directorul de serviciu"</string>
     <string name="local_search_label" msgid="907622822323119235">"Toată agenda"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugestii"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Eu"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Se caută…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"S-au găsit peste <xliff:g id="COUNT">%d</xliff:g> persoane de contact."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Introduceți o notă ca să o trimiteți împreună cu apelul..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"TRIMITEȚI ȘI APELAȚI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Fila <xliff:g id="TITLE">%1$s</xliff:g>"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="few"> Fila <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> elemente necitite. </item>
diff --git a/java/com/android/contacts/common/res/values-ru/strings.xml b/java/com/android/contacts/common/res/values-ru/strings.xml
index 3442f2c..530732e 100644
--- a/java/com/android/contacts/common/res/values-ru/strings.xml
+++ b/java/com/android/contacts/common/res/values-ru/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Отсутствует"</string>
     <string name="status_busy" msgid="5990832098713248503">"Не беспокоить"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контакты"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Топ рекомендуемых"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Другое"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Каталог"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Каталог контактов из рабочего профиля"</string>
     <string name="local_search_label" msgid="907622822323119235">"Все контакты"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Рекомендуемые"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Вы"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Поиск…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Найдено контактов: более <xliff:g id="COUNT">%d</xliff:g>"</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Введите текст…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ОТПРАВИТЬ И ПОЗВОНИТЬ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Вкладка \"<xliff:g id="TITLE">%1$s</xliff:g>\"."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one">Вкладка <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> непрочитанный элемент. </item>
diff --git a/java/com/android/contacts/common/res/values-si/strings.xml b/java/com/android/contacts/common/res/values-si/strings.xml
index 72ca32d..1bd9063 100644
--- a/java/com/android/contacts/common/res/values-si/strings.xml
+++ b/java/com/android/contacts/common/res/values-si/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ළඟ නැත"</string>
     <string name="status_busy" msgid="5990832098713248503">"කාර්යබහුල"</string>
     <string name="contactsList" msgid="8806067891419291513">"සම්බන්ධතා"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ඉහළින්ම යෝජිත"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"වෙනත්"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"නාමාවලිය"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"කාර්යාල සම්බන්ධතා නාමාවලිය"</string>
     <string name="local_search_label" msgid="907622822323119235">"සියලුම සම්බන්ධතා"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"යෝජනා"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"මම"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"සොයමින්..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> ට වඩා සොයාගන්නා ලදී."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"ඇමතුම සමග යැවීමට සටහනක් ටයිප් කරන්න ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"යවන්න සහ අමතන්න"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ටැබය."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> <xliff:g id="TITLE_2">%1$s</xliff:g> ටැබය. නොකියවූ අයිතම <xliff:g id="COUNT_3">%2$d</xliff:g>. </item>
diff --git a/java/com/android/contacts/common/res/values-sk/strings.xml b/java/com/android/contacts/common/res/values-sk/strings.xml
index b85f63f..59d666e 100644
--- a/java/com/android/contacts/common/res/values-sk/strings.xml
+++ b/java/com/android/contacts/common/res/values-sk/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Som preč"</string>
     <string name="status_busy" msgid="5990832098713248503">"Nemám čas"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakty"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najviac odporúčané"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Iné"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Adresár"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Pracovný adresár"</string>
     <string name="local_search_label" msgid="907622822323119235">"Všetky kontakty"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Návrhy"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ja"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Hľadá sa…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Našlo sa viac ako <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Napíšte poznámku, ktorá sa odošle s hovorom..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ODOSLAŤ A VOLAŤ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Karta <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="few"> Karta <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> neprečítané položky. </item>
diff --git a/java/com/android/contacts/common/res/values-sl/strings.xml b/java/com/android/contacts/common/res/values-sl/strings.xml
index f4c39de..dc6e690 100644
--- a/java/com/android/contacts/common/res/values-sl/strings.xml
+++ b/java/com/android/contacts/common/res/values-sl/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Odsoten"</string>
     <string name="status_busy" msgid="5990832098713248503">"Zaseden"</string>
     <string name="contactsList" msgid="8806067891419291513">"Stiki"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Najboljši predlogi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Drugo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Imenik"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Delovni imenik"</string>
     <string name="local_search_label" msgid="907622822323119235">"Vsi stiki"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Predlogi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Jaz"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Iskanje ..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Najdenih je bilo več kot toliko stikov: <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Vnesite zapisek, ki ga želite poslati s klicem ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"POŠLJI IN KLIČI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g>: <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Zavihek »<xliff:g id="TITLE">%1$s</xliff:g>«."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Zavihek »<xliff:g id="TITLE_2">%1$s</xliff:g>«. <xliff:g id="COUNT_3">%2$d</xliff:g> neprebran element. </item>
diff --git a/java/com/android/contacts/common/res/values-sq/strings.xml b/java/com/android/contacts/common/res/values-sq/strings.xml
index 553c46d..64b4388 100644
--- a/java/com/android/contacts/common/res/values-sq/strings.xml
+++ b/java/com/android/contacts/common/res/values-sq/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"I larguar"</string>
     <string name="status_busy" msgid="5990832098713248503">"I zënë"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktet"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Sugjerimet kryesore"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Tjetër"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktoria"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Direktoria e punës"</string>
     <string name="local_search_label" msgid="907622822323119235">"Të gjitha kontaktet"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Sugjerimet"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Unë"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Po kërkon..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"U gjetën më shumë se <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Shkruaj një shënim për të dërguar një telefonatë..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"DËRGO DHE TELEFONO"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Skeda <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Skeda <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> artikuj të palexuar. </item>
diff --git a/java/com/android/contacts/common/res/values-sr/strings.xml b/java/com/android/contacts/common/res/values-sr/strings.xml
index 99997e6..e139662 100644
--- a/java/com/android/contacts/common/res/values-sr/strings.xml
+++ b/java/com/android/contacts/common/res/values-sr/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Одсутан/на"</string>
     <string name="status_busy" msgid="5990832098713248503">"Заузет/а"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контакти"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Најпопуларнији предлози"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Другo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Директоријум"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Директоријум за Work"</string>
     <string name="local_search_label" msgid="907622822323119235">"Сви контакти"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Предлози"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ја"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Претражује се…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Пронађено је више од <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -249,7 +251,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Унесите белешку коју ћете послати уз позив..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ПОШАЉИ И ПОЗОВИ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Картица <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Картица <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> непрочитана ставка. </item>
diff --git a/java/com/android/contacts/common/res/values-sv/strings.xml b/java/com/android/contacts/common/res/values-sv/strings.xml
index 79e56e5..cd09517 100644
--- a/java/com/android/contacts/common/res/values-sv/strings.xml
+++ b/java/com/android/contacts/common/res/values-sv/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Borta"</string>
     <string name="status_busy" msgid="5990832098713248503">"Upptagen"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontakter"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Bästa förslagen"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Övrigt"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Katalog"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Jobbkatalog"</string>
     <string name="local_search_label" msgid="907622822323119235">"Alla kontakter"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Förslag"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Jag"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Söker…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Fler än <xliff:g id="COUNT">%d</xliff:g> hittades."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Gör en anteckning som skickas när du ringer …"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"SKICKA OCH RING"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Fliken <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">Fliken <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> olästa poster. </item>
diff --git a/java/com/android/contacts/common/res/values-sw/strings.xml b/java/com/android/contacts/common/res/values-sw/strings.xml
index 4d30271..5c41d87 100644
--- a/java/com/android/contacts/common/res/values-sw/strings.xml
+++ b/java/com/android/contacts/common/res/values-sw/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Mbali"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ana shughuli"</string>
     <string name="contactsList" msgid="8806067891419291513">"Anwani"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Mapendekezo Maarufu"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Nyingineyo"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Saraka"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Anwani za kazi"</string>
     <string name="local_search_label" msgid="907622822323119235">"Anwani zote"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Mapendekezo"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Mimi"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Inatafuta…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Zaidi ya <xliff:g id="COUNT">%d</xliff:g> zimepatikana."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Andika dokezo litakaloambatana na simu utakayopiga ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"TUMA na UPIGE SIMU"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Kichupo cha <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Kichupo cha <xliff:g id="TITLE_2">%1$s</xliff:g>. Vipengee <xliff:g id="COUNT_3">%2$d</xliff:g> havijasomwa. </item>
diff --git a/java/com/android/contacts/common/res/values-ta/strings.xml b/java/com/android/contacts/common/res/values-ta/strings.xml
index e041a99..df7ee06 100644
--- a/java/com/android/contacts/common/res/values-ta/strings.xml
+++ b/java/com/android/contacts/common/res/values-ta/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"வெளியே"</string>
     <string name="status_busy" msgid="5990832098713248503">"பணிமிகுதி"</string>
     <string name="contactsList" msgid="8806067891419291513">"தொடர்புகள்"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"அதிகம் பரிந்துரைத்தவை"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"மற்றவை"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"கோப்பகம்"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"பணிக் கோப்பகம்"</string>
     <string name="local_search_label" msgid="907622822323119235">"எல்லா தொடர்புகளும்"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"பரிந்துரைகள்"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"எனக்கு"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"தேடுகிறது..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> க்கும் மேற்பட்டவை கண்டறியப்பட்டன."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"அழைப்புடன் சேர்த்து அனுப்ப, குறிப்பை உள்ளிடவும்..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"அனுப்பி அழை"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> தாவல்."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> தாவல். படிக்காதவை (<xliff:g id="COUNT_3">%2$d</xliff:g>). </item>
diff --git a/java/com/android/contacts/common/res/values-te/strings.xml b/java/com/android/contacts/common/res/values-te/strings.xml
index 6dd0e21..c97cded 100644
--- a/java/com/android/contacts/common/res/values-te/strings.xml
+++ b/java/com/android/contacts/common/res/values-te/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"దూరంగా ఉన్నారు"</string>
     <string name="status_busy" msgid="5990832098713248503">"బిజీగా ఉన్నారు"</string>
     <string name="contactsList" msgid="8806067891419291513">"పరిచయాలు"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"ఉత్తమ సూచనలు"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"ఇతరం"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"డైరెక్టరీ"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"కార్యాలయ డైరెక్టరీ"</string>
     <string name="local_search_label" msgid="907622822323119235">"అన్ని పరిచయాలు"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"సూచనలు"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"నేను"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"శోధిస్తోంది..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> కంటే ఎక్కువ కనుగొనబడ్డాయి."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"కాల్‌తో పాటు పంపడానికి గమనికను టైప్ చేయండి ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"పంపు &amp; కాల్ చేయి"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ట్యాబ్."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ట్యాబ్. <xliff:g id="COUNT_3">%2$d</xliff:g> చదవని అంశాలు. </item>
diff --git a/java/com/android/contacts/common/res/values-th/strings.xml b/java/com/android/contacts/common/res/values-th/strings.xml
index b979e74..aff4a9c 100644
--- a/java/com/android/contacts/common/res/values-th/strings.xml
+++ b/java/com/android/contacts/common/res/values-th/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"ไม่อยู่"</string>
     <string name="status_busy" msgid="5990832098713248503">"ไม่ว่าง"</string>
     <string name="contactsList" msgid="8806067891419291513">"รายชื่อติดต่อ"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"รายการแนะนำยอดนิยม"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"อื่นๆ"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ไดเรกทอรี"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"ไดเรกทอรีที่ทำงาน"</string>
     <string name="local_search_label" msgid="907622822323119235">"รายชื่อติดต่อทั้งหมด"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"รายการแนะนำ"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"ฉัน"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"กำลังค้นหา…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"พบมากกว่า <xliff:g id="COUNT">%d</xliff:g> รายการ"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"พิมพ์โน้ตเพื่อส่งพร้อมการโทร ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ส่งและโทร"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"แท็บ <xliff:g id="TITLE">%1$s</xliff:g>"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> แท็บ <xliff:g id="TITLE_2">%1$s</xliff:g> ยังไม่อ่าน <xliff:g id="COUNT_3">%2$d</xliff:g> รายการ </item>
diff --git a/java/com/android/contacts/common/res/values-tl/strings.xml b/java/com/android/contacts/common/res/values-tl/strings.xml
index 62caef8..edf2caf 100644
--- a/java/com/android/contacts/common/res/values-tl/strings.xml
+++ b/java/com/android/contacts/common/res/values-tl/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Wala"</string>
     <string name="status_busy" msgid="5990832098713248503">"Abala"</string>
     <string name="contactsList" msgid="8806067891419291513">"Mga Contact"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Mga Madalas Imungkahi"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Iba pa"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktoryo"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Directory sa trabaho"</string>
     <string name="local_search_label" msgid="907622822323119235">"Lahat ng mga contact"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Mga Mungkahi"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ako"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Naghahanap…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Higit sa <xliff:g id="COUNT">%d</xliff:g> ang nakita."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Mag-type ng isang tala na ipadadala kasama ng tawag ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"IPADALA AT TAWAGAN"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tab ng <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Tab ng <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> hindi pa nababasang item. </item>
diff --git a/java/com/android/contacts/common/res/values-tr/strings.xml b/java/com/android/contacts/common/res/values-tr/strings.xml
index ce3c109..9ec983f 100644
--- a/java/com/android/contacts/common/res/values-tr/strings.xml
+++ b/java/com/android/contacts/common/res/values-tr/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Dışarıda"</string>
     <string name="status_busy" msgid="5990832098713248503">"Meşgul"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kişiler"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"En Çok Önerilenler"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Diğer"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Dizin"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"İş dizini"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tüm kişiler"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Öneriler"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Ben"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Aranıyor..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> kişiden fazla bulundu."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Çağrıyla göndermek için bir not yazın..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"GÖNDER VE ARA"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> sekmesi."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> sekmesi. <xliff:g id="COUNT_3">%2$d</xliff:g> okunmamış öğe. </item>
diff --git a/java/com/android/contacts/common/res/values-uk/strings.xml b/java/com/android/contacts/common/res/values-uk/strings.xml
index f6d1e47..6d5d4eb 100644
--- a/java/com/android/contacts/common/res/values-uk/strings.xml
+++ b/java/com/android/contacts/common/res/values-uk/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Не на місці"</string>
     <string name="status_busy" msgid="5990832098713248503">"Не турбувати"</string>
     <string name="contactsList" msgid="8806067891419291513">"Контакти"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Найкращі пропозиції"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Інші"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Каталог"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Робочі контакти"</string>
     <string name="local_search_label" msgid="907622822323119235">"Усі контакти"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Пропозиції"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Я"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Пошук…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Знайдено понад <xliff:g id="COUNT">%d</xliff:g>."</string>
@@ -250,7 +252,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Введіть нотатку, яку хочете надіслати під час дзвінка…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"ЗАТЕЛЕФОНУВАТИ Й НАДІСЛАТИ"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> з <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Вкладка \"<xliff:g id="TITLE">%1$s</xliff:g>\"."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"> Вкладка \"<xliff:g id="TITLE_2">%1$s</xliff:g>\". <xliff:g id="COUNT_3">%2$d</xliff:g> непрочитаний елемент. </item>
diff --git a/java/com/android/contacts/common/res/values-ur/strings.xml b/java/com/android/contacts/common/res/values-ur/strings.xml
index b34c78d..79cf833 100644
--- a/java/com/android/contacts/common/res/values-ur/strings.xml
+++ b/java/com/android/contacts/common/res/values-ur/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"دور"</string>
     <string name="status_busy" msgid="5990832098713248503">"مصروف"</string>
     <string name="contactsList" msgid="8806067891419291513">"رابطے"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"سرفہرست تجویز کردہ"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"دیگر"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"ڈائریکٹری"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"دفتری ڈائرکٹری"</string>
     <string name="local_search_label" msgid="907622822323119235">"سبھی رابطے"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"تجاویز"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"میں"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"تلاش کر رہا ہے…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g> سے زیادہ ملے۔"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"کال کے ساتھ بھیجنے کیلئے ایک نوٹ ٹائپ کریں…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"بھیجیں اور کال کریں"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ٹیب۔"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ٹیب۔ <xliff:g id="COUNT_3">%2$d</xliff:g> بغیر پڑھی ہوئی آئٹمز۔ </item>
diff --git a/java/com/android/contacts/common/res/values-uz/strings.xml b/java/com/android/contacts/common/res/values-uz/strings.xml
index 44bfd99..489846f 100644
--- a/java/com/android/contacts/common/res/values-uz/strings.xml
+++ b/java/com/android/contacts/common/res/values-uz/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Tashqarida"</string>
     <string name="status_busy" msgid="5990832098713248503">"Band"</string>
     <string name="contactsList" msgid="8806067891419291513">"Kontaktlar"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Eng faol"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Boshqa"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Direktoriya"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Ishchi katalogi"</string>
     <string name="local_search_label" msgid="907622822323119235">"Barcha kontaktlar"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Takliflar"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Men"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Qidirilmoqda…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"<xliff:g id="COUNT">%d</xliff:g>dan ko‘proq topildi."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Qo‘ng‘iroqqa qo‘shib yuborish uchun izoh yozing ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"YUBORISH va QO‘NG‘IROQ QILISH"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ichki oynasi."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g> ichki oynasi. <xliff:g id="COUNT_3">%2$d</xliff:g> ta o‘qilmagan narsa. </item>
diff --git a/java/com/android/contacts/common/res/values-vi/strings.xml b/java/com/android/contacts/common/res/values-vi/strings.xml
index dadb78a..65a1c65 100644
--- a/java/com/android/contacts/common/res/values-vi/strings.xml
+++ b/java/com/android/contacts/common/res/values-vi/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Đã ra ngoài"</string>
     <string name="status_busy" msgid="5990832098713248503">"Bận"</string>
     <string name="contactsList" msgid="8806067891419291513">"Danh bạ"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Đề xuất hàng đầu"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Khác"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Thư mục"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Thư mục công việc"</string>
     <string name="local_search_label" msgid="907622822323119235">"Tất cả liên hệ"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Đề xuất"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Tôi"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Đang tìm kiếm…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Đã tìm thấy hơn <xliff:g id="COUNT">%d</xliff:g> người liên hệ."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Nhập ghi chú để gửi kèm cuộc gọi..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"GỬI và GỌI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"Tab <xliff:g id="TITLE">%1$s</xliff:g>."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> Tab <xliff:g id="TITLE_2">%1$s</xliff:g>. <xliff:g id="COUNT_3">%2$d</xliff:g> mục chưa đọc. </item>
diff --git a/java/com/android/contacts/common/res/values-zh-rCN/strings.xml b/java/com/android/contacts/common/res/values-zh-rCN/strings.xml
index 161638e..ee44513 100644
--- a/java/com/android/contacts/common/res/values-zh-rCN/strings.xml
+++ b/java/com/android/contacts/common/res/values-zh-rCN/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"离开"</string>
     <string name="status_busy" msgid="5990832098713248503">"忙碌"</string>
     <string name="contactsList" msgid="8806067891419291513">"通讯录"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"常用联系人推荐"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"其他"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"目录"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"工作目录"</string>
     <string name="local_search_label" msgid="907622822323119235">"所有联系人"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"建议"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"我"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"正在搜索..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"找到超过 <xliff:g id="COUNT">%d</xliff:g> 位联系人。"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"输入要在拨打电话时发送的备注…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"发送并拨打电话"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g>：<xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>标签。"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>标签。<xliff:g id="COUNT_3">%2$d</xliff:g> 项未读内容。</item>
diff --git a/java/com/android/contacts/common/res/values-zh-rHK/strings.xml b/java/com/android/contacts/common/res/values-zh-rHK/strings.xml
index 9952ab6..122d0fe 100644
--- a/java/com/android/contacts/common/res/values-zh-rHK/strings.xml
+++ b/java/com/android/contacts/common/res/values-zh-rHK/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"離開"</string>
     <string name="status_busy" msgid="5990832098713248503">"忙碌"</string>
     <string name="contactsList" msgid="8806067891419291513">"通訊錄"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"熱門建議"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"其他"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"名錄"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"工作目錄"</string>
     <string name="local_search_label" msgid="907622822323119235">"所有聯絡人"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"建議"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"我"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"正在搜尋..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"找到超過 <xliff:g id="COUNT">%d</xliff:g> 位聯絡人。"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"撥號時可以書寫和傳送筆記…"</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"傳送和撥號"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"「<xliff:g id="TITLE">%1$s</xliff:g>」標籤。"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other">「<xliff:g id="TITLE_2">%1$s</xliff:g>」標籤 (<xliff:g id="COUNT_3">%2$d</xliff:g> 個未讀取項目)。</item>
diff --git a/java/com/android/contacts/common/res/values-zh-rTW/strings.xml b/java/com/android/contacts/common/res/values-zh-rTW/strings.xml
index e5ad61f..64b6105 100644
--- a/java/com/android/contacts/common/res/values-zh-rTW/strings.xml
+++ b/java/com/android/contacts/common/res/values-zh-rTW/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"離開"</string>
     <string name="status_busy" msgid="5990832098713248503">"忙碌"</string>
     <string name="contactsList" msgid="8806067891419291513">"聯絡人"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"常用聯絡人建議"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"其他"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"目錄"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Work 聯絡人目錄"</string>
     <string name="local_search_label" msgid="907622822323119235">"所有聯絡人"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"建議"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"我"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"搜尋中…"</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"找到 <xliff:g id="COUNT">%d</xliff:g> 位以上的聯絡人。"</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"輸入可在撥號時傳送的備註..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"傳送並撥打"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g>/<xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g>分頁。"</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="other"> <xliff:g id="TITLE_2">%1$s</xliff:g>分頁。<xliff:g id="COUNT_3">%2$d</xliff:g> 個未讀項目。</item>
diff --git a/java/com/android/contacts/common/res/values-zu/strings.xml b/java/com/android/contacts/common/res/values-zu/strings.xml
index adca139..e78a6b3 100644
--- a/java/com/android/contacts/common/res/values-zu/strings.xml
+++ b/java/com/android/contacts/common/res/values-zu/strings.xml
@@ -70,10 +70,12 @@
     <string name="status_away" msgid="2298688367552893953">"Ngiphumile"</string>
     <string name="status_busy" msgid="5990832098713248503">"Ngimatasa"</string>
     <string name="contactsList" msgid="8806067891419291513">"Othi tana nabo"</string>
+    <string name="contact_suggestions" msgid="3324166754807120006">"Okuphezulu okuphakanyisiwe"</string>
     <string name="local_invisible_directory" msgid="4723238462733650090">"Okunye"</string>
     <string name="directory_search_label" msgid="4621215895484025229">"Uhla lwemibhalo"</string>
     <string name="directory_search_label_work" msgid="7679326282707414897">"Uhla lwemibhalo lomsebenzi"</string>
     <string name="local_search_label" msgid="907622822323119235">"Bonke othintana nabo"</string>
+    <string name="local_suggestions_search_label" msgid="1178575146224386118">"Iziphakamiso"</string>
     <string name="user_profile_contacts_list_header" msgid="9180620153828279580">"Mina"</string>
     <string name="search_results_searching" msgid="3710866752172327451">"Iyasesha..."</string>
     <string name="foundTooManyContacts" msgid="3685002426663730799">"Abangaphezu kuka-<xliff:g id="COUNT">%d</xliff:g> abatholakele."</string>
@@ -248,7 +250,7 @@
     <string name="call_subject_hint" msgid="7233138753650420800">"Thayipha inothi ukuthumela nekholi ..."</string>
     <string name="send_and_call_button" msgid="4735168294120154013">"THUMELA FUTHI YENZA IKHOLI"</string>
     <string name="call_subject_limit" msgid="8273208736191593939">"<xliff:g id="COUNT">%1$s</xliff:g> / <xliff:g id="LIMIT">%2$s</xliff:g>"</string>
-    <string name="call_subject_type_and_number" msgid="8726132674272173486">"<xliff:g id="TYPE">%1$s</xliff:g> • <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
+    <string name="call_subject_type_and_number" msgid="6338030032554019678">"<xliff:g id="TYPE">%1$s</xliff:g> <xliff:g id="NUMBER">%2$s</xliff:g>"</string>
     <string name="tab_title" msgid="3387876802026074288">"<xliff:g id="TITLE">%1$s</xliff:g> ithebhu."</string>
     <plurals name="tab_title_with_unread_items" formatted="false" msgid="8548492980702182785">
       <item quantity="one"><xliff:g id="TITLE_2">%1$s</xliff:g> ithebhu. <xliff:g id="COUNT_3">%2$d</xliff:g> izinto ezingafundiwe. </item>
diff --git a/java/com/android/contacts/common/res/values/dimens.xml b/java/com/android/contacts/common/res/values/dimens.xml
index 642eb31..26f095f 100644
--- a/java/com/android/contacts/common/res/values/dimens.xml
+++ b/java/com/android/contacts/common/res/values/dimens.xml
@@ -107,7 +107,7 @@
   <dimen name="tab_selected_underline_height">2dp</dimen>
   <!-- Size of text in tabs. -->
   <dimen name="tab_text_size">14sp</dimen>
-  <dimen name="tab_elevation">2dp</dimen>
+  <dimen name="tab_elevation">0dp</dimen>
   <dimen name="tab_unread_count_background_size">16dp</dimen>
   <dimen name="tab_unread_count_background_radius">2dp</dimen>
   <dimen name="tab_unread_count_margin_left">0dp</dimen>
diff --git a/java/com/android/contacts/common/res/values/ids.xml b/java/com/android/contacts/common/res/values/ids.xml
index 871f5a6..65969c4 100644
--- a/java/com/android/contacts/common/res/values/ids.xml
+++ b/java/com/android/contacts/common/res/values/ids.xml
@@ -27,4 +27,5 @@
 
   <item name="contact_tile_image" type="id"/>
   <item name="contact_tile_name" type="id"/>
+  <item name="call_to_action" type="id"/>
 </resources>
diff --git a/java/com/android/contacts/common/res/values/strings.xml b/java/com/android/contacts/common/res/values/strings.xml
index 9ac9fef..85866f7 100644
--- a/java/com/android/contacts/common/res/values/strings.xml
+++ b/java/com/android/contacts/common/res/values/strings.xml
@@ -143,6 +143,9 @@
   <!-- Directory partition name (also exists in contacts) -->
   <string name="contactsList">Contacts</string>
 
+  <!-- Directory partition name for p13n suggestions -->
+  <string name="contact_suggestions">Top Suggested</string>
+
   <!-- The name of the invisible local contact directory -->
   <string name="local_invisible_directory">Other</string>
 
@@ -155,6 +158,9 @@
   <!-- The label in section header in the contact list for a local contacts [CHAR LIMIT=128] -->
   <string name="local_search_label">All contacts</string>
 
+  <!-- The label in section header in the contact list for a local suggested contacts [CHAR LIMIT=128] -->
+  <string name="local_suggestions_search_label">Suggestions</string>
+
   <!-- String describing the text on the header of the profile contact in the contacts list
        This may be programatically capitalized. [CHAR LIMIT=20] -->
   <string msgid="9154761216179882405" name="user_profile_contacts_list_header">Me</string>
@@ -744,9 +750,9 @@
        compared to the character limit.  Example: 2 / 64 -->
   <string name="call_subject_limit"><xliff:g example="4" id="count">%1$s</xliff:g> / <xliff:g example="64" id="limit">%2$s</xliff:g></string>
 
-  <!-- String used to build a phone number bype and phone number string.
-       Example: Mobile • 650-555-1212  -->
-  <string name="call_subject_type_and_number"><xliff:g example="Mobile" id="type">%1$s</xliff:g> • <xliff:g example="(650) 555-1212" id="number">%2$s</xliff:g></string>
+  <!-- String used to build a phone number type and phone number string.
+       Example: Mobile 650-555-1212  -->
+  <string name="call_subject_type_and_number"><xliff:g example="Mobile" id="type">%1$s</xliff:g> <xliff:g example="(650) 555-1212" id="number">%2$s</xliff:g></string>
 
   <!-- String format to describe a tab e.g.call history tab. -->
   <string name="tab_title"><xliff:g id="title">%1$s</xliff:g> tab.</string>
diff --git a/java/com/android/contacts/common/res/values/styles.xml b/java/com/android/contacts/common/res/values/styles.xml
index 07d4a02..bb19afe 100644
--- a/java/com/android/contacts/common/res/values/styles.xml
+++ b/java/com/android/contacts/common/res/values/styles.xml
@@ -43,7 +43,6 @@
     <item name="android:layout_height">wrap_content</item>
     <!-- See comments for @dimen/list_section_divider_min_height -->
     <item name="android:minHeight">@dimen/list_section_divider_min_height</item>
-    <item name="android:background">@drawable/list_section_divider_holo_custom</item>
     <item name="android:textAppearance">@style/DirectoryHeaderStyle</item>
     <item name="android:gravity">center_vertical</item>
     <item name="android:paddingLeft">8dip</item>
diff --git a/java/com/android/contacts/common/util/AccountFilterUtil.java b/java/com/android/contacts/common/util/AccountFilterUtil.java
index 18743c6..25f937c 100644
--- a/java/com/android/contacts/common/util/AccountFilterUtil.java
+++ b/java/com/android/contacts/common/util/AccountFilterUtil.java
@@ -16,35 +16,15 @@
 
 package com.android.contacts.common.util;
 
-import android.app.Activity;
 import android.content.Context;
-import android.content.Intent;
-import android.util.Log;
 import android.view.View;
 import android.widget.TextView;
 import com.android.contacts.common.R;
 import com.android.contacts.common.list.ContactListFilter;
-import com.android.contacts.common.list.ContactListFilterController;
 
 /** Utility class for account filter manipulation. */
 public class AccountFilterUtil {
 
-  public static final String EXTRA_CONTACT_LIST_FILTER = "contactListFilter";
-  private static final String TAG = AccountFilterUtil.class.getSimpleName();
-
-  /**
-   * Find TextView with the id "account_filter_header" and set correct text for the account filter
-   * header.
-   *
-   * @param filterContainer View containing TextView with id "account_filter_header"
-   * @return true when header text is set in the call. You may use this for conditionally showing or
-   *     hiding this entire view.
-   */
-  public static boolean updateAccountFilterTitleForPeople(
-      View filterContainer, ContactListFilter filter, boolean showTitleForAllAccounts) {
-    return updateAccountFilterTitle(filterContainer, filter, showTitleForAllAccounts, false);
-  }
-
   /**
    * Similar to {@link #updateAccountFilterTitleForPeople(View, ContactListFilter, boolean,
    * boolean)}, but for Phone UI.
@@ -78,8 +58,6 @@
         } else if (filter.filterType == ContactListFilter.FILTER_TYPE_CUSTOM) {
           headerTextView.setText(R.string.listCustomView);
           textWasSet = true;
-        } else {
-          Log.w(TAG, "Filter type \"" + filter.filterType + "\" isn't expected.");
         }
       } else {
         if (filter.filterType == ContactListFilter.FILTER_TYPE_ALL_ACCOUNTS) {
@@ -97,29 +75,9 @@
         } else if (filter.filterType == ContactListFilter.FILTER_TYPE_SINGLE_CONTACT) {
           headerTextView.setText(R.string.listSingleContact);
           textWasSet = true;
-        } else {
-          Log.w(TAG, "Filter type \"" + filter.filterType + "\" isn't expected.");
         }
       }
-    } else {
-      Log.w(TAG, "Filter is null.");
     }
     return textWasSet;
   }
-
-  /** This will update filter via a given ContactListFilterController. */
-  public static void handleAccountFilterResult(
-      ContactListFilterController filterController, int resultCode, Intent data) {
-    if (resultCode == Activity.RESULT_OK) {
-      final ContactListFilter filter = data.getParcelableExtra(EXTRA_CONTACT_LIST_FILTER);
-      if (filter == null) {
-        return;
-      }
-      if (filter.filterType == ContactListFilter.FILTER_TYPE_CUSTOM) {
-        filterController.selectCustomFilter();
-      } else {
-        filterController.setContactListFilter(filter, true);
-      }
-    }
-  }
 }
diff --git a/java/com/android/contacts/common/util/BitmapUtil.java b/java/com/android/contacts/common/util/BitmapUtil.java
index 20f916a..51f65f2 100644
--- a/java/com/android/contacts/common/util/BitmapUtil.java
+++ b/java/com/android/contacts/common/util/BitmapUtil.java
@@ -24,8 +24,6 @@
 import android.graphics.PorterDuffXfermode;
 import android.graphics.Rect;
 import android.graphics.RectF;
-import android.graphics.drawable.BitmapDrawable;
-import android.graphics.drawable.Drawable;
 
 /** Provides static functions to decode bitmaps at the optimal size */
 public class BitmapUtil {
@@ -91,30 +89,6 @@
   }
 
   /**
-   * Retrieves a copy of the specified drawable resource, rotated by a specified angle.
-   *
-   * @param resources The current resources.
-   * @param resourceId The resource ID of the drawable to rotate.
-   * @param angle The angle of rotation.
-   * @return Rotated drawable.
-   */
-  public static Drawable getRotatedDrawable(
-      android.content.res.Resources resources, int resourceId, float angle) {
-
-    // Get the original drawable and make a copy which will be rotated.
-    Bitmap original = BitmapFactory.decodeResource(resources, resourceId);
-    Bitmap rotated =
-        Bitmap.createBitmap(original.getWidth(), original.getHeight(), Bitmap.Config.ARGB_8888);
-
-    // Perform the rotation.
-    Canvas tempCanvas = new Canvas(rotated);
-    tempCanvas.rotate(angle, original.getWidth() / 2, original.getHeight() / 2);
-    tempCanvas.drawBitmap(original, 0, 0, null);
-
-    return new BitmapDrawable(resources, rotated);
-  }
-
-  /**
    * Given an input bitmap, scales it to the given width/height and makes it round.
    *
    * @param input {@link Bitmap} to scale and crop
diff --git a/java/com/android/contacts/common/util/ContactDisplayUtils.java b/java/com/android/contacts/common/util/ContactDisplayUtils.java
index 1586784..ff22f28 100644
--- a/java/com/android/contacts/common/util/ContactDisplayUtils.java
+++ b/java/com/android/contacts/common/util/ContactDisplayUtils.java
@@ -16,21 +16,20 @@
 
 package com.android.contacts.common.util;
 
-import static android.provider.ContactsContract.CommonDataKinds.Phone;
-
 import android.content.Context;
 import android.content.res.Resources;
+import android.provider.ContactsContract.CommonDataKinds.Phone;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.text.Spannable;
 import android.text.SpannableString;
 import android.text.TextUtils;
 import android.text.style.TtsSpan;
-import android.util.Log;
 import android.util.Patterns;
 import com.android.contacts.common.R;
 import com.android.contacts.common.compat.PhoneNumberUtilsCompat;
 import com.android.contacts.common.preference.ContactsPreferences;
+import com.android.dialer.common.LogUtil;
 import java.util.Objects;
 
 /** Methods for handling various contact data labels. */
@@ -38,7 +37,6 @@
 
   public static final int INTERACTION_CALL = 1;
   public static final int INTERACTION_SMS = 2;
-  private static final String TAG = ContactDisplayUtils.class.getSimpleName();
 
   /**
    * Checks if the given data type is a custom type.
@@ -74,9 +72,9 @@
       } else {
         resId = getPhoneLabelResourceId(type);
         if (interactionType != INTERACTION_CALL) {
-          Log.e(
-              TAG,
-              "Un-recognized interaction type: "
+          LogUtil.e(
+              "ContactDisplayUtils.getLabelForCallOrSms",
+              "un-recognized interaction type: "
                   + interactionType
                   + ". Defaulting to ContactDisplayUtils.INTERACTION_CALL.");
         }
diff --git a/java/com/android/contacts/common/util/DateUtils.java b/java/com/android/contacts/common/util/DateUtils.java
index 1935d72..09d52bc 100644
--- a/java/com/android/contacts/common/util/DateUtils.java
+++ b/java/com/android/contacts/common/util/DateUtils.java
@@ -16,252 +16,11 @@
 
 package com.android.contacts.common.util;
 
-import android.content.Context;
-import android.text.format.DateFormat;
 import android.text.format.Time;
-import java.text.ParsePosition;
-import java.text.SimpleDateFormat;
-import java.util.Calendar;
-import java.util.Date;
-import java.util.GregorianCalendar;
-import java.util.Locale;
-import java.util.TimeZone;
 
 /** Utility methods for processing dates. */
 public class DateUtils {
 
-  public static final TimeZone UTC_TIMEZONE = TimeZone.getTimeZone("UTC");
-
-  /**
-   * When parsing a date without a year, the system assumes 1970, which wasn't a leap-year. Let's
-   * add a one-off hack for that day of the year
-   */
-  public static final String NO_YEAR_DATE_FEB29TH = "--02-29";
-
-  // Variations of ISO 8601 date format.  Do not change the order - it does affect the
-  // result in ambiguous cases.
-  private static final SimpleDateFormat[] DATE_FORMATS = {
-    CommonDateUtils.FULL_DATE_FORMAT,
-    CommonDateUtils.DATE_AND_TIME_FORMAT,
-    new SimpleDateFormat("yyyy-MM-dd'T'HH:mm'Z'", Locale.US),
-    new SimpleDateFormat("yyyyMMdd", Locale.US),
-    new SimpleDateFormat("yyyyMMdd'T'HHmmssSSS'Z'", Locale.US),
-    new SimpleDateFormat("yyyyMMdd'T'HHmmss'Z'", Locale.US),
-    new SimpleDateFormat("yyyyMMdd'T'HHmm'Z'", Locale.US),
-  };
-
-  static {
-    for (SimpleDateFormat format : DATE_FORMATS) {
-      format.setLenient(true);
-      format.setTimeZone(UTC_TIMEZONE);
-    }
-    CommonDateUtils.NO_YEAR_DATE_FORMAT.setTimeZone(UTC_TIMEZONE);
-  }
-
-  /**
-   * Parses the supplied string to see if it looks like a date.
-   *
-   * @param string The string representation of the provided date
-   * @param mustContainYear If true, the string is parsed as a date containing a year. If false, the
-   *     string is parsed into a valid date even if the year field is missing.
-   * @return A Calendar object corresponding to the date if the string is successfully parsed. If
-   *     not, null is returned.
-   */
-  public static Calendar parseDate(String string, boolean mustContainYear) {
-    ParsePosition parsePosition = new ParsePosition(0);
-    Date date;
-    if (!mustContainYear) {
-      final boolean noYearParsed;
-      // Unfortunately, we can't parse Feb 29th correctly, so let's handle this day seperately
-      if (NO_YEAR_DATE_FEB29TH.equals(string)) {
-        return getUtcDate(0, Calendar.FEBRUARY, 29);
-      } else {
-        synchronized (CommonDateUtils.NO_YEAR_DATE_FORMAT) {
-          date = CommonDateUtils.NO_YEAR_DATE_FORMAT.parse(string, parsePosition);
-        }
-        noYearParsed = parsePosition.getIndex() == string.length();
-      }
-
-      if (noYearParsed) {
-        return getUtcDate(date, true);
-      }
-    }
-    for (int i = 0; i < DATE_FORMATS.length; i++) {
-      SimpleDateFormat f = DATE_FORMATS[i];
-      synchronized (f) {
-        parsePosition.setIndex(0);
-        date = f.parse(string, parsePosition);
-        if (parsePosition.getIndex() == string.length()) {
-          return getUtcDate(date, false);
-        }
-      }
-    }
-    return null;
-  }
-
-  private static final Calendar getUtcDate(Date date, boolean noYear) {
-    final Calendar calendar = Calendar.getInstance(UTC_TIMEZONE, Locale.US);
-    calendar.setTime(date);
-    if (noYear) {
-      calendar.set(Calendar.YEAR, 0);
-    }
-    return calendar;
-  }
-
-  private static final Calendar getUtcDate(int year, int month, int dayOfMonth) {
-    final Calendar calendar = Calendar.getInstance(UTC_TIMEZONE, Locale.US);
-    calendar.clear();
-    calendar.set(Calendar.YEAR, year);
-    calendar.set(Calendar.MONTH, month);
-    calendar.set(Calendar.DAY_OF_MONTH, dayOfMonth);
-    return calendar;
-  }
-
-  public static boolean isYearSet(Calendar cal) {
-    // use the Calendar.YEAR field to track whether or not the year is set instead of
-    // Calendar.isSet() because doing Calendar.get() causes Calendar.isSet() to become
-    // true irregardless of what the previous value was
-    return cal.get(Calendar.YEAR) > 1;
-  }
-
-  /**
-   * Same as {@link #formatDate(Context context, String string, boolean longForm)}, with longForm
-   * set to {@code true} by default.
-   *
-   * @param context Valid context
-   * @param string String representation of a date to parse
-   * @return Returns the same date in a cleaned up format. If the supplied string does not look like
-   *     a date, return it unchanged.
-   */
-  public static String formatDate(Context context, String string) {
-    return formatDate(context, string, true);
-  }
-
-  /**
-   * Parses the supplied string to see if it looks like a date.
-   *
-   * @param context Valid context
-   * @param string String representation of a date to parse
-   * @param longForm If true, return the date formatted into its long string representation. If
-   *     false, return the date formatted using its short form representation (i.e. 12/11/2012)
-   * @return Returns the same date in a cleaned up format. If the supplied string does not look like
-   *     a date, return it unchanged.
-   */
-  public static String formatDate(Context context, String string, boolean longForm) {
-    if (string == null) {
-      return null;
-    }
-
-    string = string.trim();
-    if (string.length() == 0) {
-      return string;
-    }
-    final Calendar cal = parseDate(string, false);
-
-    // we weren't able to parse the string successfully so just return it unchanged
-    if (cal == null) {
-      return string;
-    }
-
-    final boolean isYearSet = isYearSet(cal);
-    final java.text.DateFormat outFormat;
-    if (!isYearSet) {
-      outFormat = getLocalizedDateFormatWithoutYear(context);
-    } else {
-      outFormat =
-          longForm ? DateFormat.getLongDateFormat(context) : DateFormat.getDateFormat(context);
-    }
-    synchronized (outFormat) {
-      outFormat.setTimeZone(UTC_TIMEZONE);
-      return outFormat.format(cal.getTime());
-    }
-  }
-
-  public static boolean isMonthBeforeDay(Context context) {
-    char[] dateFormatOrder = DateFormat.getDateFormatOrder(context);
-    for (int i = 0; i < dateFormatOrder.length; i++) {
-      if (dateFormatOrder[i] == 'd') {
-        return false;
-      }
-      if (dateFormatOrder[i] == 'M') {
-        return true;
-      }
-    }
-    return false;
-  }
-
-  /**
-   * Returns a SimpleDateFormat object without the year fields by using a regular expression to
-   * eliminate the year in the string pattern. In the rare occurence that the resulting pattern
-   * cannot be reconverted into a SimpleDateFormat, it uses the provided context to determine
-   * whether the month field should be displayed before the day field, and returns either "MMMM dd"
-   * or "dd MMMM" converted into a SimpleDateFormat.
-   */
-  public static java.text.DateFormat getLocalizedDateFormatWithoutYear(Context context) {
-    final String pattern =
-        ((SimpleDateFormat) SimpleDateFormat.getDateInstance(java.text.DateFormat.LONG))
-            .toPattern();
-    // Determine the correct regex pattern for year.
-    // Special case handling for Spanish locale by checking for "de"
-    final String yearPattern =
-        pattern.contains("de") ? "[^Mm]*[Yy]+[^Mm]*" : "[^DdMm]*[Yy]+[^DdMm]*";
-    try {
-      // Eliminate the substring in pattern that matches the format for that of year
-      return new SimpleDateFormat(pattern.replaceAll(yearPattern, ""));
-    } catch (IllegalArgumentException e) {
-      return new SimpleDateFormat(DateUtils.isMonthBeforeDay(context) ? "MMMM dd" : "dd MMMM");
-    }
-  }
-
-  /**
-   * Given a calendar (possibly containing only a day of the year), returns the earliest possible
-   * anniversary of the date that is equal to or after the current point in time if the date does
-   * not contain a year, or the date converted to the local time zone (if the date contains a year.
-   *
-   * @param target The date we wish to convert(in the UTC time zone).
-   * @return If date does not contain a year (year < 1900), returns the next earliest anniversary
-   *     that is after the current point in time (in the local time zone). Otherwise, returns the
-   *     adjusted Date in the local time zone.
-   */
-  public static Date getNextAnnualDate(Calendar target) {
-    final Calendar today = Calendar.getInstance();
-    today.setTime(new Date());
-
-    // Round the current time to the exact start of today so that when we compare
-    // today against the target date, both dates are set to exactly 0000H.
-    today.set(Calendar.HOUR_OF_DAY, 0);
-    today.set(Calendar.MINUTE, 0);
-    today.set(Calendar.SECOND, 0);
-    today.set(Calendar.MILLISECOND, 0);
-
-    final boolean isYearSet = isYearSet(target);
-    final int targetYear = target.get(Calendar.YEAR);
-    final int targetMonth = target.get(Calendar.MONTH);
-    final int targetDay = target.get(Calendar.DAY_OF_MONTH);
-    final boolean isFeb29 = (targetMonth == Calendar.FEBRUARY && targetDay == 29);
-    final GregorianCalendar anniversary = new GregorianCalendar();
-    // Convert from the UTC date to the local date. Set the year to today's year if the
-    // there is no provided year (targetYear < 1900)
-    anniversary.set(!isYearSet ? today.get(Calendar.YEAR) : targetYear, targetMonth, targetDay);
-    // If the anniversary's date is before the start of today and there is no year set,
-    // increment the year by 1 so that the returned date is always equal to or greater than
-    // today. If the day is a leap year, keep going until we get the next leap year anniversary
-    // Otherwise if there is already a year set, simply return the exact date.
-    if (!isYearSet) {
-      int anniversaryYear = today.get(Calendar.YEAR);
-      if (anniversary.before(today) || (isFeb29 && !anniversary.isLeapYear(anniversaryYear))) {
-        // If the target date is not Feb 29, then set the anniversary to the next year.
-        // Otherwise, keep going until we find the next leap year (this is not guaranteed
-        // to be in 4 years time).
-        do {
-          anniversaryYear += 1;
-        } while (isFeb29 && !anniversary.isLeapYear(anniversaryYear));
-        anniversary.set(anniversaryYear, targetMonth, targetDay);
-      }
-    }
-    return anniversary.getTime();
-  }
-
   /**
    * Determine the difference, in days between two dates. Uses similar logic as the {@link
    * android.text.format.DateUtils.getRelativeTimeSpanString} method.
diff --git a/java/com/android/contacts/common/util/MaterialColorMapUtils.java b/java/com/android/contacts/common/util/MaterialColorMapUtils.java
index a2d9847..bd32faa 100644
--- a/java/com/android/contacts/common/util/MaterialColorMapUtils.java
+++ b/java/com/android/contacts/common/util/MaterialColorMapUtils.java
@@ -21,7 +21,6 @@
 import android.os.Parcel;
 import android.os.Parcelable;
 import android.os.Trace;
-import com.android.contacts.common.R;
 
 public class MaterialColorMapUtils {
 
@@ -35,13 +34,6 @@
         resources.obtainTypedArray(com.android.contacts.common.R.array.letter_tile_colors_dark);
   }
 
-  public static MaterialPalette getDefaultPrimaryAndSecondaryColors(Resources resources) {
-    final int primaryColor = resources.getColor(R.color.quickcontact_default_photo_tint_color);
-    final int secondaryColor =
-        resources.getColor(R.color.quickcontact_default_photo_tint_color_dark);
-    return new MaterialPalette(primaryColor, secondaryColor);
-  }
-
   /**
    * Returns the hue component of a color int.
    *
diff --git a/java/com/android/contacts/common/util/NameConverter.java b/java/com/android/contacts/common/util/NameConverter.java
deleted file mode 100644
index ae3275d..0000000
--- a/java/com/android/contacts/common/util/NameConverter.java
+++ /dev/null
@@ -1,242 +0,0 @@
-/*
- * Copyright (C) 2011 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.contacts.common.util;
-
-import android.content.ContentValues;
-import android.content.Context;
-import android.database.Cursor;
-import android.net.Uri;
-import android.net.Uri.Builder;
-import android.provider.ContactsContract;
-import android.provider.ContactsContract.CommonDataKinds.StructuredName;
-import android.text.TextUtils;
-import com.android.contacts.common.model.dataitem.StructuredNameDataItem;
-import java.util.Map;
-import java.util.TreeMap;
-
-/**
- * Utility class for converting between a display name and structured name (and vice-versa), via
- * calls to the contact provider.
- */
-public class NameConverter {
-
-  /** The array of fields that comprise a structured name. */
-  public static final String[] STRUCTURED_NAME_FIELDS =
-      new String[] {
-        StructuredName.PREFIX,
-        StructuredName.GIVEN_NAME,
-        StructuredName.MIDDLE_NAME,
-        StructuredName.FAMILY_NAME,
-        StructuredName.SUFFIX
-      };
-
-  /**
-   * Converts the given structured name (provided as a map from {@link StructuredName} fields to
-   * corresponding values) into a display name string.
-   *
-   * <p>Note that this operates via a call back to the ContactProvider, but it does not access the
-   * database, so it should be safe to call from the UI thread. See ContactsProvider2.completeName()
-   * for the underlying method call.
-   *
-   * @param context Activity context.
-   * @param structuredName The structured name map to convert.
-   * @return The display name computed from the structured name map.
-   */
-  public static String structuredNameToDisplayName(
-      Context context, Map<String, String> structuredName) {
-    Builder builder = ContactsContract.AUTHORITY_URI.buildUpon().appendPath("complete_name");
-    for (String key : STRUCTURED_NAME_FIELDS) {
-      if (structuredName.containsKey(key)) {
-        appendQueryParameter(builder, key, structuredName.get(key));
-      }
-    }
-    return fetchDisplayName(context, builder.build());
-  }
-
-  /**
-   * Converts the given structured name (provided as ContentValues) into a display name string.
-   *
-   * @param context Activity context.
-   * @param values The content values containing values comprising the structured name.
-   */
-  public static String structuredNameToDisplayName(Context context, ContentValues values) {
-    Builder builder = ContactsContract.AUTHORITY_URI.buildUpon().appendPath("complete_name");
-    for (String key : STRUCTURED_NAME_FIELDS) {
-      if (values.containsKey(key)) {
-        appendQueryParameter(builder, key, values.getAsString(key));
-      }
-    }
-    return fetchDisplayName(context, builder.build());
-  }
-
-  /** Helper method for fetching the display name via the given URI. */
-  private static String fetchDisplayName(Context context, Uri uri) {
-    String displayName = null;
-    Cursor cursor =
-        context
-            .getContentResolver()
-            .query(
-                uri,
-                new String[] {
-                  StructuredName.DISPLAY_NAME,
-                },
-                null,
-                null,
-                null);
-
-    if (cursor != null) {
-      try {
-        if (cursor.moveToFirst()) {
-          displayName = cursor.getString(0);
-        }
-      } finally {
-        cursor.close();
-      }
-    }
-    return displayName;
-  }
-
-  /**
-   * Converts the given display name string into a structured name (as a map from {@link
-   * StructuredName} fields to corresponding values).
-   *
-   * <p>Note that this operates via a call back to the ContactProvider, but it does not access the
-   * database, so it should be safe to call from the UI thread.
-   *
-   * @param context Activity context.
-   * @param displayName The display name to convert.
-   * @return The structured name map computed from the display name.
-   */
-  public static Map<String, String> displayNameToStructuredName(
-      Context context, String displayName) {
-    Map<String, String> structuredName = new TreeMap<String, String>();
-    Builder builder = ContactsContract.AUTHORITY_URI.buildUpon().appendPath("complete_name");
-
-    appendQueryParameter(builder, StructuredName.DISPLAY_NAME, displayName);
-    Cursor cursor =
-        context
-            .getContentResolver()
-            .query(builder.build(), STRUCTURED_NAME_FIELDS, null, null, null);
-
-    if (cursor != null) {
-      try {
-        if (cursor.moveToFirst()) {
-          for (int i = 0; i < STRUCTURED_NAME_FIELDS.length; i++) {
-            structuredName.put(STRUCTURED_NAME_FIELDS[i], cursor.getString(i));
-          }
-        }
-      } finally {
-        cursor.close();
-      }
-    }
-    return structuredName;
-  }
-
-  /**
-   * Converts the given display name string into a structured name (inserting the structured values
-   * into a new or existing ContentValues object).
-   *
-   * <p>Note that this operates via a call back to the ContactProvider, but it does not access the
-   * database, so it should be safe to call from the UI thread.
-   *
-   * @param context Activity context.
-   * @param displayName The display name to convert.
-   * @param contentValues The content values object to place the structured name values into. If
-   *     null, a new one will be created and returned.
-   * @return The ContentValues object containing the structured name fields derived from the display
-   *     name.
-   */
-  public static ContentValues displayNameToStructuredName(
-      Context context, String displayName, ContentValues contentValues) {
-    if (contentValues == null) {
-      contentValues = new ContentValues();
-    }
-    Map<String, String> mapValues = displayNameToStructuredName(context, displayName);
-    for (String key : mapValues.keySet()) {
-      contentValues.put(key, mapValues.get(key));
-    }
-    return contentValues;
-  }
-
-  private static void appendQueryParameter(Builder builder, String field, String value) {
-    if (!TextUtils.isEmpty(value)) {
-      builder.appendQueryParameter(field, value);
-    }
-  }
-
-  /**
-   * Parses phonetic name and returns parsed data (family, middle, given) as ContentValues. Parsed
-   * data should be {@link StructuredName#PHONETIC_FAMILY_NAME}, {@link
-   * StructuredName#PHONETIC_MIDDLE_NAME}, and {@link StructuredName#PHONETIC_GIVEN_NAME}. If this
-   * method cannot parse given phoneticName, null values will be stored.
-   *
-   * @param phoneticName Phonetic name to be parsed
-   * @param values ContentValues to be used for storing data. If null, new instance will be created.
-   * @return ContentValues with parsed data. Those data can be null.
-   */
-  public static StructuredNameDataItem parsePhoneticName(
-      String phoneticName, StructuredNameDataItem item) {
-    String family = null;
-    String middle = null;
-    String given = null;
-
-    if (!TextUtils.isEmpty(phoneticName)) {
-      String[] strings = phoneticName.split(" ", 3);
-      switch (strings.length) {
-        case 1:
-          family = strings[0];
-          break;
-        case 2:
-          family = strings[0];
-          given = strings[1];
-          break;
-        case 3:
-          family = strings[0];
-          middle = strings[1];
-          given = strings[2];
-          break;
-      }
-    }
-
-    if (item == null) {
-      item = new StructuredNameDataItem();
-    }
-    item.setPhoneticFamilyName(family);
-    item.setPhoneticMiddleName(middle);
-    item.setPhoneticGivenName(given);
-    return item;
-  }
-
-  /** Constructs and returns a phonetic full name from given parts. */
-  public static String buildPhoneticName(String family, String middle, String given) {
-    if (!TextUtils.isEmpty(family) || !TextUtils.isEmpty(middle) || !TextUtils.isEmpty(given)) {
-      StringBuilder sb = new StringBuilder();
-      if (!TextUtils.isEmpty(family)) {
-        sb.append(family.trim()).append(' ');
-      }
-      if (!TextUtils.isEmpty(middle)) {
-        sb.append(middle.trim()).append(' ');
-      }
-      if (!TextUtils.isEmpty(given)) {
-        sb.append(given.trim()).append(' ');
-      }
-      sb.setLength(sb.length() - 1); // Yank the last space
-      return sb.toString();
-    } else {
-      return null;
-    }
-  }
-}
diff --git a/java/com/android/contacts/common/util/StopWatch.java b/java/com/android/contacts/common/util/StopWatch.java
index b944b98..7986d10 100644
--- a/java/com/android/contacts/common/util/StopWatch.java
+++ b/java/com/android/contacts/common/util/StopWatch.java
@@ -16,7 +16,7 @@
 
 package com.android.contacts.common.util;
 
-import android.util.Log;
+import com.android.dialer.common.LogUtil;
 import java.util.ArrayList;
 
 /** A {@link StopWatch} records start, laps and stop, and print them to logcat. */
@@ -37,11 +37,6 @@
     return new StopWatch(label);
   }
 
-  /** Return a dummy instance that does no operations. */
-  public static StopWatch getNullStopWatch() {
-    return NullStopWatch.INSTANCE;
-  }
-
   /** Record a lap. */
   public void lap(String lapLabel) {
     mTimes.add(System.currentTimeMillis());
@@ -76,25 +71,6 @@
       sb.append(" ");
       last = current;
     }
-    Log.v(TAG, sb.toString());
-  }
-
-  private static class NullStopWatch extends StopWatch {
-
-    public static final NullStopWatch INSTANCE = new NullStopWatch();
-
-    public NullStopWatch() {
-      super(null);
-    }
-
-    @Override
-    public void lap(String lapLabel) {
-      // noop
-    }
-
-    @Override
-    public void stopAndLog(String TAG, int timeThresholdToLog) {
-      // noop
-    }
+    LogUtil.v(TAG, sb.toString());
   }
 }
diff --git a/java/com/android/contacts/common/util/TelephonyManagerUtils.java b/java/com/android/contacts/common/util/TelephonyManagerUtils.java
index b664268..e4c2c63 100644
--- a/java/com/android/contacts/common/util/TelephonyManagerUtils.java
+++ b/java/com/android/contacts/common/util/TelephonyManagerUtils.java
@@ -33,13 +33,4 @@
     final String voiceMailLabel = telephonyManager.getVoiceMailAlphaTag();
     return voiceMailLabel;
   }
-
-  /**
-   * @param context Current application context.
-   * @return True if there is a subscription which supports video calls. False otherwise.
-   */
-  public static boolean hasVideoCallSubscription(Context context) {
-    // TODO: Check the telephony manager's subscriptions to see if any support video calls.
-    return true;
-  }
 }
diff --git a/java/com/android/contacts/common/util/TrafficStatsTags.java b/java/com/android/contacts/common/util/TrafficStatsTags.java
deleted file mode 100644
index b0e7fb5..0000000
--- a/java/com/android/contacts/common/util/TrafficStatsTags.java
+++ /dev/null
@@ -1,22 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.contacts.common.util;
-
-public class TrafficStatsTags {
-
-  public static final int CONTACT_PHOTO_DOWNLOAD_TAG = 0x0001;
-  public static final int TAG_MAX = 0x9999;
-}
diff --git a/java/com/android/dialer/about/AndroidManifest.xml b/java/com/android/dialer/about/AndroidManifest.xml
index e9489ce..85c7508 100644
--- a/java/com/android/dialer/about/AndroidManifest.xml
+++ b/java/com/android/dialer/about/AndroidManifest.xml
@@ -1,6 +1,6 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.android.dialer.about">
-  <application>
+  <application android:theme="@style/Theme.AppCompat">
     <activity
         android:name="com.android.dialer.about.LicenseMenuActivity"
         android:label="@string/licenseActivityLabel"
diff --git a/java/com/android/dialer/about/res/raw/keep.xml b/java/com/android/dialer/about/res/raw/keep.xml
index e41b8b8..9215627 100644
--- a/java/com/android/dialer/about/res/raw/keep.xml
+++ b/java/com/android/dialer/about/res/raw/keep.xml
@@ -16,4 +16,3 @@
   -->
 <resources xmlns:tools="http://schemas.android.com/tools"
     tools:keep="@raw/*"/>
-
diff --git a/java/com/android/dialer/app/AndroidManifest.xml b/java/com/android/dialer/app/AndroidManifest.xml
index de4b48c..4200082 100644
--- a/java/com/android/dialer/app/AndroidManifest.xml
+++ b/java/com/android/dialer/app/AndroidManifest.xml
@@ -39,6 +39,7 @@
   <uses-permission android:name="android.permission.USE_CREDENTIALS"/>
   <uses-permission android:name="android.permission.VIBRATE"/>
   <uses-permission android:name="android.permission.READ_SYNC_SETTINGS"/>
+  <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
   <uses-permission android:name="com.android.voicemail.permission.ADD_VOICEMAIL"/>
   <uses-permission android:name="com.android.voicemail.permission.WRITE_VOICEMAIL"/>
   <uses-permission android:name="com.android.voicemail.permission.READ_VOICEMAIL"/>
diff --git a/java/com/android/dialer/app/Bindings.java b/java/com/android/dialer/app/Bindings.java
index 2beb401..c8cf27e 100644
--- a/java/com/android/dialer/app/Bindings.java
+++ b/java/com/android/dialer/app/Bindings.java
@@ -17,9 +17,6 @@
 package com.android.dialer.app;
 
 import android.content.Context;
-import com.android.dialer.app.bindings.DialerBindings;
-import com.android.dialer.app.bindings.DialerBindingsFactory;
-import com.android.dialer.app.bindings.DialerBindingsStub;
 import com.android.dialer.app.legacybindings.DialerLegacyBindings;
 import com.android.dialer.app.legacybindings.DialerLegacyBindingsFactory;
 import com.android.dialer.app.legacybindings.DialerLegacyBindingsStub;
@@ -28,28 +25,10 @@
 /** Accessor for the in call UI bindings. */
 public class Bindings {
 
-  private static DialerBindings instance;
   private static DialerLegacyBindings legacyInstance;
 
   private Bindings() {}
 
-  public static DialerBindings get(Context context) {
-    Objects.requireNonNull(context);
-    if (instance != null) {
-      return instance;
-    }
-
-    Context application = context.getApplicationContext();
-    if (application instanceof DialerBindingsFactory) {
-      instance = ((DialerBindingsFactory) application).newDialerBindings();
-    }
-
-    if (instance == null) {
-      instance = new DialerBindingsStub();
-    }
-    return instance;
-  }
-
   public static DialerLegacyBindings getLegacy(Context context) {
     Objects.requireNonNull(context);
     if (legacyInstance != null) {
@@ -67,11 +46,4 @@
     return legacyInstance;
   }
 
-  public static void setForTesting(DialerBindings testInstance) {
-    instance = testInstance;
-  }
-
-  public static void setLegacyBindingForTesting(DialerLegacyBindings testLegacyInstance) {
-    legacyInstance = testLegacyInstance;
-  }
 }
diff --git a/java/com/android/dialer/app/DialtactsActivity.java b/java/com/android/dialer/app/DialtactsActivity.java
index 6e2c6be..527dbff 100644
--- a/java/com/android/dialer/app/DialtactsActivity.java
+++ b/java/com/android/dialer/app/DialtactsActivity.java
@@ -71,10 +71,12 @@
 import com.android.dialer.animation.AnimUtils;
 import com.android.dialer.animation.AnimationListenerAdapter;
 import com.android.dialer.app.calllog.CallLogActivity;
+import com.android.dialer.app.calllog.CallLogAdapter;
 import com.android.dialer.app.calllog.CallLogFragment;
 import com.android.dialer.app.calllog.CallLogNotificationsService;
 import com.android.dialer.app.dialpad.DialpadFragment;
 import com.android.dialer.app.list.DialtactsPagerAdapter;
+import com.android.dialer.app.list.DialtactsPagerAdapter.TabIndex;
 import com.android.dialer.app.list.DragDropController;
 import com.android.dialer.app.list.ListsFragment;
 import com.android.dialer.app.list.OldSpeedDialFragment;
@@ -92,6 +94,7 @@
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.database.Database;
 import com.android.dialer.database.DialerDatabaseHelper;
 import com.android.dialer.interactions.PhoneNumberInteraction;
@@ -99,20 +102,24 @@
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.logging.ScreenEvent;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.main.Main;
+import com.android.dialer.main.MainComponent;
 import com.android.dialer.p13n.inference.P13nRanking;
 import com.android.dialer.p13n.inference.protocol.P13nRanker;
 import com.android.dialer.p13n.inference.protocol.P13nRanker.P13nRefreshCompleteListener;
 import com.android.dialer.p13n.logging.P13nLogger;
 import com.android.dialer.p13n.logging.P13nLogging;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.postcall.PostCall;
 import com.android.dialer.proguard.UsedByReflection;
+import com.android.dialer.searchfragment.list.NewSearchFragment;
 import com.android.dialer.simulator.Simulator;
 import com.android.dialer.simulator.SimulatorComponent;
 import com.android.dialer.smartdial.SmartDialNameMatcher;
 import com.android.dialer.smartdial.SmartDialPrefix;
 import com.android.dialer.telecom.TelecomUtil;
 import com.android.dialer.util.DialerUtils;
-import com.android.dialer.util.IntentUtil;
 import com.android.dialer.util.PermissionsUtil;
 import com.android.dialer.util.TouchPointManager;
 import com.android.dialer.util.TransactionSafeActivity;
@@ -130,6 +137,7 @@
         DialpadFragment.OnDialpadQueryChangedListener,
         OnListFragmentScrolledListener,
         CallLogFragment.HostInterface,
+        CallLogAdapter.OnActionModeStateChangedListener,
         DialpadFragment.HostInterface,
         OldSpeedDialFragment.HostInterface,
         SearchFragment.HostInterface,
@@ -147,6 +155,7 @@
   private static final String ACTION_SHOW_TAB = "ACTION_SHOW_TAB";
   @VisibleForTesting public static final String EXTRA_SHOW_TAB = "EXTRA_SHOW_TAB";
   public static final String EXTRA_CLEAR_NEW_VOICEMAILS = "EXTRA_CLEAR_NEW_VOICEMAILS";
+  private static final String KEY_LAST_TAB = "last_tab";
   private static final String TAG = "DialtactsActivity";
   private static final String KEY_IN_REGULAR_SEARCH_UI = "in_regular_search_ui";
   private static final String KEY_IN_DIALPAD_SEARCH_UI = "in_dialpad_search_ui";
@@ -154,6 +163,7 @@
   private static final String KEY_FIRST_LAUNCH = "first_launch";
   private static final String KEY_WAS_CONFIGURATION_CHANGE = "was_configuration_change";
   private static final String KEY_IS_DIALPAD_SHOWN = "is_dialpad_shown";
+  private static final String TAG_NEW_SEARCH_FRAGMENT = "new_search";
   private static final String TAG_REGULAR_SEARCH_FRAGMENT = "search";
   private static final String TAG_SMARTDIAL_SEARCH_FRAGMENT = "smartdial";
   private static final String TAG_FAVORITES_FRAGMENT = "favorites";
@@ -162,6 +172,7 @@
 
   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;
 
@@ -180,6 +191,9 @@
   /** Fragment for searching phone numbers using the dialpad. */
   private SmartDialSearchFragment mSmartDialSearchFragment;
 
+  /** new Fragment for search phone numbers using the keyboard and the dialpad. */
+  private NewSearchFragment mNewSearchFragment;
+
   /** Animation that slides in. */
   private Animation mSlideIn;
 
@@ -225,6 +239,9 @@
 
   private P13nLogger mP13nLogger;
   private P13nRanker mP13nRanker;
+  public boolean isMultiSelectModeEnabled;
+
+  private boolean isLastTabEnabled;
 
   AnimationListenerAdapter mSlideInListener =
       new AnimationListenerAdapter() {
@@ -256,12 +273,18 @@
             // no need to do anything here.
             return;
           }
+
+          if (count != 0) {
+            PerformanceReport.recordClick(UiAction.Type.TEXT_CHANGE_WITH_INPUT);
+          }
+
           if (DEBUG) {
             LogUtil.v("DialtactsActivity.onTextChanged", "called with new query: " + newText);
             LogUtil.v("DialtactsActivity.onTextChanged", "previous query: " + mSearchQuery);
           }
           mSearchQuery = newText;
 
+          // TODO: show p13n when newText is empty.
           // Show search fragment only when the query string is changed to non-empty text.
           if (!TextUtils.isEmpty(newText)) {
             // Call enterSearchUi only if we are switching search modes, or showing a search
@@ -277,6 +300,8 @@
             mSmartDialSearchFragment.setQueryString(mSearchQuery);
           } else if (mRegularSearchFragment != null && mRegularSearchFragment.isVisible()) {
             mRegularSearchFragment.setQueryString(mSearchQuery);
+          } else if (mNewSearchFragment != null) {
+            mNewSearchFragment.setQuery(mSearchQuery);
           }
         }
 
@@ -289,6 +314,7 @@
         @Override
         public void onClick(View v) {
           if (!isInSearchUi()) {
+            PerformanceReport.recordClick(UiAction.Type.OPEN_SEARCH);
             mActionBarController.onSearchBoxTapped();
             enterSearchUi(
                 false /* smartDialSearch */, mSearchView.getText().toString(), true /* animate */);
@@ -306,9 +332,13 @@
           if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) {
             if (TextUtils.isEmpty(mSearchView.getText().toString())) {
               // If the search term is empty, close the search UI.
+              PerformanceReport.recordClick(UiAction.Type.CLOSE_SEARCH_WITH_HIDE_BUTTON);
               maybeExitSearchUi();
             } else {
               // If the search term is not empty, show the dialpad fab.
+              if (!mFloatingActionButtonController.isVisible()) {
+                PerformanceReport.recordClick(UiAction.Type.HIDE_KEYBOARD_IN_SEARCH);
+              }
               showFabInSearchUi();
             }
           }
@@ -355,6 +385,7 @@
     super.onCreate(savedInstanceState);
 
     mFirstLaunch = true;
+    isLastTabEnabled = ConfigProviderBindings.get(this).getBoolean("last_tab_enabled", false);
 
     final Resources resources = getResources();
     mActionBarHeight = resources.getDimensionPixelSize(R.dimen.action_bar_height_large);
@@ -480,6 +511,13 @@
     Trace.beginSection(TAG + " onResume");
     super.onResume();
 
+    // Some calls may not be recorded (eg. from quick contact),
+    // so we should restart recording after these calls. (Recorded call is stopped)
+    PostCall.restartPerformanceRecordingIfARecentCallExist(this);
+    if (!PerformanceReport.isRecording()) {
+      PerformanceReport.startRecording();
+    }
+
     mStateSaved = false;
     if (mFirstLaunch) {
       displayFragment(getIntent());
@@ -542,7 +580,8 @@
       }
 
       if (getIntent().getBooleanExtra(EXTRA_CLEAR_NEW_VOICEMAILS, false)) {
-        CallLogNotificationsService.markNewVoicemailsAsOld(this, null);
+        LogUtil.i("DialtactsActivity.onResume", "clearing all new voicemails");
+        CallLogNotificationsService.markAllNewVoicemailsAsOld(this);
       }
     }
 
@@ -593,6 +632,10 @@
         && !getSystemService(KeyguardManager.class).isKeyguardLocked()) {
       mListsFragment.markMissedCallsAsReadAndRemoveNotifications();
     }
+    DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(this)
+        .edit()
+        .putInt(KEY_LAST_TAB, mListsFragment.getCurrentTabIndex())
+        .apply();
   }
 
   @Override
@@ -630,6 +673,8 @@
     } else if (fragment instanceof ListsFragment) {
       mListsFragment = (ListsFragment) fragment;
       mListsFragment.addOnPageChangeListener(this);
+    } else if (fragment instanceof NewSearchFragment) {
+      mNewSearchFragment = (NewSearchFragment) fragment;
     }
     if (fragment instanceof SearchFragment) {
       final SearchFragment searchFragment = (SearchFragment) fragment;
@@ -664,13 +709,8 @@
   public void onClick(View view) {
     int resId = view.getId();
     if (resId == R.id.floating_action_button) {
-      if (mListsFragment.getCurrentTabIndex() == DialtactsPagerAdapter.TAB_INDEX_ALL_CONTACTS
-          && !mInRegularSearch
-          && !mInDialpadSearch) {
-        DialerUtils.startActivityWithErrorToast(
-            this, IntentUtil.getNewContactIntent(), R.string.add_contact_not_available);
-        Logger.get(this).logImpression(DialerImpression.Type.NEW_CONTACT_FAB);
-      } else if (!mIsDialpadShown) {
+      if (!mIsDialpadShown) {
+        PerformanceReport.recordClick(UiAction.Type.OPEN_DIALPAD);
         mInCallDialpadUp = false;
         showDialpadFragment(true);
         PostCall.closePrompt();
@@ -700,6 +740,7 @@
 
     int resId = item.getItemId();
     if (resId == R.id.menu_history) {
+      PerformanceReport.recordClick(UiAction.Type.OPEN_CALL_HISTORY);
       final Intent intent = new Intent(this, CallLogActivity.class);
       startActivity(intent);
     } else if (resId == R.id.menu_clear_frequents) {
@@ -710,6 +751,9 @@
       handleMenuSettings();
       Logger.get(this).logScreenView(ScreenEvent.Type.SETTINGS, this);
       return true;
+    } else if (resId == R.id.menu_new_ui_launcher_shortcut) {
+      MainComponent.get(this).getMain().createNewUiLauncherShortcut(this);
+      return true;
     }
     return false;
   }
@@ -785,6 +829,7 @@
 
     if (animate) {
       mFloatingActionButtonController.scaleOut();
+      maybeEnterSearchUi();
     } else {
       mFloatingActionButtonController.setVisible(false);
       maybeEnterSearchUi();
@@ -1007,6 +1052,16 @@
       if (showDialpadChooser && !mDialpadFragment.isVisible()) {
         mInCallDialpadUp = true;
       }
+    } else if (isLastTabEnabled) {
+      @TabIndex
+      int tabIndex =
+          DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(this)
+              .getInt(KEY_LAST_TAB, DialtactsPagerAdapter.TAB_INDEX_SPEED_DIAL);
+      // If voicemail tab is saved and its availability changes, we still move to the voicemail tab
+      // but it is quickly removed and shown the contacts tab.
+      if (mListsFragment != null) {
+        mListsFragment.showTab(tabIndex);
+      }
     }
   }
 
@@ -1057,7 +1112,11 @@
     }
 
     final String tag;
-    if (smartDialSearch) {
+    boolean useNewSearch =
+        ConfigProviderBindings.get(this).getBoolean("enable_new_search_fragment", false);
+    if (useNewSearch) {
+      tag = TAG_NEW_SEARCH_FRAGMENT;
+    } else if (smartDialSearch) {
       tag = TAG_SMARTDIAL_SEARCH_FRAGMENT;
     } else {
       tag = TAG_REGULAR_SEARCH_FRAGMENT;
@@ -1067,40 +1126,52 @@
 
     mFloatingActionButtonController.scaleOut();
 
-    SearchFragment fragment = (SearchFragment) getFragmentManager().findFragmentByTag(tag);
     if (animate) {
       transaction.setCustomAnimations(android.R.animator.fade_in, 0);
     } else {
       transaction.setTransition(FragmentTransaction.TRANSIT_NONE);
     }
+
+    Fragment fragment = getFragmentManager().findFragmentByTag(tag);
     if (fragment == null) {
-      if (smartDialSearch) {
+      if (useNewSearch) {
+        fragment = new NewSearchFragment();
+      } else if (smartDialSearch) {
         fragment = new SmartDialSearchFragment();
       } else {
         fragment = Bindings.getLegacy(this).newRegularSearchFragment();
-        fragment.setOnTouchListener(
-            new View.OnTouchListener() {
-              @Override
-              public boolean onTouch(View v, MotionEvent event) {
-                // Show the FAB when the user touches the lists fragment and the soft
-                // keyboard is hidden.
-                hideDialpadFragment(true, false);
-                showFabInSearchUi();
-                v.performClick();
-                return false;
-              }
-            });
+        ((SearchFragment) fragment)
+            .setOnTouchListener(
+                (v, event) -> {
+                  // Show the FAB when the user touches the lists fragment and the soft
+                  // keyboard is hidden.
+                  hideDialpadFragment(true, false);
+                  v.performClick();
+                  return false;
+                });
       }
       transaction.add(R.id.dialtacts_frame, fragment, tag);
     } else {
+      // TODO: if this is a transition from dialpad to searchbar, animate fragment
+      // down, and vice versa. Perhaps just add a coordinator behavior with the search bar.
       transaction.show(fragment);
     }
+
     // DialtactsActivity will provide the options menu
     fragment.setHasOptionsMenu(false);
+
     // Will show empty list if P13nRanker is not enabled. Else, re-ranked list by the ranker.
-    fragment.setShowEmptyListForNullQuery(mP13nRanker.shouldShowEmptyListForNullQuery());
-    if (!smartDialSearch) {
-      fragment.setQueryString(query);
+    if (!useNewSearch) {
+      ((SearchFragment) fragment)
+          .setShowEmptyListForNullQuery(mP13nRanker.shouldShowEmptyListForNullQuery());
+    } else {
+      // TODO: add p13n ranker to new search.
+    }
+
+    if (!smartDialSearch && !useNewSearch) {
+      ((SearchFragment) fragment).setQueryString(query);
+    } else if (useNewSearch) {
+      ((NewSearchFragment) fragment).setQuery(query);
     }
     transaction.commit();
 
@@ -1146,6 +1217,9 @@
     if (mRegularSearchFragment != null) {
       transaction.remove(mRegularSearchFragment);
     }
+    if (mNewSearchFragment != null) {
+      transaction.remove(mNewSearchFragment);
+    }
     transaction.commit();
 
     Assert.isNotNull(mListsFragment.getView()).animate().alpha(1).withLayer();
@@ -1163,6 +1237,8 @@
 
   @Override
   public void onBackPressed() {
+    PerformanceReport.recordClick(UiAction.Type.PRESS_ANDROID_BACK_BUTTON);
+
     if (mStateSaved) {
       return;
     }
@@ -1247,6 +1323,7 @@
     if (mInDialpadSearch
         && mSmartDialSearchFragment != null
         && !mSmartDialSearchFragment.isShowingPermissionRequest()) {
+      PerformanceReport.recordClick(UiAction.Type.CLOSE_DIALPAD);
       hideDialpadFragment(true /* animate */, true /* clearDialpad */);
       return true;
     }
@@ -1255,6 +1332,7 @@
 
   @Override
   public void onListFragmentScrollStateChange(int scrollState) {
+    PerformanceReport.recordScrollStateChange(scrollState);
     if (scrollState == OnScrollListener.SCROLL_STATE_TOUCH_SCROLL) {
       hideDialpadFragment(true, false);
       DialerUtils.hideInputMethod(mParentLayout);
@@ -1381,18 +1459,6 @@
     int tabIndex = mListsFragment.getCurrentTabIndex();
     mPreviouslySelectedTabIndex = tabIndex;
     mFloatingActionButtonController.setVisible(true);
-    if (tabIndex == DialtactsPagerAdapter.TAB_INDEX_ALL_CONTACTS
-        && !mInRegularSearch
-        && !mInDialpadSearch) {
-      mFloatingActionButtonController.changeIcon(
-          getResources().getDrawable(R.drawable.quantum_ic_person_add_white_24, null),
-          getResources().getString(R.string.search_shortcut_create_new_contact));
-    } else {
-      mFloatingActionButtonController.changeIcon(
-          getResources().getDrawable(R.drawable.quantum_ic_dialpad_white_24, null),
-          getResources().getString(R.string.action_menu_dialpad_button));
-    }
-
     timeTabSelected = SystemClock.elapsedRealtime();
   }
 
@@ -1477,6 +1543,17 @@
             Arrays.toString(grantResults)));
   }
 
+  @Override
+  public void onActionModeStateChanged(boolean isEnabled) {
+    isMultiSelectModeEnabled = isEnabled;
+  }
+
+  @Override
+  public boolean isActionModeStateEnabled() {
+    return isMultiSelectModeEnabled;
+  }
+
+  /** Popup menu accessible from the search bar */
   protected class OptionsPopupMenu extends PopupMenu {
 
     public OptionsPopupMenu(Context context, View anchor) {
@@ -1505,6 +1582,10 @@
         simulatorMenuItem.setVisible(false);
       }
 
+      Main dialtacts = MainComponent.get(context).getMain();
+      menu.findItem(R.id.menu_new_ui_launcher_shortcut)
+          .setVisible(dialtacts.isNewUiEnabled(context));
+
       super.show();
     }
   }
diff --git a/java/com/android/dialer/app/SpecialCharSequenceMgr.java b/java/com/android/dialer/app/SpecialCharSequenceMgr.java
index 85c2ea6..20222d6 100644
--- a/java/com/android/dialer/app/SpecialCharSequenceMgr.java
+++ b/java/com/android/dialer/app/SpecialCharSequenceMgr.java
@@ -47,7 +47,6 @@
 import com.android.dialer.calllogutils.PhoneAccountUtils;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.compat.CompatUtils;
 import com.android.dialer.oem.MotorolaUtils;
 import com.android.dialer.telecom.TelecomUtil;
 import java.util.ArrayList;
@@ -299,9 +298,7 @@
               : R.string.meid;
 
       List<String> deviceIds = new ArrayList<String>();
-      if (TelephonyManagerCompat.getPhoneCount(telephonyManager) > 1
-          && CompatUtils.isMethodAvailable(
-              TelephonyManagerCompat.TELEPHONY_MANAGER_CLASS, "getDeviceId", Integer.TYPE)) {
+      if (TelephonyManagerCompat.getPhoneCount(telephonyManager) > 1) {
         for (int slot = 0; slot < telephonyManager.getPhoneCount(); slot++) {
           String deviceId = telephonyManager.getDeviceId(slot);
           if (!TextUtils.isEmpty(deviceId)) {
diff --git a/java/com/android/dialer/app/bindings/DialerBindingsFactory.java b/java/com/android/dialer/app/bindings/DialerBindingsFactory.java
deleted file mode 100644
index 9f209f9..0000000
--- a/java/com/android/dialer/app/bindings/DialerBindingsFactory.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package com.android.dialer.app.bindings;
-
-/**
- * This interface should be implementated by the Application subclass. It allows the dialer module
- * to get references to the DialerBindings.
- */
-public interface DialerBindingsFactory {
-
-  DialerBindings newDialerBindings();
-}
diff --git a/java/com/android/dialer/app/bindings/DialerBindingsStub.java b/java/com/android/dialer/app/bindings/DialerBindingsStub.java
deleted file mode 100644
index f56743f..0000000
--- a/java/com/android/dialer/app/bindings/DialerBindingsStub.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.dialer.app.bindings;
-
-import com.android.dialer.common.ConfigProvider;
-
-/** Default implementation for dialer bindings. */
-public class DialerBindingsStub implements DialerBindings {
-  private ConfigProvider configProvider;
-
-  @Override
-  public ConfigProvider getConfigProvider() {
-    if (configProvider == null) {
-      configProvider =
-          new ConfigProvider() {
-            @Override
-            public String getString(String key, String defaultValue) {
-              return defaultValue;
-            }
-
-            @Override
-            public long getLong(String key, long defaultValue) {
-              return defaultValue;
-            }
-
-            @Override
-            public boolean getBoolean(String key, boolean defaultValue) {
-              return defaultValue;
-            }
-          };
-    }
-    return configProvider;
-  }
-}
diff --git a/java/com/android/dialer/app/calllog/CallLogActivity.java b/java/com/android/dialer/app/calllog/CallLogActivity.java
index 443171d..6433af9 100644
--- a/java/com/android/dialer/app/calllog/CallLogActivity.java
+++ b/java/com/android/dialer/app/calllog/CallLogActivity.java
@@ -34,6 +34,9 @@
 import com.android.dialer.database.CallLogQueryHandler;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.logging.ScreenEvent;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
+import com.android.dialer.postcall.PostCall;
 import com.android.dialer.util.TransactionSafeActivity;
 import com.android.dialer.util.ViewUtil;
 
@@ -48,7 +51,6 @@
   private ViewPagerTabs mViewPagerTabs;
   private ViewPagerAdapter mViewPagerAdapter;
   private CallLogFragment mAllCallsFragment;
-  private CallLogFragment mMissedCallsFragment;
   private String[] mTabTitles;
   private boolean mIsResumed;
 
@@ -93,9 +95,16 @@
 
   @Override
   protected void onResume() {
+    // Some calls may not be recorded (eg. from quick contact),
+    // so we should restart recording after these calls. (Recorded call is stopped)
+    PostCall.restartPerformanceRecordingIfARecentCallExist(this);
+    if (!PerformanceReport.isRecording()) {
+      PerformanceReport.startRecording();
+    }
+
     mIsResumed = true;
     super.onResume();
-    sendScreenViewForChildFragment(mViewPager.getCurrentItem());
+    sendScreenViewForChildFragment();
   }
 
   @Override
@@ -129,6 +138,7 @@
     }
 
     if (item.getItemId() == android.R.id.home) {
+      PerformanceReport.recordClick(UiAction.Type.CLOSE_CALL_HISTORY_WITH_CANCEL_BUTTON);
       final Intent intent = new Intent(this, DialtactsActivity.class);
       intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
       startActivity(intent);
@@ -148,7 +158,7 @@
   @Override
   public void onPageSelected(int position) {
     if (mIsResumed) {
-      sendScreenViewForChildFragment(position);
+      sendScreenViewForChildFragment();
     }
     mViewPagerTabs.onPageSelected(position);
   }
@@ -158,7 +168,7 @@
     mViewPagerTabs.onPageScrollStateChanged(state);
   }
 
-  private void sendScreenViewForChildFragment(int position) {
+  private void sendScreenViewForChildFragment() {
     Logger.get(this).logScreenView(ScreenEvent.Type.CALL_LOG_FILTER, this);
   }
 
@@ -169,6 +179,12 @@
     return position;
   }
 
+  @Override
+  public void onBackPressed() {
+    PerformanceReport.recordClick(UiAction.Type.PRESS_ANDROID_BACK_BUTTON);
+    super.onBackPressed();
+  }
+
   /** Adapter for the view pager. */
   public class ViewPagerAdapter extends FragmentPagerAdapter {
 
@@ -189,20 +205,16 @@
               CallLogQueryHandler.CALL_TYPE_ALL, true /* isCallLogActivity */);
         case TAB_INDEX_MISSED:
           return new CallLogFragment(Calls.MISSED_TYPE, true /* isCallLogActivity */);
+        default:
+          throw new IllegalStateException("No fragment at position " + position);
       }
-      throw new IllegalStateException("No fragment at position " + position);
     }
 
     @Override
     public Object instantiateItem(ViewGroup container, int position) {
       final CallLogFragment fragment = (CallLogFragment) super.instantiateItem(container, position);
-      switch (position) {
-        case TAB_INDEX_ALL:
+      if (position == TAB_INDEX_ALL) {
           mAllCallsFragment = fragment;
-          break;
-        case TAB_INDEX_MISSED:
-          mMissedCallsFragment = fragment;
-          break;
       }
       return fragment;
     }
diff --git a/java/com/android/dialer/app/calllog/CallLogAdapter.java b/java/com/android/dialer/app/calllog/CallLogAdapter.java
index 2f8a58c..f1d051a 100644
--- a/java/com/android/dialer/app/calllog/CallLogAdapter.java
+++ b/java/com/android/dialer/app/calllog/CallLogAdapter.java
@@ -19,6 +19,7 @@
 import android.app.Activity;
 import android.content.ContentUris;
 import android.content.DialogInterface;
+import android.content.DialogInterface.OnCancelListener;
 import android.content.res.Resources;
 import android.database.Cursor;
 import android.net.Uri;
@@ -52,7 +53,6 @@
 import com.android.contacts.common.ContactsUtils;
 import com.android.contacts.common.compat.PhoneNumberUtilsCompat;
 import com.android.contacts.common.preference.ContactsPreferences;
-import com.android.dialer.app.Bindings;
 import com.android.dialer.app.DialtactsActivity;
 import com.android.dialer.app.R;
 import com.android.dialer.app.calllog.CallLogGroupBuilder.GroupCreator;
@@ -66,10 +66,10 @@
 import com.android.dialer.calllogutils.PhoneAccountUtils;
 import com.android.dialer.calllogutils.PhoneCallDetails;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.AsyncTaskExecutor;
 import com.android.dialer.common.concurrent.AsyncTaskExecutors;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.enrichedcall.EnrichedCallCapabilities;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
@@ -80,12 +80,15 @@
 import com.android.dialer.logging.ContactSource;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.phonenumbercache.CallLogQuery;
 import com.android.dialer.phonenumbercache.ContactInfo;
 import com.android.dialer.phonenumbercache.ContactInfoHelper;
 import com.android.dialer.phonenumberutil.PhoneNumberHelper;
 import com.android.dialer.spam.Spam;
 import com.android.dialer.util.PermissionsUtil;
+import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
 import java.util.Map;
@@ -105,11 +108,12 @@
 
   private static final String KEY_EXPANDED_POSITION = "expanded_position";
   private static final String KEY_EXPANDED_ROW_ID = "expanded_row_id";
+  private static final String KEY_ACTION_MODE = "action_mode_selected_items";
 
   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;
+  public static final boolean ENABLE_CALL_LOG_MULTI_SELECT_FLAG = true;
 
   protected final Activity mActivity;
   protected final VoicemailPlaybackPresenter mVoicemailPlaybackPresenter;
@@ -117,6 +121,8 @@
   protected final CallLogCache mCallLogCache;
 
   private final CallFetcher mCallFetcher;
+  private final OnActionModeStateChangedListener mActionModeStateChangedListener;
+  private final MultiSelectRemoveView mMultiSelectRemoveView;
   @NonNull private final FilteredNumberAsyncQueryHandler mFilteredNumberAsyncQueryHandler;
   private final int mActivityType;
 
@@ -136,6 +142,8 @@
   private final CallLogAlertManager mCallLogAlertManager;
 
   public ActionMode mActionMode = null;
+  public boolean selectAllMode = false;
+  public boolean deselectAllMode = false;
   private final SparseArray<String> selectedItems = new SparseArray<>();
 
   private final ActionMode.Callback mActionModeCallback =
@@ -144,10 +152,17 @@
         // Called when the action mode is created; startActionMode() was called
         @Override
         public boolean onCreateActionMode(ActionMode mode, Menu menu) {
+          if (mActivity != null) {
+            announceforAccessibility(
+                mActivity.getCurrentFocus(),
+                mActivity.getString(R.string.description_entering_bulk_action_mode));
+          }
           mActionMode = mode;
           // Inflate a menu resource providing context menu items
           MenuInflater inflater = mode.getMenuInflater();
           inflater.inflate(R.menu.actionbar_delete, menu);
+          mMultiSelectRemoveView.showMultiSelectRemoveView(true);
+          mActionModeStateChangedListener.onActionModeStateChanged(true);
           return true;
         }
 
@@ -162,10 +177,10 @@
         @Override
         public boolean onActionItemClicked(ActionMode mode, MenuItem item) {
           if (item.getItemId() == R.id.action_bar_delete_menu_item) {
+            Logger.get(mActivity).logImpression(DialerImpression.Type.MULTISELECT_TAP_DELETE_ICON);
             if (selectedItems.size() > 0) {
               showDeleteSelectedItemsDialog();
             }
-            mode.finish();
             return true;
           } else {
             return false;
@@ -175,53 +190,78 @@
         // Called when the user exits the action mode
         @Override
         public void onDestroyActionMode(ActionMode mode) {
+          if (mActivity != null) {
+            announceforAccessibility(
+                mActivity.getCurrentFocus(),
+                mActivity.getString(R.string.description_leaving_bulk_action_mode));
+          }
           selectedItems.clear();
           mActionMode = null;
+          selectAllMode = false;
+          deselectAllMode = false;
+          mMultiSelectRemoveView.showMultiSelectRemoveView(false);
+          mActionModeStateChangedListener.onActionModeStateChanged(false);
           notifyDataSetChanged();
         }
       };
 
-  // Todo (uabdullah): Use plurals http://b/37751831
   private void showDeleteSelectedItemsDialog() {
-    AlertDialog.Builder builder = new AlertDialog.Builder(mActivity);
-    Assert.checkArgument(selectedItems.size() > 0);
-    String voicemailString =
-        selectedItems.size() == 1
-            ? mActivity.getResources().getString(R.string.voicemailMultiSelectVoicemail)
-            : mActivity.getResources().getString(R.string.voicemailMultiSelectVoicemails);
-    String deleteVoicemailTitle =
-        mActivity
-            .getResources()
-            .getString(R.string.voicemailMultiSelectDialogTitle, voicemailString);
     SparseArray<String> voicemailsToDeleteOnConfirmation = selectedItems.clone();
-    builder.setTitle(deleteVoicemailTitle);
-
-    builder.setPositiveButton(
-        mActivity.getResources().getString(R.string.voicemailMultiSelectDeleteConfirm),
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int id) {
-            deleteSelectedItems(voicemailsToDeleteOnConfirmation);
-            dialog.cancel();
-          }
-        });
-
-    builder.setNegativeButton(
-        mActivity.getResources().getString(R.string.voicemailMultiSelectDeleteCancel),
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int id) {
-            dialog.cancel();
-          }
-        });
-
-    AlertDialog dialog = builder.create();
-    dialog.show();
+    new AlertDialog.Builder(mActivity, R.style.AlertDialogCustom)
+        .setCancelable(true)
+        .setTitle(
+            mActivity
+                .getResources()
+                .getQuantityString(
+                    R.plurals.delete_voicemails_confirmation_dialog_title, selectedItems.size()))
+        .setPositiveButton(
+            R.string.voicemailMultiSelectDeleteConfirm,
+            new DialogInterface.OnClickListener() {
+              @Override
+              public void onClick(final DialogInterface dialog, final int button) {
+                LogUtil.i(
+                    "CallLogAdapter.showDeleteSelectedItemsDialog",
+                    "onClick, these items to delete " + voicemailsToDeleteOnConfirmation);
+                deleteSelectedItems(voicemailsToDeleteOnConfirmation);
+                mActionMode.finish();
+                dialog.cancel();
+                Logger.get(mActivity)
+                    .logImpression(
+                        DialerImpression.Type.MULTISELECT_DELETE_ENTRY_VIA_CONFIRMATION_DIALOG);
+              }
+            })
+        .setOnCancelListener(
+            new OnCancelListener() {
+              @Override
+              public void onCancel(DialogInterface dialogInterface) {
+                Logger.get(mActivity)
+                    .logImpression(
+                        DialerImpression.Type
+                            .MULTISELECT_CANCEL_CONFIRMATION_DIALOG_VIA_CANCEL_TOUCH);
+                dialogInterface.cancel();
+              }
+            })
+        .setNegativeButton(
+            R.string.voicemailMultiSelectDeleteCancel,
+            new DialogInterface.OnClickListener() {
+              @Override
+              public void onClick(final DialogInterface dialog, final int button) {
+                Logger.get(mActivity)
+                    .logImpression(
+                        DialerImpression.Type
+                            .MULTISELECT_CANCEL_CONFIRMATION_DIALOG_VIA_CANCEL_BUTTON);
+                dialog.cancel();
+              }
+            })
+        .show();
+    Logger.get(mActivity)
+        .logImpression(DialerImpression.Type.MULTISELECT_DISPLAY_DELETE_CONFIRMATION_DIALOG);
   }
 
   private void deleteSelectedItems(SparseArray<String> voicemailsToDelete) {
     for (int i = 0; i < voicemailsToDelete.size(); i++) {
       String voicemailUri = voicemailsToDelete.get(voicemailsToDelete.keyAt(i));
+      LogUtil.i("CallLogAdapter.deleteSelectedItems", "deleting uri:" + voicemailUri);
       CallLogAsyncTaskUtil.deleteVoicemail(mActivity, Uri.parse(voicemailUri), null);
     }
   }
@@ -235,8 +275,13 @@
               && mVoicemailPlaybackPresenter != null) {
             if (v.getId() == R.id.primary_action_view || v.getId() == R.id.quick_contact_photo) {
               if (mActionMode == null) {
+                Logger.get(mActivity)
+                    .logImpression(
+                        DialerImpression.Type.MULTISELECT_LONG_PRESS_ENTER_MULTI_SELECT_MODE);
                 mActionMode = v.startActionMode(mActionModeCallback);
               }
+              Logger.get(mActivity)
+                  .logImpression(DialerImpression.Type.MULTISELECT_LONG_PRESS_TAP_ENTRY);
               CallLogListItemViewHolder viewHolder = (CallLogListItemViewHolder) v.getTag();
               viewHolder.quickContactView.setVisibility(View.GONE);
               viewHolder.checkBoxView.setVisibility(View.VISIBLE);
@@ -253,27 +298,26 @@
       new View.OnClickListener() {
         @Override
         public void onClick(View v) {
+          PerformanceReport.recordClick(UiAction.Type.CLICK_CALL_LOG_ITEM);
+
           CallLogListItemViewHolder viewHolder = (CallLogListItemViewHolder) v.getTag();
           if (viewHolder == null) {
             return;
           }
           if (mActionMode != null && viewHolder.voicemailUri != null) {
+            selectAllMode = false;
+            deselectAllMode = false;
+            mMultiSelectRemoveView.setSelectAllModeToFalse();
             int id = getVoicemailId(viewHolder.voicemailUri);
             if (selectedItems.get(id) != null) {
-              selectedItems.delete(id);
-              viewHolder.checkBoxView.setVisibility(View.GONE);
-              viewHolder.quickContactView.setVisibility(View.VISIBLE);
+              Logger.get(mActivity)
+                  .logImpression(DialerImpression.Type.MULTISELECT_SINGLE_PRESS_UNSELECT_ENTRY);
+              uncheckMarkCallLogEntry(viewHolder, id);
             } else {
-              viewHolder.quickContactView.setVisibility(View.GONE);
-              viewHolder.checkBoxView.setVisibility(View.VISIBLE);
-              selectedItems.put(getVoicemailId(viewHolder.voicemailUri), viewHolder.voicemailUri);
+              Logger.get(mActivity)
+                  .logImpression(DialerImpression.Type.MULTISELECT_SINGLE_PRESS_SELECT_ENTRY);
+              checkMarkCallLogEntry(viewHolder);
             }
-
-            if (selectedItems.size() == 0) {
-              mActionMode.finish();
-              return;
-            }
-            mActionMode.setTitle(Integer.toString(selectedItems.size()));
             return;
           }
 
@@ -312,6 +356,50 @@
         }
       };
 
+  private void checkMarkCallLogEntry(CallLogListItemViewHolder viewHolder) {
+    announceforAccessibility(
+        mActivity.getCurrentFocus(),
+        mActivity.getString(
+            R.string.description_selecting_bulk_action_mode, viewHolder.nameOrNumber));
+    viewHolder.quickContactView.setVisibility(View.GONE);
+    viewHolder.checkBoxView.setVisibility(View.VISIBLE);
+    selectedItems.put(getVoicemailId(viewHolder.voicemailUri), viewHolder.voicemailUri);
+    updateActionBar();
+  }
+
+  private void announceforAccessibility(View view, String announcement) {
+    if (view != null) {
+      view.announceForAccessibility(announcement);
+    }
+  }
+
+  private void updateActionBar() {
+    if (mActionMode == null && selectedItems.size() > 0) {
+      Logger.get(mActivity)
+          .logImpression(DialerImpression.Type.MULTISELECT_ROTATE_AND_SHOW_ACTION_MODE);
+      mActivity.startActionMode(mActionModeCallback);
+    }
+    if (mActionMode != null) {
+      mActionMode.setTitle(
+          mActivity
+              .getResources()
+              .getString(
+                  R.string.voicemailMultiSelectActionBarTitle,
+                  Integer.toString(selectedItems.size())));
+    }
+  }
+
+  private void uncheckMarkCallLogEntry(CallLogListItemViewHolder viewHolder, int id) {
+    announceforAccessibility(
+        mActivity.getCurrentFocus(),
+        mActivity.getString(
+            R.string.description_unselecting_bulk_action_mode, viewHolder.nameOrNumber));
+    selectedItems.delete(id);
+    viewHolder.checkBoxView.setVisibility(View.GONE);
+    viewHolder.quickContactView.setVisibility(View.VISIBLE);
+    updateActionBar();
+  }
+
   private static int getVoicemailId(String voicemailUri) {
     Assert.checkArgument(voicemailUri != null);
     Assert.checkArgument(voicemailUri.length() > 0);
@@ -358,6 +446,8 @@
       Activity activity,
       ViewGroup alertContainer,
       CallFetcher callFetcher,
+      MultiSelectRemoveView multiSelectRemoveView,
+      OnActionModeStateChangedListener actionModeStateChangedListener,
       CallLogCache callLogCache,
       ContactInfoCache contactInfoCache,
       VoicemailPlaybackPresenter voicemailPlaybackPresenter,
@@ -367,6 +457,8 @@
 
     mActivity = activity;
     mCallFetcher = callFetcher;
+    mActionModeStateChangedListener = actionModeStateChangedListener;
+    mMultiSelectRemoveView = multiSelectRemoveView;
     mVoicemailPlaybackPresenter = voicemailPlaybackPresenter;
     if (mVoicemailPlaybackPresenter != null) {
       mVoicemailPlaybackPresenter.setOnVoicemailDeletedListener(this);
@@ -426,6 +518,25 @@
   public void onSaveInstanceState(Bundle outState) {
     outState.putInt(KEY_EXPANDED_POSITION, mCurrentlyExpandedPosition);
     outState.putLong(KEY_EXPANDED_ROW_ID, mCurrentlyExpandedRowId);
+
+    ArrayList<String> listOfSelectedItems = new ArrayList<>();
+
+    if (selectedItems.size() > 0) {
+      for (int i = 0; i < selectedItems.size(); i++) {
+        int id = selectedItems.keyAt(i);
+        String voicemailUri = selectedItems.valueAt(i);
+        LogUtil.i(
+            "CallLogAdapter.onSaveInstanceState", "index %d, id=%d, uri=%s ", i, id, voicemailUri);
+        listOfSelectedItems.add(voicemailUri);
+      }
+    }
+    outState.putStringArrayList(KEY_ACTION_MODE, listOfSelectedItems);
+
+    LogUtil.i(
+        "CallLogAdapter.onSaveInstanceState",
+        "saved: %d, selectedItemsSize:%d",
+        listOfSelectedItems.size(),
+        selectedItems.size());
   }
 
   public void onRestoreInstanceState(Bundle savedInstanceState) {
@@ -434,6 +545,33 @@
           savedInstanceState.getInt(KEY_EXPANDED_POSITION, RecyclerView.NO_POSITION);
       mCurrentlyExpandedRowId =
           savedInstanceState.getLong(KEY_EXPANDED_ROW_ID, NO_EXPANDED_LIST_ITEM);
+      // Restoring multi selected entries
+      ArrayList<String> listOfSelectedItems =
+          savedInstanceState.getStringArrayList(KEY_ACTION_MODE);
+      LogUtil.i(
+          "CallLogAdapter.onRestoreInstanceState",
+          "restored selectedItemsList:%d",
+          listOfSelectedItems.size());
+
+      if (!listOfSelectedItems.isEmpty()) {
+        for (int i = 0; i < listOfSelectedItems.size(); i++) {
+          String voicemailUri = listOfSelectedItems.get(i);
+          int id = getVoicemailId(voicemailUri);
+          LogUtil.i(
+              "CallLogAdapter.onRestoreInstanceState",
+              "restoring selected index %d, id=%d, uri=%s ",
+              i,
+              id,
+              voicemailUri);
+          selectedItems.put(id, voicemailUri);
+        }
+
+        LogUtil.i(
+            "CallLogAdapter.onRestoreInstance",
+            "restored selectedItems %s",
+            selectedItems.toString());
+        updateActionBar();
+      }
     }
   }
 
@@ -521,6 +659,7 @@
             mBlockReportSpamListener,
             mExpandCollapseListener,
             mLongPressListener,
+            mActionModeStateChangedListener,
             mCallLogCache,
             mCallLogListItemHelper,
             mVoicemailPlaybackPresenter);
@@ -546,7 +685,7 @@
     Trace.beginSection("onBindViewHolder: " + position);
     switch (getItemViewType(position)) {
       case VIEW_TYPE_ALERT:
-        //Do nothing
+        // Do nothing
         break;
       default:
         bindCallLogListViewHolder(viewHolder, position);
@@ -559,6 +698,8 @@
   public void onViewRecycled(ViewHolder viewHolder) {
     if (viewHolder.getItemViewType() == VIEW_TYPE_CALLLOG) {
       CallLogListItemViewHolder views = (CallLogListItemViewHolder) viewHolder;
+      updateCheckMarkedStatusOfEntry(views);
+
       if (views.asyncTask != null) {
         views.asyncTask.cancel(true);
       }
@@ -591,6 +732,8 @@
       return;
     }
     CallLogListItemViewHolder views = (CallLogListItemViewHolder) viewHolder;
+    updateCheckMarkedStatusOfEntry(views);
+
     views.isLoaded = false;
     int groupSize = getGroupSize(position);
     CallDetailsEntries callDetailsEntries = createCallDetailsEntries(c, groupSize);
@@ -609,6 +752,17 @@
     loadAndRender(views, views.rowId, details, callDetailsEntries);
   }
 
+  private void updateCheckMarkedStatusOfEntry(CallLogListItemViewHolder views) {
+    if (selectedItems.size() > 0 && views.voicemailUri != null) {
+      int id = getVoicemailId(views.voicemailUri);
+      if (selectedItems.get(id) != null) {
+        checkMarkCallLogEntry(views);
+      } else {
+        uncheckMarkCallLogEntry(views, id);
+      }
+    }
+  }
+
   private void loadAndRender(
       final CallLogListItemViewHolder views,
       final long rowId,
@@ -840,8 +994,7 @@
               details.countryIso,
               details.cachedContactInfo,
               position
-                  < Bindings.get(mActivity)
-                      .getConfigProvider()
+                  < ConfigProviderBindings.get(mActivity)
                       .getLong("number_of_call_to_do_remote_lookup", 5L));
     }
     CharSequence formattedNumber =
@@ -917,6 +1070,12 @@
     views.workIconView.setVisibility(
         details.contactUserType == ContactsUtils.USER_TYPE_WORK ? View.VISIBLE : View.GONE);
 
+    if (selectAllMode && views.voicemailUri != null) {
+      selectedItems.put(getVoicemailId(views.voicemailUri), views.voicemailUri);
+    }
+    if (deselectAllMode && views.voicemailUri != null) {
+      selectedItems.delete(getVoicemailId(views.voicemailUri));
+    }
     if (views.voicemailUri != null
         && selectedItems.get(getVoicemailId(views.voicemailUri)) != null) {
       views.checkBoxView.setVisibility(View.VISIBLE);
@@ -925,7 +1084,6 @@
       views.checkBoxView.setVisibility(View.GONE);
       views.quickContactView.setVisibility(View.VISIBLE);
     }
-
     mCallLogListItemHelper.setPhoneCallDetails(views, details);
     if (mCurrentlyExpandedRowId == views.rowId) {
       // In case ViewHolders were added/removed, update the expanded position if the rowIds
@@ -1192,9 +1350,49 @@
     notifyDataSetChanged();
   }
 
+  public void onAllSelected() {
+    selectAllMode = true;
+    deselectAllMode = false;
+    selectedItems.clear();
+    for (int i = 0; i < getItemCount(); i++) {
+      Cursor c = (Cursor) getItem(i);
+      if (c != null) {
+        Assert.checkArgument(CallLogQuery.VOICEMAIL_URI == c.getColumnIndex("voicemail_uri"));
+        String voicemailUri = c.getString(CallLogQuery.VOICEMAIL_URI);
+        selectedItems.put(getVoicemailId(voicemailUri), voicemailUri);
+      }
+    }
+    updateActionBar();
+    notifyDataSetChanged();
+  }
+
+  public void onAllDeselected() {
+    selectAllMode = false;
+    deselectAllMode = true;
+    selectedItems.clear();
+    updateActionBar();
+    notifyDataSetChanged();
+  }
+
   /** Interface used to initiate a refresh of the content. */
   public interface CallFetcher {
 
     void fetchCalls();
   }
+
+  /** Interface used to allow single tap multi select for contact photos. */
+  public interface OnActionModeStateChangedListener {
+
+    void onActionModeStateChanged(boolean isEnabled);
+
+    boolean isActionModeStateEnabled();
+  }
+
+  /** Interface used to hide the fragments. */
+  public interface MultiSelectRemoveView {
+
+    void showMultiSelectRemoveView(boolean show);
+
+    void setSelectAllModeToFalse();
+  }
 }
diff --git a/java/com/android/dialer/app/calllog/CallLogAsyncTaskUtil.java b/java/com/android/dialer/app/calllog/CallLogAsyncTaskUtil.java
index a5553d1..10866aa 100644
--- a/java/com/android/dialer/app/calllog/CallLogAsyncTaskUtil.java
+++ b/java/com/android/dialer/app/calllog/CallLogAsyncTaskUtil.java
@@ -28,6 +28,7 @@
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.text.TextUtils;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.AsyncTaskExecutor;
 import com.android.dialer.common.concurrent.AsyncTaskExecutors;
 import com.android.dialer.util.PermissionsUtil;
@@ -45,6 +46,7 @@
 
   public static void markVoicemailAsRead(
       @NonNull final Context context, @NonNull final Uri voicemailUri) {
+    LogUtil.enterBlock("CallLogAsyncTaskUtil.markVoicemailAsRead, voicemailUri: " + voicemailUri);
     if (sAsyncTaskExecutor == null) {
       initTaskExecutor();
     }
@@ -66,9 +68,7 @@
               uploadVoicemailLocalChangesToServer(context);
             }
 
-            Intent intent = new Intent(context, CallLogNotificationsService.class);
-            intent.setAction(CallLogNotificationsService.ACTION_MARK_NEW_VOICEMAILS_AS_OLD);
-            context.startService(intent);
+            CallLogNotificationsService.markAllNewVoicemailsAsOld(context);
             return null;
           }
         });
diff --git a/java/com/android/dialer/app/calllog/CallLogFragment.java b/java/com/android/dialer/app/calllog/CallLogFragment.java
index 6e4b23f..b03a4ad 100644
--- a/java/com/android/dialer/app/calllog/CallLogFragment.java
+++ b/java/com/android/dialer/app/calllog/CallLogFragment.java
@@ -35,53 +35,68 @@
 import android.support.annotation.CallSuper;
 import android.support.annotation.Nullable;
 import android.support.v13.app.FragmentCompat;
+import android.support.v13.app.FragmentCompat.OnRequestPermissionsResultCallback;
 import android.support.v7.app.AppCompatActivity;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
+import android.view.View.OnClickListener;
 import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.TextView;
 import com.android.dialer.app.Bindings;
 import com.android.dialer.app.R;
+import com.android.dialer.app.calllog.CallLogAdapter.CallFetcher;
+import com.android.dialer.app.calllog.CallLogAdapter.MultiSelectRemoveView;
 import com.android.dialer.app.calllog.calllogcache.CallLogCache;
 import com.android.dialer.app.contactinfo.ContactInfoCache;
 import com.android.dialer.app.contactinfo.ContactInfoCache.OnContactInfoChangedListener;
 import com.android.dialer.app.contactinfo.ExpirableCacheHeadlessFragment;
 import com.android.dialer.app.list.ListsFragment;
 import com.android.dialer.app.voicemail.VoicemailPlaybackPresenter;
-import com.android.dialer.app.widget.EmptyContentView;
-import com.android.dialer.app.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
 import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.database.CallLogQueryHandler;
+import com.android.dialer.database.CallLogQueryHandler.Listener;
 import com.android.dialer.location.GeoUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+import com.android.dialer.oem.CequintCallerIdManager;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.phonenumbercache.ContactInfoHelper;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
+import com.android.dialer.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
+import java.util.Arrays;
 
 /**
  * Displays a list of call log entries. To filter for a particular kind of call (all, missed or
  * voicemails), specify it in the constructor.
  */
 public class CallLogFragment extends Fragment
-    implements CallLogQueryHandler.Listener,
-        CallLogAdapter.CallFetcher,
+    implements Listener,
+        CallFetcher,
+        MultiSelectRemoveView,
         OnEmptyViewActionButtonClickedListener,
-        FragmentCompat.OnRequestPermissionsResultCallback,
-        CallLogModalAlertManager.Listener {
+        OnRequestPermissionsResultCallback,
+        CallLogModalAlertManager.Listener,
+        OnClickListener {
   private static final String KEY_FILTER_TYPE = "filter_type";
   private static final String KEY_LOG_LIMIT = "log_limit";
   private static final String KEY_DATE_LIMIT = "date_limit";
   private static final String KEY_IS_CALL_LOG_ACTIVITY = "is_call_log_activity";
   private static final String KEY_HAS_READ_CALL_LOG_PERMISSION = "has_read_call_log_permission";
   private static final String KEY_REFRESH_DATA_REQUIRED = "refresh_data_required";
+  private static final String KEY_SELECT_ALL_MODE = "select_all_mode_checked";
 
   // No limit specified for the number of logs to show; use the CallLogQueryHandler's default.
   private static final int NO_LOG_LIMIT = -1;
   // No date-based filtering.
   private static final int NO_DATE_LIMIT = 0;
 
-  private static final int READ_CALL_LOG_PERMISSION_REQUEST_CODE = 1;
+  private static final int PHONE_PERMISSIONS_REQUEST_CODE = 1;
 
   private static final int EVENT_UPDATE_DISPLAY = 1;
 
@@ -90,6 +105,9 @@
   // See issue 6363009
   private final ContentObserver mCallLogObserver = new CustomContentObserver();
   private final ContentObserver mContactsObserver = new CustomContentObserver();
+  private View mMultiSelectUnSelectAllViewContent;
+  private TextView mSelectUnselectAllViewText;
+  private ImageView mSelectUnselectAllIcon;
   private RecyclerView mRecyclerView;
   private LinearLayoutManager mLayoutManager;
   private CallLogAdapter mAdapter;
@@ -123,6 +141,7 @@
    * True if this instance of the CallLogFragment shown in the CallLogActivity.
    */
   private boolean mIsCallLogActivity = false;
+  private boolean selectAllMode;
   private final Handler mDisplayUpdateHandler =
       new Handler() {
         @Override
@@ -194,6 +213,7 @@
       mIsCallLogActivity = state.getBoolean(KEY_IS_CALL_LOG_ACTIVITY, mIsCallLogActivity);
       mHasReadCallLogPermission = state.getBoolean(KEY_HAS_READ_CALL_LOG_PERMISSION, false);
       mRefreshDataRequired = state.getBoolean(KEY_REFRESH_DATA_REQUIRED, mRefreshDataRequired);
+      selectAllMode = state.getBoolean(KEY_SELECT_ALL_MODE, false);
     }
 
     final Activity activity = getActivity();
@@ -290,12 +310,20 @@
     mRecyclerView.setHasFixedSize(true);
     mLayoutManager = new LinearLayoutManager(getActivity());
     mRecyclerView.setLayoutManager(mLayoutManager);
+    PerformanceReport.logOnScrollStateChange(mRecyclerView);
     mEmptyListView = (EmptyContentView) view.findViewById(R.id.empty_list_view);
     mEmptyListView.setImage(R.drawable.empty_call_log);
     mEmptyListView.setActionClickedListener(this);
     mModalAlertView = (ViewGroup) view.findViewById(R.id.modal_message_container);
     mModalAlertManager =
         new CallLogModalAlertManager(LayoutInflater.from(getContext()), mModalAlertView, this);
+    mMultiSelectUnSelectAllViewContent =
+        view.findViewById(R.id.multi_select_select_all_view_content);
+    mSelectUnselectAllViewText = (TextView) view.findViewById(R.id.select_all_view_text);
+    mSelectUnselectAllIcon = (ImageView) view.findViewById(R.id.select_all_view_icon);
+    mMultiSelectUnSelectAllViewContent.setOnClickListener(null);
+    mSelectUnselectAllIcon.setOnClickListener(this);
+    mSelectUnselectAllViewText.setOnClickListener(this);
   }
 
   protected void setupData() {
@@ -317,6 +345,10 @@
                 getActivity(),
                 mRecyclerView,
                 this,
+                this,
+                activityType == CallLogAdapter.ACTIVITY_TYPE_DIALTACTS
+                    ? (CallLogAdapter.OnActionModeStateChangedListener) getActivity()
+                    : null,
                 CallLogCache.getCallLogCache(getActivity()),
                 mContactInfoCache,
                 getVoicemailPlaybackPresenter(),
@@ -335,9 +367,18 @@
   public void onActivityCreated(Bundle savedInstanceState) {
     super.onActivityCreated(savedInstanceState);
     setupData();
+    updateSelectAllState(savedInstanceState);
     mAdapter.onRestoreInstanceState(savedInstanceState);
   }
 
+  private void updateSelectAllState(Bundle savedInstanceState) {
+    if (savedInstanceState != null) {
+      if (savedInstanceState.getBoolean(KEY_SELECT_ALL_MODE, false)) {
+        updateSelectAllIcon();
+      }
+    }
+  }
+
   @Override
   public void onViewCreated(View view, Bundle savedInstanceState) {
     super.onViewCreated(view, savedInstanceState);
@@ -380,6 +421,16 @@
   }
 
   @Override
+  public void onStart() {
+    super.onStart();
+    CequintCallerIdManager cequintCallerIdManager = null;
+    if (CequintCallerIdManager.isCequintCallerIdEnabled(getContext())) {
+      cequintCallerIdManager = CequintCallerIdManager.createInstanceForCallLog();
+    }
+    mContactInfoCache.setCequintCallerIdManager(cequintCallerIdManager);
+  }
+
+  @Override
   public void onStop() {
     updateOnTransition();
 
@@ -407,7 +458,7 @@
     outState.putBoolean(KEY_IS_CALL_LOG_ACTIVITY, mIsCallLogActivity);
     outState.putBoolean(KEY_HAS_READ_CALL_LOG_PERMISSION, mHasReadCallLogPermission);
     outState.putBoolean(KEY_REFRESH_DATA_REQUIRED, mRefreshDataRequired);
-
+    outState.putBoolean(KEY_SELECT_ALL_MODE, selectAllMode);
     mAdapter.onSaveInstanceState(outState);
   }
 
@@ -451,6 +502,8 @@
       mEmptyListView.setActionLabel(EmptyContentView.NO_LABEL);
     } else if (filterType == CallLogQueryHandler.CALL_TYPE_ALL) {
       mEmptyListView.setActionLabel(R.string.call_log_all_empty_action);
+    } else {
+      mEmptyListView.setActionLabel(EmptyContentView.NO_LABEL);
     }
   }
 
@@ -503,7 +556,8 @@
     if (mKeyguardManager != null
         && !mKeyguardManager.inKeyguardRestrictedInputMode()
         && mCallTypeFilter == Calls.VOICEMAIL_TYPE) {
-      CallLogNotificationsService.markNewVoicemailsAsOld(getActivity(), null);
+      LogUtil.i("CallLogFragment.updateOnTransition", "clearing all new voicemails");
+      CallLogNotificationsService.markAllNewVoicemailsAsOld(getActivity());
     }
   }
 
@@ -514,9 +568,14 @@
       return;
     }
 
-    if (!PermissionsUtil.hasPermission(activity, READ_CALL_LOG)) {
-      FragmentCompat.requestPermissions(
-          this, new String[] {READ_CALL_LOG}, READ_CALL_LOG_PERMISSION_REQUEST_CODE);
+    String[] deniedPermissions =
+        PermissionsUtil.getPermissionsCurrentlyDenied(
+            getContext(), PermissionsUtil.allPhoneGroupPermissionsUsedInDialer);
+    if (deniedPermissions.length > 0) {
+      LogUtil.i(
+          "CallLogFragment.onEmptyViewActionButtonClicked",
+          "Requesting permissions: " + Arrays.toString(deniedPermissions));
+      FragmentCompat.requestPermissions(this, deniedPermissions, PHONE_PERMISSIONS_REQUEST_CODE);
     } else if (!mIsCallLogActivity) {
       // Show dialpad if we are not in the call log activity.
       ((HostInterface) activity).showDialpad();
@@ -526,7 +585,7 @@
   @Override
   public void onRequestPermissionsResult(
       int requestCode, String[] permissions, int[] grantResults) {
-    if (requestCode == READ_CALL_LOG_PERMISSION_REQUEST_CODE) {
+    if (requestCode == PHONE_PERMISSIONS_REQUEST_CODE) {
       if (grantResults.length >= 1 && PackageManager.PERMISSION_GRANTED == grantResults[0]) {
         // Force a refresh of the data since we were missing the permission before this.
         mRefreshDataRequired = true;
@@ -589,6 +648,44 @@
     }
   }
 
+  @Override
+  public void showMultiSelectRemoveView(boolean show) {
+    mMultiSelectUnSelectAllViewContent.setVisibility(show ? View.VISIBLE : View.GONE);
+    mMultiSelectUnSelectAllViewContent.setAlpha(show ? 0 : 1);
+    mMultiSelectUnSelectAllViewContent.animate().alpha(show ? 1 : 0).start();
+    ((ListsFragment) getParentFragment()).showMultiSelectRemoveView(show);
+  }
+
+  @Override
+  public void setSelectAllModeToFalse() {
+    selectAllMode = false;
+    mSelectUnselectAllIcon.setImageDrawable(
+        getContext().getDrawable(R.drawable.ic_empty_check_mark_white_24dp));
+  }
+
+  @Override
+  public void onClick(View v) {
+    selectAllMode = !selectAllMode;
+    if (selectAllMode) {
+      Logger.get(v.getContext()).logImpression(DialerImpression.Type.MULTISELECT_SELECT_ALL);
+    } else {
+      Logger.get(v.getContext()).logImpression(DialerImpression.Type.MULTISELECT_UNSELECT_ALL);
+    }
+    updateSelectAllIcon();
+  }
+
+  private void updateSelectAllIcon() {
+    if (selectAllMode) {
+      mSelectUnselectAllIcon.setImageDrawable(
+          getContext().getDrawable(R.drawable.ic_check_mark_blue_24dp));
+      getAdapter().onAllSelected();
+    } else {
+      mSelectUnselectAllIcon.setImageDrawable(
+          getContext().getDrawable(R.drawable.ic_empty_check_mark_white_24dp));
+      getAdapter().onAllDeselected();
+    }
+  }
+
   public interface HostInterface {
 
     void showDialpad();
diff --git a/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java b/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java
index 1daccd1..c59f0dd 100644
--- a/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java
+++ b/java/com/android/dialer/app/calllog/CallLogListItemViewHolder.java
@@ -17,6 +17,7 @@
 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;
@@ -25,32 +26,37 @@
 import android.provider.CallLog;
 import android.provider.CallLog.Calls;
 import android.provider.ContactsContract.CommonDataKinds.Phone;
+import android.support.annotation.IntDef;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.annotation.VisibleForTesting;
 import android.support.v7.widget.CardView;
 import android.support.v7.widget.RecyclerView;
+import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
-import android.telecom.TelecomManager;
 import android.telephony.PhoneNumberUtils;
 import android.text.BidiFormatter;
 import android.text.TextDirectionHeuristics;
 import android.text.TextUtils;
 import android.view.ContextMenu;
+import android.view.LayoutInflater;
 import android.view.MenuItem;
 import android.view.View;
 import android.view.ViewStub;
 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;
 import com.android.contacts.common.dialog.CallSubjectDialog;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
+import com.android.contacts.common.lettertiles.LetterTileDrawable.ContactType;
 import com.android.contacts.common.util.UriUtils;
 import com.android.dialer.app.DialtactsActivity;
 import com.android.dialer.app.R;
+import com.android.dialer.app.calllog.CallLogAdapter.OnActionModeStateChangedListener;
 import com.android.dialer.app.calllog.calllogcache.CallLogCache;
 import com.android.dialer.app.voicemail.VoicemailPlaybackLayout;
 import com.android.dialer.app.voicemail.VoicemailPlaybackPresenter;
@@ -58,23 +64,31 @@
 import com.android.dialer.blocking.FilteredNumberCompat;
 import com.android.dialer.blocking.FilteredNumbersUtil;
 import com.android.dialer.callcomposer.CallComposerActivity;
-import com.android.dialer.callcomposer.CallComposerContact;
+import com.android.dialer.calldetails.CallDetailsActivity;
 import com.android.dialer.calldetails.CallDetailsEntries;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.configprovider.ConfigProviderBindings;
+import com.android.dialer.dialercontact.DialerContact;
+import com.android.dialer.dialercontact.SimDetails;
 import com.android.dialer.lightbringer.Lightbringer;
 import com.android.dialer.lightbringer.LightbringerComponent;
 import com.android.dialer.logging.ContactSource;
 import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.InteractionEvent;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.logging.ScreenEvent;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.phonenumbercache.CachedNumberLookupService;
 import com.android.dialer.phonenumbercache.ContactInfo;
 import com.android.dialer.phonenumbercache.PhoneNumberCache;
 import com.android.dialer.phonenumberutil.PhoneNumberHelper;
 import com.android.dialer.util.CallUtil;
 import com.android.dialer.util.DialerUtils;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
 
 /**
  * This is an object containing references to views contained by the call log list item. This
@@ -90,7 +104,7 @@
   /** The root view of the call log list item */
   public final View rootView;
   /** The quick contact badge for the contact. */
-  public final QuickContactBadge quickContactView;
+  public final DialerQuickContactBadge quickContactView;
   /** The primary action view of the entry. */
   public final View primaryActionView;
   /** The details of the phone call. */
@@ -108,6 +122,7 @@
   private final CachedNumberLookupService mCachedNumberLookupService;
   private final VoicemailPlaybackPresenter mVoicemailPlaybackPresenter;
   private final OnClickListener mBlockReportListener;
+  @HostUi private final int hostUi;
   /** Whether the data fields are populated by the worker thread, ready to be shown. */
   public boolean isLoaded;
   /** The view containing call log item actions. Null until the ViewStub is inflated. */
@@ -201,6 +216,7 @@
   public boolean lightbringerReady;
 
   private View.OnClickListener mExpandCollapseListener;
+  private final OnActionModeStateChangedListener onActionModeStateChangedListener;
   private final View.OnLongClickListener longPressListener;
   private boolean mVoicemailPrimaryActionButtonClicked;
 
@@ -216,11 +232,12 @@
       OnClickListener blockReportListener,
       View.OnClickListener expandCollapseListener,
       View.OnLongClickListener longClickListener,
+      CallLogAdapter.OnActionModeStateChangedListener actionModeStateChangedListener,
       CallLogCache callLogCache,
       CallLogListItemHelper callLogListItemHelper,
       VoicemailPlaybackPresenter voicemailPlaybackPresenter,
       View rootView,
-      QuickContactBadge quickContactView,
+      DialerQuickContactBadge dialerQuickContactView,
       View primaryActionView,
       PhoneCallDetailsViews phoneCallDetailsViews,
       CardView callLogEntryView,
@@ -230,6 +247,7 @@
 
     mContext = context;
     mExpandCollapseListener = expandCollapseListener;
+    onActionModeStateChangedListener = actionModeStateChangedListener;
     longPressListener = longClickListener;
     mCallLogCache = callLogCache;
     mCallLogListItemHelper = callLogListItemHelper;
@@ -238,7 +256,7 @@
     mCachedNumberLookupService = PhoneNumberCache.get(mContext).getCachedNumberLookupService();
 
     this.rootView = rootView;
-    this.quickContactView = quickContactView;
+    this.quickContactView = dialerQuickContactView;
     this.primaryActionView = primaryActionView;
     this.phoneCallDetailsViews = phoneCallDetailsViews;
     this.callLogEntryView = callLogEntryView;
@@ -251,6 +269,23 @@
     phoneCallDetailsViews.nameView.setElegantTextHeight(false);
     phoneCallDetailsViews.callLocationAndDate.setElegantTextHeight(false);
 
+    if (mContext instanceof CallLogActivity) {
+      hostUi = HostUi.CALL_HISTORY;
+      Logger.get(mContext)
+          .logQuickContactOnTouch(
+              quickContactView, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_CALL_HISTORY, true);
+    } else if (mVoicemailPlaybackPresenter == null) {
+      hostUi = HostUi.CALL_LOG;
+      Logger.get(mContext)
+          .logQuickContactOnTouch(
+              quickContactView, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_CALL_LOG, true);
+    } else {
+      hostUi = HostUi.VOICEMAIL;
+      Logger.get(mContext)
+          .logQuickContactOnTouch(
+              quickContactView, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_VOICEMAIL, false);
+    }
+
     quickContactView.setOverlay(null);
     if (CompatUtils.hasPrioritizedMimeType()) {
       quickContactView.setPrioritizedMimeType(Phone.CONTENT_ITEM_TYPE);
@@ -264,6 +299,8 @@
                 CallLogAdapter.ENABLE_CALL_LOG_MULTI_SELECT_FLAG)) {
       primaryActionView.setOnLongClickListener(longPressListener);
       quickContactView.setOnLongClickListener(longPressListener);
+      quickContactView.setMulitSelectListeners(
+          mExpandCollapseListener, onActionModeStateChangedListener);
     } else {
       primaryActionView.setOnCreateContextMenuListener(this);
     }
@@ -275,6 +312,7 @@
       OnClickListener blockReportListener,
       View.OnClickListener expandCollapseListener,
       View.OnLongClickListener longClickListener,
+      CallLogAdapter.OnActionModeStateChangedListener actionModeStateChangeListener,
       CallLogCache callLogCache,
       CallLogListItemHelper callLogListItemHelper,
       VoicemailPlaybackPresenter voicemailPlaybackPresenter) {
@@ -284,11 +322,12 @@
         blockReportListener,
         expandCollapseListener,
         longClickListener,
+        actionModeStateChangeListener,
         callLogCache,
         callLogListItemHelper,
         voicemailPlaybackPresenter,
         view,
-        (QuickContactBadge) view.findViewById(R.id.quick_contact_photo),
+        (DialerQuickContactBadge) view.findViewById(R.id.quick_contact_photo),
         view.findViewById(R.id.primary_action_view),
         PhoneCallDetailsViews.fromView(view),
         (CardView) view.findViewById(R.id.call_log_row),
@@ -297,6 +336,11 @@
   }
 
   public static CallLogListItemViewHolder createForTest(Context context) {
+    return createForTest(context, null);
+  }
+
+  static CallLogListItemViewHolder createForTest(
+      Context context, VoicemailPlaybackPresenter voicemailPlaybackPresenter) {
     Resources resources = context.getResources();
     CallLogCache callLogCache = CallLogCache.getCallLogCache(context);
     PhoneCallDetailsHelper phoneCallDetailsHelper =
@@ -308,11 +352,12 @@
             null,
             null /* expandCollapseListener */,
             null,
+            null,
             callLogCache,
             new CallLogListItemHelper(phoneCallDetailsHelper, resources, callLogCache),
-            null /* voicemailPlaybackPresenter */,
-            new View(context),
-            new QuickContactBadge(context),
+            voicemailPlaybackPresenter,
+            LayoutInflater.from(context).inflate(R.layout.call_log_list_item, null),
+            new DialerQuickContactBadge(context),
             new View(context),
             PhoneCallDetailsViews.createForTest(context),
             new CardView(context),
@@ -456,6 +501,17 @@
       // Treat as normal list item; show call button, if possible.
       if (PhoneNumberHelper.canPlaceCallsTo(number, numberPresentation)) {
         boolean isVoicemailNumber = mCallLogCache.isVoicemailNumber(accountHandle, number);
+
+        if (!isVoicemailNumber && showLightbringerPrimaryButton()) {
+          primaryActionButtonView.setTag(IntentProvider.getLightbringerIntentProvider(number));
+          primaryActionButtonView.setContentDescription(
+              TextUtils.expandTemplate(
+                  mContext.getString(R.string.description_video_call_action), validNameOrNumber));
+          primaryActionButtonView.setImageResource(R.drawable.quantum_ic_videocam_vd_theme_24);
+          primaryActionButtonView.setVisibility(View.VISIBLE);
+          return;
+        }
+
         if (isVoicemailNumber) {
           // Call to generic voicemail number, in case there are multiple accounts.
           primaryActionButtonView.setTag(IntentProvider.getReturnVoicemailCallIntentProvider());
@@ -467,7 +523,7 @@
         primaryActionButtonView.setContentDescription(
             TextUtils.expandTemplate(
                 mContext.getString(R.string.description_call_action), validNameOrNumber));
-        primaryActionButtonView.setImageResource(R.drawable.quantum_ic_call_white_24);
+        primaryActionButtonView.setImageResource(R.drawable.quantum_ic_call_vd_theme_24);
         primaryActionButtonView.setVisibility(View.VISIBLE);
       } else {
         primaryActionButtonView.setTag(null);
@@ -513,8 +569,15 @@
       return;
     }
 
-    if (!TextUtils.isEmpty(voicemailUri) && canPlaceCallToNumber) {
+    if (canPlaceCallToNumber) {
+      // Set up the call button but hide it by default (the primary action is to call so it is
+      // redundant). We then set it to be visible when appropriate below. This saves us having to
+      // remember to set it to GONE in multiple places.
       callButtonView.setTag(IntentProvider.getReturnCallIntentProvider(number));
+      callButtonView.setVisibility(View.GONE);
+    }
+
+    if (!TextUtils.isEmpty(voicemailUri) && canPlaceCallToNumber) {
       ((TextView) callButtonView.findViewById(R.id.call_action_text))
           .setText(
               TextUtils.expandTemplate(
@@ -529,13 +592,14 @@
         callTypeOrLocationView.setVisibility(View.GONE);
       }
       callButtonView.setVisibility(View.VISIBLE);
-    } else {
-      callButtonView.setVisibility(View.GONE);
     }
 
     if (hasPlacedCarrierVideoCall() || canSupportCarrierVideoCall()) {
       videoCallButtonView.setTag(IntentProvider.getReturnVideoCallIntentProvider(number));
       videoCallButtonView.setVisibility(View.VISIBLE);
+    } else if (showLightbringerPrimaryButton()) {
+      callButtonView.setVisibility(View.VISIBLE);
+      videoCallButtonView.setVisibility(View.GONE);
     } else if (lightbringerReady) {
       videoCallButtonView.setTag(IntentProvider.getLightbringerIntentProvider(number));
       videoCallButtonView.setVisibility(View.VISIBLE);
@@ -567,8 +631,12 @@
       detailsButtonView.setVisibility(View.GONE);
     } else {
       detailsButtonView.setVisibility(View.VISIBLE);
+      boolean canReportCallerId =
+          mCachedNumberLookupService != null
+              && mCachedNumberLookupService.canReportAsInvalid(info.sourceType, info.objectId);
       detailsButtonView.setTag(
-          IntentProvider.getCallDetailIntentProvider(callDetailsEntries, buildContact()));
+          IntentProvider.getCallDetailIntentProvider(
+              callDetailsEntries, buildContact(), canReportCallerId));
     }
 
     boolean isBlockedOrSpam = blockId != null || (isSpamFeatureEnabled && isSpam);
@@ -616,6 +684,12 @@
     return false;
   }
 
+  private boolean showLightbringerPrimaryButton() {
+    return accountHandle != null
+        && accountHandle.getComponentName().equals(getLightbringer().getPhoneAccountComponentName())
+        && lightbringerReady;
+  }
+
   private static boolean hasDialableChar(CharSequence number) {
     if (TextUtils.isEmpty(number)) {
       return false;
@@ -635,9 +709,7 @@
     if (accountHandle == null) {
       return false;
     }
-    if (accountHandle
-        .getComponentName()
-        .equals(getLightbringer().getPhoneAccountComponentName(mContext))) {
+    if (accountHandle.getComponentName().equals(getLightbringer().getPhoneAccountComponentName())) {
       return false;
     }
     return true;
@@ -717,19 +789,14 @@
             getContactType());
   }
 
-  private int getContactType() {
-    int contactType = ContactPhotoManager.TYPE_DEFAULT;
-    if (mCallLogCache.isVoicemailNumber(accountHandle, number)) {
-      contactType = ContactPhotoManager.TYPE_VOICEMAIL;
-    } else if (isSpam) {
-      contactType = ContactPhotoManager.TYPE_SPAM;
-    } else if (mCachedNumberLookupService != null
-        && mCachedNumberLookupService.isBusiness(info.sourceType)) {
-      contactType = ContactPhotoManager.TYPE_BUSINESS;
-    } else if (numberPresentation == TelecomManager.PRESENTATION_RESTRICTED) {
-      contactType = ContactPhotoManager.TYPE_GENERIC_AVATAR;
-    }
-    return contactType;
+  private @ContactType int getContactType() {
+    return LetterTileDrawable.getContactTypeFromPrimitives(
+        mCallLogCache.isVoicemailNumber(accountHandle, number),
+        isSpam,
+        mCachedNumberLookupService != null
+            && mCachedNumberLookupService.isBusiness(info.sourceType),
+        numberPresentation,
+        false);
   }
 
   @Override
@@ -795,19 +862,45 @@
       mVoicemailPlaybackPresenter.shareVoicemail();
     } else {
       logCallLogAction(view.getId());
+
       final IntentProvider intentProvider = (IntentProvider) view.getTag();
-      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);
+      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 (getLightbringer().getPackageName().equals(packageName)) {
+        startLightbringerActivity(intent);
+      } else {
+        if (intent.getComponent() != null
+            && CallDetailsActivity.class.getName().equals(intent.getComponent().getClassName())) {
+          // We are going to open call detail
+          PerformanceReport.recordClick(UiAction.Type.OPEN_CALL_DETAIL);
         }
+        DialerUtils.startActivityWithErrorToast(mContext, intent);
       }
     }
   }
 
-  private CallComposerContact buildContact() {
-    CallComposerContact.Builder contact = CallComposerContact.newBuilder();
+  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 DialerContact buildContact() {
+    DialerContact.Builder contact = DialerContact.newBuilder();
     contact.setPhotoId(info.photoId);
     if (info.photoUri != null) {
       contact.setPhotoUri(info.photoUri.toString());
@@ -826,6 +919,19 @@
     }
     /* phone number type (e.g. mobile) in second line of contact view */
     contact.setNumberLabel(numberType);
+
+    /* third line of contact view. */
+    String accountLabel = mCallLogCache.getAccountLabel(accountHandle);
+    if (!TextUtils.isEmpty(accountLabel)) {
+      SimDetails.Builder simDetails = SimDetails.newBuilder().setNetwork(accountLabel);
+      int color = mCallLogCache.getAccountColor(accountHandle);
+      if (color == PhoneAccount.NO_HIGHLIGHT_COLOR) {
+        simDetails.setColor(R.color.secondary_text_color);
+      } else {
+        simDetails.setColor(color);
+      }
+      contact.setSimDetails(simDetails.build());
+    }
     return contact.build();
   }
 
@@ -834,8 +940,38 @@
       Logger.get(mContext).logImpression(DialerImpression.Type.CALL_LOG_SEND_MESSAGE);
     } else if (id == R.id.add_to_existing_contact_action) {
       Logger.get(mContext).logImpression(DialerImpression.Type.CALL_LOG_ADD_TO_CONTACT);
+      switch (hostUi) {
+        case HostUi.CALL_HISTORY:
+          Logger.get(mContext)
+              .logImpression(DialerImpression.Type.ADD_TO_A_CONTACT_FROM_CALL_HISTORY);
+          break;
+        case HostUi.CALL_LOG:
+          Logger.get(mContext).logImpression(DialerImpression.Type.ADD_TO_A_CONTACT_FROM_CALL_LOG);
+          break;
+        case HostUi.VOICEMAIL:
+          Logger.get(mContext).logImpression(DialerImpression.Type.ADD_TO_A_CONTACT_FROM_VOICEMAIL);
+          break;
+        default:
+          throw Assert.createIllegalStateFailException();
+      }
     } else if (id == R.id.create_new_contact_action) {
       Logger.get(mContext).logImpression(DialerImpression.Type.CALL_LOG_CREATE_NEW_CONTACT);
+      switch (hostUi) {
+        case HostUi.CALL_HISTORY:
+          Logger.get(mContext)
+              .logImpression(DialerImpression.Type.CREATE_NEW_CONTACT_FROM_CALL_HISTORY);
+          break;
+        case HostUi.CALL_LOG:
+          Logger.get(mContext)
+              .logImpression(DialerImpression.Type.CREATE_NEW_CONTACT_FROM_CALL_LOG);
+          break;
+        case HostUi.VOICEMAIL:
+          Logger.get(mContext)
+              .logImpression(DialerImpression.Type.CREATE_NEW_CONTACT_FROM_VOICEMAIL);
+          break;
+        default:
+          throw Assert.createIllegalStateFailException();
+      }
     }
   }
 
@@ -987,6 +1123,15 @@
     Logger.get(mContext).logScreenView(ScreenEvent.Type.CALL_LOG_CONTEXT_MENU, (Activity) mContext);
   }
 
+  /** Specifies where the view holder belongs. */
+  @IntDef({HostUi.CALL_LOG, HostUi.CALL_HISTORY, HostUi.VOICEMAIL})
+  @Retention(RetentionPolicy.SOURCE)
+  private @interface HostUi {
+    int CALL_LOG = 0;
+    int CALL_HISTORY = 1;
+    int VOICEMAIL = 2;
+  }
+
   public interface OnClickListener {
 
     void onBlockReportSpam(
diff --git a/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java b/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java
index e169b8d..43e03e9 100644
--- a/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java
+++ b/java/com/android/dialer/app/calllog/CallLogNotificationsQueryHelper.java
@@ -18,7 +18,6 @@
 
 import android.Manifest;
 import android.annotation.TargetApi;
-import android.app.NotificationManager;
 import android.content.ContentResolver;
 import android.content.ContentUris;
 import android.content.ContentValues;
@@ -27,6 +26,7 @@
 import android.net.Uri;
 import android.os.Build.VERSION_CODES;
 import android.provider.CallLog.Calls;
+import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.annotation.WorkerThread;
 import android.support.v4.os.UserManagerCompat;
@@ -36,7 +36,6 @@
 import com.android.dialer.calllogutils.PhoneNumberDisplayUtil;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.location.GeoUtil;
-import com.android.dialer.notification.GroupedNotificationUtil;
 import com.android.dialer.phonenumbercache.ContactInfo;
 import com.android.dialer.phonenumbercache.ContactInfoHelper;
 import com.android.dialer.util.PermissionsUtil;
@@ -46,7 +45,6 @@
 /** Helper class operating on call log notifications. */
 public class CallLogNotificationsQueryHelper {
 
-  private static final String TAG = "CallLogNotifHelper";
   private final Context mContext;
   private final NewCallsQuery mNewCallsQuery;
   private final ContactInfoHelper mContactInfoHelper;
@@ -74,44 +72,58 @@
         countryIso);
   }
 
+  public static void markAllMissedCallsInCallLogAsRead(@NonNull Context context) {
+    markMissedCallsInCallLogAsRead(context, null);
+  }
+
+  public static void markSingleMissedCallInCallLogAsRead(
+      @NonNull Context context, @Nullable Uri callUri) {
+    if (callUri == null) {
+      LogUtil.e(
+          "CallLogNotificationsQueryHelper.markSingleMissedCallInCallLogAsRead",
+          "call URI is null, unable to mark call as read");
+    } else {
+      markMissedCallsInCallLogAsRead(context, callUri);
+    }
+  }
+
   /**
-   * Removes the missed call notifications and marks calls as read. If a callUri is provided, only
-   * that call is marked as read.
+   * If callUri is null then calls with a matching callUri are marked as read, otherwise all calls
+   * are marked as read.
    */
   @WorkerThread
-  public static void removeMissedCallNotifications(Context context, @Nullable Uri callUri) {
-    // Call log is only accessible when unlocked. If that's the case, clear the list of
-    // new missed calls from the call log.
-    if (UserManagerCompat.isUserUnlocked(context) && PermissionsUtil.hasPhonePermissions(context)) {
-      ContentValues values = new ContentValues();
-      values.put(Calls.NEW, 0);
-      values.put(Calls.IS_READ, 1);
-      StringBuilder where = new StringBuilder();
-      where.append(Calls.NEW);
-      where.append(" = 1 AND ");
-      where.append(Calls.TYPE);
-      where.append(" = ?");
-      try {
-        context
-            .getContentResolver()
-            .update(
-                callUri == null ? Calls.CONTENT_URI : callUri,
-                values,
-                where.toString(),
-                new String[] {Integer.toString(Calls.MISSED_TYPE)});
-      } catch (IllegalArgumentException e) {
-        LogUtil.e(
-            "CallLogNotificationsQueryHelper.removeMissedCallNotifications",
-            "contacts provider update command failed",
-            e);
-      }
+  private static void markMissedCallsInCallLogAsRead(Context context, @Nullable Uri callUri) {
+    if (!UserManagerCompat.isUserUnlocked(context)) {
+      LogUtil.e("CallLogNotificationsQueryHelper.markMissedCallsInCallLogAsRead", "locked");
+      return;
+    }
+    if (!PermissionsUtil.hasPhonePermissions(context)) {
+      LogUtil.e("CallLogNotificationsQueryHelper.markMissedCallsInCallLogAsRead", "no permission");
+      return;
     }
 
-    GroupedNotificationUtil.removeNotification(
-        context.getSystemService(NotificationManager.class),
-        callUri != null ? callUri.toString() : null,
-        R.id.notification_missed_call,
-        MissedCallNotifier.NOTIFICATION_TAG);
+    ContentValues values = new ContentValues();
+    values.put(Calls.NEW, 0);
+    values.put(Calls.IS_READ, 1);
+    StringBuilder where = new StringBuilder();
+    where.append(Calls.NEW);
+    where.append(" = 1 AND ");
+    where.append(Calls.TYPE);
+    where.append(" = ?");
+    try {
+      context
+          .getContentResolver()
+          .update(
+              callUri == null ? Calls.CONTENT_URI : callUri,
+              values,
+              where.toString(),
+              new String[] {Integer.toString(Calls.MISSED_TYPE)});
+    } catch (IllegalArgumentException e) {
+      LogUtil.e(
+          "CallLogNotificationsQueryHelper.markMissedCallsInCallLogAsRead",
+          "contacts provider update command failed",
+          e);
+    }
   }
 
   /** Create a new instance of {@link NewCallsQuery}. */
@@ -281,7 +293,9 @@
     @TargetApi(VERSION_CODES.M)
     public List<NewCall> query(int type) {
       if (!PermissionsUtil.hasPermission(mContext, Manifest.permission.READ_CALL_LOG)) {
-        LogUtil.w(TAG, "No READ_CALL_LOG permission, returning null for calls lookup.");
+        LogUtil.w(
+            "CallLogNotificationsQueryHelper.DefaultNewCallsQuery.query",
+            "no READ_CALL_LOG permission, returning null for calls lookup.");
         return null;
       }
       final String selection = String.format("%s = 1 AND %s = ?", Calls.NEW, Calls.TYPE);
@@ -302,7 +316,9 @@
         }
         return newCalls;
       } catch (RuntimeException e) {
-        LogUtil.w(TAG, "Exception when querying Contacts Provider for calls lookup");
+        LogUtil.w(
+            "CallLogNotificationsQueryHelper.DefaultNewCallsQuery.query",
+            "exception when querying Contacts Provider for calls lookup");
         return null;
       }
     }
diff --git a/java/com/android/dialer/app/calllog/CallLogNotificationsService.java b/java/com/android/dialer/app/calllog/CallLogNotificationsService.java
index 7dfd2cb..be1ebfb 100644
--- a/java/com/android/dialer/app/calllog/CallLogNotificationsService.java
+++ b/java/com/android/dialer/app/calllog/CallLogNotificationsService.java
@@ -17,12 +17,13 @@
 package com.android.dialer.app.calllog;
 
 import android.app.IntentService;
+import android.app.PendingIntent;
 import android.content.Context;
 import android.content.Intent;
 import android.net.Uri;
-import android.os.Handler;
-import android.os.Looper;
+import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.support.annotation.VisibleForTesting;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.telecom.TelecomUtil;
 import com.android.dialer.util.PermissionsUtil;
@@ -43,16 +44,20 @@
  */
 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";
+  private static final String ACTION_MARK_ALL_NEW_VOICEMAILS_AS_OLD =
+      "com.android.dialer.calllog.ACTION_MARK_ALL_NEW_VOICEMAILS_AS_OLD";
 
-  /** Action to mark all the new missed calls as old. */
-  public static final String ACTION_MARK_NEW_MISSED_CALLS_AS_OLD =
-      "com.android.dialer.calllog.ACTION_MARK_NEW_MISSED_CALLS_AS_OLD";
+  private static final String ACTION_MARK_SINGLE_NEW_VOICEMAIL_AS_OLD =
+      "com.android.dialer.calllog.ACTION_MARK_SINGLE_NEW_VOICEMAIL_AS_OLD ";
 
-  /** Action to update missed call notifications with a post call note. */
-  public static final String ACTION_INCOMING_POST_CALL =
+  @VisibleForTesting
+  static final String ACTION_CANCEL_ALL_MISSED_CALLS =
+      "com.android.dialer.calllog.ACTION_CANCEL_ALL_MISSED_CALLS";
+
+  private static final String ACTION_CANCEL_SINGLE_MISSED_CALL =
+      "com.android.dialer.calllog.ACTION_CANCEL_SINGLE_MISSED_CALL";
+
+  private static final String ACTION_INCOMING_POST_CALL =
       "com.android.dialer.calllog.INCOMING_POST_CALL";
 
   /** Action to call back a missed call. */
@@ -64,7 +69,7 @@
    *
    * <p>It must be a {@link String}
    */
-  public static final String EXTRA_POST_CALL_NOTE = "POST_CALL_NOTE";
+  private static final String EXTRA_POST_CALL_NOTE = "POST_CALL_NOTE";
 
   /**
    * Extra to be included with {@link #ACTION_INCOMING_POST_CALL} to represent the phone number the
@@ -72,10 +77,9 @@
    *
    * <p>It must be a {@link String}
    */
-  public static final String EXTRA_POST_CALL_NUMBER = "POST_CALL_NUMBER";
+  private static final String EXTRA_POST_CALL_NUMBER = "POST_CALL_NUMBER";
 
   public static final int UNKNOWN_MISSED_CALL_COUNT = -1;
-  private VoicemailQueryHandler mVoicemailQueryHandler;
 
   public CallLogNotificationsService() {
     super("CallLogNotificationsService");
@@ -89,52 +93,95 @@
     context.startService(serviceIntent);
   }
 
-  public static void markNewVoicemailsAsOld(Context context, @Nullable Uri voicemailUri) {
+  public static void markAllNewVoicemailsAsOld(Context context) {
+    LogUtil.enterBlock("CallLogNotificationsService.markAllNewVoicemailsAsOld");
     Intent serviceIntent = new Intent(context, CallLogNotificationsService.class);
-    serviceIntent.setAction(CallLogNotificationsService.ACTION_MARK_NEW_VOICEMAILS_AS_OLD);
+    serviceIntent.setAction(CallLogNotificationsService.ACTION_MARK_ALL_NEW_VOICEMAILS_AS_OLD);
+    context.startService(serviceIntent);
+  }
+
+  public static void markSingleNewVoicemailAsOld(Context context, @Nullable Uri voicemailUri) {
+    LogUtil.enterBlock("CallLogNotificationsService.markSingleNewVoicemailAsOld");
+    Intent serviceIntent = new Intent(context, CallLogNotificationsService.class);
+    serviceIntent.setAction(CallLogNotificationsService.ACTION_MARK_SINGLE_NEW_VOICEMAIL_AS_OLD);
     serviceIntent.setData(voicemailUri);
     context.startService(serviceIntent);
   }
 
-  public static void markNewMissedCallsAsOld(Context context, @Nullable Uri callUri) {
+  public static PendingIntent createMarkAllNewVoicemailsAsOldIntent(@NonNull Context context) {
+    Intent intent = new Intent(context, CallLogNotificationsService.class);
+    intent.setAction(CallLogNotificationsService.ACTION_MARK_ALL_NEW_VOICEMAILS_AS_OLD);
+    return PendingIntent.getService(context, 0, intent, 0);
+  }
+
+  public static PendingIntent createMarkSingleNewVoicemailAsOldIntent(
+      @NonNull Context context, @Nullable Uri voicemailUri) {
+    Intent intent = new Intent(context, CallLogNotificationsService.class);
+    intent.setAction(CallLogNotificationsService.ACTION_MARK_SINGLE_NEW_VOICEMAIL_AS_OLD);
+    intent.setData(voicemailUri);
+    return PendingIntent.getService(context, 0, intent, 0);
+  }
+
+  public static void cancelAllMissedCalls(@NonNull Context context) {
+    LogUtil.enterBlock("CallLogNotificationsService.cancelAllMissedCalls");
     Intent serviceIntent = new Intent(context, CallLogNotificationsService.class);
-    serviceIntent.setAction(ACTION_MARK_NEW_MISSED_CALLS_AS_OLD);
-    serviceIntent.setData(callUri);
+    serviceIntent.setAction(ACTION_CANCEL_ALL_MISSED_CALLS);
     context.startService(serviceIntent);
   }
 
+  public static PendingIntent createCancelAllMissedCallsPendingIntent(@NonNull Context context) {
+    Intent intent = new Intent(context, CallLogNotificationsService.class);
+    intent.setAction(ACTION_CANCEL_ALL_MISSED_CALLS);
+    return PendingIntent.getService(context, 0, intent, 0);
+  }
+
+  public static PendingIntent createCancelSingleMissedCallPendingIntent(
+      @NonNull Context context, @Nullable Uri callUri) {
+    Intent intent = new Intent(context, CallLogNotificationsService.class);
+    intent.setAction(ACTION_CANCEL_SINGLE_MISSED_CALL);
+    intent.setData(callUri);
+    return PendingIntent.getService(context, 0, intent, 0);
+  }
+
   @Override
   protected void onHandleIntent(Intent intent) {
     if (intent == null) {
-      LogUtil.d("CallLogNotificationsService.onHandleIntent", "could not handle null intent");
+      LogUtil.e("CallLogNotificationsService.onHandleIntent", "could not handle null intent");
       return;
     }
 
-    if (!PermissionsUtil.hasPermission(this, android.Manifest.permission.READ_CALL_LOG)) {
+    if (!PermissionsUtil.hasPermission(this, android.Manifest.permission.READ_CALL_LOG)
+        || !PermissionsUtil.hasPermission(this, android.Manifest.permission.WRITE_CALL_LOG)) {
+      LogUtil.e("CallLogNotificationsService.onHandleIntent", "no READ_CALL_LOG permission");
       return;
     }
 
     String action = intent.getAction();
+    LogUtil.i("CallLogNotificationsService.onHandleIntent", "action: " + action);
     switch (action) {
-      case ACTION_MARK_NEW_VOICEMAILS_AS_OLD:
-        // VoicemailQueryHandler cannot be created on the IntentService worker thread. The completed
-        // callback might happen when the thread is dead.
-        Handler handler = new Handler(Looper.getMainLooper());
-        handler.post(
-            () -> {
-              if (mVoicemailQueryHandler == null) {
-                mVoicemailQueryHandler = new VoicemailQueryHandler(this, getContentResolver());
-              }
-              mVoicemailQueryHandler.markNewVoicemailsAsOld(intent.getData());
-            });
+      case ACTION_MARK_ALL_NEW_VOICEMAILS_AS_OLD:
+        VoicemailQueryHandler.markAllNewVoicemailsAsRead(this);
+        VisualVoicemailNotifier.cancelAllVoicemailNotifications(this);
+        break;
+      case ACTION_MARK_SINGLE_NEW_VOICEMAIL_AS_OLD:
+        Uri voicemailUri = intent.getData();
+        VoicemailQueryHandler.markSingleNewVoicemailAsRead(this, voicemailUri);
+        VisualVoicemailNotifier.cancelSingleVoicemailNotification(this, voicemailUri);
         break;
       case ACTION_INCOMING_POST_CALL:
         String note = intent.getStringExtra(EXTRA_POST_CALL_NOTE);
         String phoneNumber = intent.getStringExtra(EXTRA_POST_CALL_NUMBER);
         MissedCallNotifier.getIstance(this).insertPostCallNotification(phoneNumber, note);
         break;
-      case ACTION_MARK_NEW_MISSED_CALLS_AS_OLD:
-        CallLogNotificationsQueryHelper.removeMissedCallNotifications(this, intent.getData());
+      case ACTION_CANCEL_ALL_MISSED_CALLS:
+        CallLogNotificationsQueryHelper.markAllMissedCallsInCallLogAsRead(this);
+        MissedCallNotifier.cancelAllMissedCallNotifications(this);
+        TelecomUtil.cancelMissedCallsNotification(this);
+        break;
+      case ACTION_CANCEL_SINGLE_MISSED_CALL:
+        Uri callUri = intent.getData();
+        CallLogNotificationsQueryHelper.markSingleMissedCallInCallLogAsRead(this, callUri);
+        MissedCallNotifier.cancelSingleMissedCallNotification(this, callUri);
         TelecomUtil.cancelMissedCallsNotification(this);
         break;
       case ACTION_CALL_BACK_FROM_MISSED_CALL_NOTIFICATION:
@@ -145,7 +192,7 @@
                 intent.getData());
         break;
       default:
-        LogUtil.d("CallLogNotificationsService.onHandleIntent", "could not handle: " + intent);
+        LogUtil.e("CallLogNotificationsService.onHandleIntent", "no handler for action: " + action);
         break;
     }
   }
diff --git a/java/com/android/dialer/app/calllog/CallLogReceiver.java b/java/com/android/dialer/app/calllog/CallLogReceiver.java
index 172d001..ce3132d 100644
--- a/java/com/android/dialer/app/calllog/CallLogReceiver.java
+++ b/java/com/android/dialer/app/calllog/CallLogReceiver.java
@@ -39,10 +39,10 @@
     if (VoicemailContract.ACTION_NEW_VOICEMAIL.equals(intent.getAction())) {
       checkVoicemailStatus(context);
       PendingResult pendingResult = goAsync();
-      DefaultVoicemailNotifier.updateVoicemailNotifications(context, pendingResult::finish);
+      VisualVoicemailUpdateTask.scheduleTask(context, pendingResult::finish);
     } else if (Intent.ACTION_BOOT_COMPLETED.equals(intent.getAction())) {
       PendingResult pendingResult = goAsync();
-      DefaultVoicemailNotifier.updateVoicemailNotifications(context, pendingResult::finish);
+      VisualVoicemailUpdateTask.scheduleTask(context, pendingResult::finish);
     } else {
       LogUtil.w("CallLogReceiver.onReceive", "could not handle: " + intent);
     }
diff --git a/java/com/android/dialer/app/calllog/ClearCallLogDialog.java b/java/com/android/dialer/app/calllog/ClearCallLogDialog.java
index a01b895..155a916 100644
--- a/java/com/android/dialer/app/calllog/ClearCallLogDialog.java
+++ b/java/com/android/dialer/app/calllog/ClearCallLogDialog.java
@@ -54,7 +54,7 @@
                 ProgressDialog.show(
                     getActivity(), getString(R.string.clearCallLogProgress_title), "", true, false);
             progressDialog.setOwnerActivity(getActivity());
-            CallLogNotificationsService.markNewMissedCallsAsOld(getContext(), null);
+            CallLogNotificationsService.cancelAllMissedCalls(getContext());
             final AsyncTask<Void, Void, Void> task =
                 new AsyncTask<Void, Void, Void>() {
                   @Override
diff --git a/java/com/android/dialer/app/calllog/DefaultVoicemailNotifier.java b/java/com/android/dialer/app/calllog/DefaultVoicemailNotifier.java
deleted file mode 100644
index 58fe6fa..0000000
--- a/java/com/android/dialer/app/calllog/DefaultVoicemailNotifier.java
+++ /dev/null
@@ -1,446 +0,0 @@
-/*
- * Copyright (C) 2011 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.dialer.app.calllog;
-
-import android.annotation.TargetApi;
-import android.app.Notification;
-import android.app.NotificationManager;
-import android.app.PendingIntent;
-import android.content.Context;
-import android.content.Intent;
-import android.content.res.Resources;
-import android.graphics.Bitmap;
-import android.net.Uri;
-import android.os.Build.VERSION;
-import android.os.Build.VERSION_CODES;
-import android.os.PersistableBundle;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.support.annotation.VisibleForTesting;
-import android.support.annotation.WorkerThread;
-import android.support.v4.os.BuildCompat;
-import android.support.v4.util.Pair;
-import android.telecom.PhoneAccount;
-import android.telecom.PhoneAccountHandle;
-import android.telecom.TelecomManager;
-import android.telephony.CarrierConfigManager;
-import android.telephony.PhoneNumberUtils;
-import android.telephony.TelephonyManager;
-import android.text.TextUtils;
-import android.util.ArrayMap;
-import com.android.contacts.common.compat.TelephonyManagerCompat;
-import com.android.contacts.common.util.ContactDisplayUtils;
-import com.android.dialer.app.DialtactsActivity;
-import com.android.dialer.app.R;
-import com.android.dialer.app.calllog.CallLogNotificationsQueryHelper.NewCall;
-import com.android.dialer.app.contactinfo.ContactPhotoLoader;
-import com.android.dialer.app.list.DialtactsPagerAdapter;
-import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler;
-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 implements Worker<Void, Void> {
-
-  public static final String TAG = "VoicemailNotifier";
-
-  /** The tag used to identify notifications from this class. */
-  static final String VISUAL_VOICEMAIL_NOTIFICATION_TAG = "DefaultVoicemailNotifier";
-  /** The identifier of the notification of new voicemails. */
-  private static final int VISUAL_VOICEMAIL_NOTIFICATION_ID = R.id.notification_visual_voicemail;
-
-  private static final int LEGACY_VOICEMAIL_NOTIFICATION_ID = R.id.notification_legacy_voicemail;
-  private static final String LEGACY_VOICEMAIL_NOTIFICATION_TAG = "legacy_voicemail";
-
-  private final Context context;
-  private final CallLogNotificationsQueryHelper queryHelper;
-  private final FilteredNumberAsyncQueryHandler filteredNumberAsyncQueryHandler;
-
-  @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
-  DefaultVoicemailNotifier(
-      Context context,
-      CallLogNotificationsQueryHelper queryHelper,
-      FilteredNumberAsyncQueryHandler filteredNumberAsyncQueryHandler) {
-    this.context = context;
-    this.queryHelper = queryHelper;
-    this.filteredNumberAsyncQueryHandler = filteredNumberAsyncQueryHandler;
-  }
-
-  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.
-   *
-   * <p>Clears the notification if there are no new voicemails, and notifies if the given URI
-   * corresponds to a new voicemail.
-   *
-   * <p>It is not safe to call this method from the main thread.
-   */
-  @VisibleForTesting
-  @WorkerThread
-  void updateNotification() {
-    Assert.isWorkerThread();
-    // Lookup the list of new voicemails to include in the notification.
-    final List<NewCall> newCalls = queryHelper.getNewVoicemails();
-
-    if (newCalls == null) {
-      // Query failed, just return.
-      return;
-    }
-
-    Resources resources = context.getResources();
-
-    // This represents a list of names to include in the notification.
-    String callers = null;
-
-    // Maps each number into a name: if a number is in the map, it has already left a more
-    // recent voicemail.
-    final Map<String, ContactInfo> contactInfos = new ArrayMap<>();
-
-    // Iterate over the new voicemails to determine all the information above.
-    Iterator<NewCall> itr = newCalls.iterator();
-    while (itr.hasNext()) {
-      NewCall newCall = itr.next();
-
-      // Skip notifying for numbers which are blocked.
-      if (!FilteredNumbersUtil.hasRecentEmergencyCall(context)
-          && filteredNumberAsyncQueryHandler.getBlockedIdSynchronous(
-                  newCall.number, newCall.countryIso)
-              != null) {
-        itr.remove();
-
-        if (newCall.voicemailUri != null) {
-          // Delete the voicemail.
-          CallLogAsyncTaskUtil.deleteVoicemailSynchronous(context, newCall.voicemailUri);
-        }
-        continue;
-      }
-
-      // Check if we already know the name associated with this number.
-      ContactInfo contactInfo = contactInfos.get(newCall.number);
-      if (contactInfo == null) {
-        contactInfo =
-            queryHelper.getContactInfo(
-                newCall.number, newCall.numberPresentation, newCall.countryIso);
-        contactInfos.put(newCall.number, contactInfo);
-        // This is a new caller. Add it to the back of the list of callers.
-        if (TextUtils.isEmpty(callers)) {
-          callers = contactInfo.name;
-        } else {
-          callers =
-              resources.getString(
-                  R.string.notification_voicemail_callers_list, callers, contactInfo.name);
-        }
-      }
-    }
-
-    if (newCalls.isEmpty()) {
-      // No voicemails to notify about
-      return;
-    }
-
-    Notification.Builder groupSummary =
-        createNotificationBuilder()
-            .setContentTitle(
-                resources.getQuantityString(
-                    R.plurals.notification_voicemail_title, newCalls.size(), newCalls.size()))
-            .setContentText(callers)
-            .setDeleteIntent(createMarkNewVoicemailsAsOldIntent(null))
-            .setGroupSummary(true)
-            .setContentIntent(newVoicemailIntent(null));
-
-    if (BuildCompat.isAtLeastO()) {
-      groupSummary.setGroupAlertBehavior(Notification.GROUP_ALERT_CHILDREN);
-    }
-
-    NotificationChannelManager.applyChannel(
-        groupSummary,
-        context,
-        Channel.VOICEMAIL,
-        PhoneAccountHandles.getAccount(context, newCalls.get(0)));
-
-    LogUtil.i(TAG, "Creating visual voicemail notification");
-    getNotificationManager()
-        .notify(
-            VISUAL_VOICEMAIL_NOTIFICATION_TAG,
-            VISUAL_VOICEMAIL_NOTIFICATION_ID,
-            groupSummary.build());
-
-    for (NewCall voicemail : newCalls) {
-      getNotificationManager()
-          .notify(
-              voicemail.callsUri.toString(),
-              VISUAL_VOICEMAIL_NOTIFICATION_ID,
-              createNotificationForVoicemail(voicemail, contactInfos));
-    }
-  }
-
-  /**
-   * Replicates how packages/services/Telephony/NotificationMgr.java handles legacy voicemail
-   * notification. The notification will not be stackable because no information is available for
-   * individual voicemails.
-   */
-  @TargetApi(VERSION_CODES.O)
-  public void notifyLegacyVoicemail(
-      @NonNull PhoneAccountHandle phoneAccountHandle,
-      int count,
-      String voicemailNumber,
-      PendingIntent callVoicemailIntent,
-      PendingIntent voicemailSettingIntent) {
-    Assert.isNotNull(phoneAccountHandle);
-    Assert.checkArgument(BuildCompat.isAtLeastO());
-    TelephonyManager telephonyManager =
-        context
-            .getSystemService(TelephonyManager.class)
-            .createForPhoneAccountHandle(phoneAccountHandle);
-    Assert.isNotNull(telephonyManager);
-    LogUtil.i(TAG, "Creating legacy voicemail notification");
-
-    PersistableBundle carrierConfig = telephonyManager.getCarrierConfig();
-
-    String notificationTitle =
-        context
-            .getResources()
-            .getQuantityString(R.plurals.notification_voicemail_title, count, count);
-
-    TelecomManager telecomManager = context.getSystemService(TelecomManager.class);
-    PhoneAccount phoneAccount = telecomManager.getPhoneAccount(phoneAccountHandle);
-
-    String notificationText;
-    PendingIntent pendingIntent;
-
-    if (voicemailSettingIntent != null) {
-      // If the voicemail number if unknown, instead of calling voicemail, take the user
-      // to the voicemail settings.
-      notificationText = context.getString(R.string.notification_voicemail_no_vm_number);
-      pendingIntent = voicemailSettingIntent;
-    } else {
-      if (PhoneAccountUtils.getSubscriptionPhoneAccounts(context).size() > 1) {
-        notificationText = phoneAccount.getShortDescription().toString();
-      } else {
-        notificationText =
-            String.format(
-                context.getString(R.string.notification_voicemail_text_format),
-                PhoneNumberUtils.formatNumber(voicemailNumber));
-      }
-      pendingIntent = callVoicemailIntent;
-    }
-    Notification.Builder builder = new Notification.Builder(context);
-    builder
-        .setSmallIcon(android.R.drawable.stat_notify_voicemail)
-        .setColor(context.getColor(R.color.dialer_theme_color))
-        .setWhen(System.currentTimeMillis())
-        .setContentTitle(notificationTitle)
-        .setContentText(notificationText)
-        .setContentIntent(pendingIntent)
-        .setSound(telephonyManager.getVoicemailRingtoneUri(phoneAccountHandle))
-        .setOngoing(
-            carrierConfig.getBoolean(
-                CarrierConfigManager.KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL));
-
-    if (telephonyManager.isVoicemailVibrationEnabled(phoneAccountHandle)) {
-      builder.setDefaults(Notification.DEFAULT_VIBRATE);
-    }
-
-    NotificationChannelManager.applyChannel(
-        builder, context, Channel.VOICEMAIL, phoneAccountHandle);
-    Notification notification = builder.build();
-    getNotificationManager()
-        .notify(LEGACY_VOICEMAIL_NOTIFICATION_TAG, LEGACY_VOICEMAIL_NOTIFICATION_ID, notification);
-  }
-
-  public void cancelLegacyNotification() {
-    LogUtil.i(TAG, "Clearing legacy voicemail notification");
-    getNotificationManager()
-        .cancel(LEGACY_VOICEMAIL_NOTIFICATION_TAG, LEGACY_VOICEMAIL_NOTIFICATION_ID);
-  }
-
-  /**
-   * Determines which ringtone Uri and Notification defaults to use when updating the notification
-   * for the given call.
-   */
-  private Pair<Uri, Integer> getNotificationInfo(@Nullable NewCall callToNotify) {
-    LogUtil.v(TAG, "getNotificationInfo");
-    if (callToNotify == null) {
-      LogUtil.i(TAG, "callToNotify == null");
-      return new Pair<>(null, 0);
-    }
-    PhoneAccountHandle accountHandle = PhoneAccountHandles.getAccount(context, callToNotify);
-    if (accountHandle == null) {
-      LogUtil.i(TAG, "No default phone account found, using default notification ringtone");
-      return new Pair<>(null, Notification.DEFAULT_ALL);
-    }
-    return new Pair<>(
-        TelephonyManagerCompat.getVoicemailRingtoneUri(getTelephonyManager(), accountHandle),
-        getNotificationDefaults(accountHandle));
-  }
-
-  private int getNotificationDefaults(PhoneAccountHandle accountHandle) {
-    if (VERSION.SDK_INT >= VERSION_CODES.N) {
-      return TelephonyManagerCompat.isVoicemailVibrationEnabled(
-              getTelephonyManager(), accountHandle)
-          ? Notification.DEFAULT_VIBRATE
-          : 0;
-    }
-    return Notification.DEFAULT_ALL;
-  }
-
-  /** Creates a pending intent that marks all new voicemails as old. */
-  private PendingIntent createMarkNewVoicemailsAsOldIntent(@Nullable Uri voicemailUri) {
-    Intent intent = new Intent(context, CallLogNotificationsService.class);
-    intent.setAction(CallLogNotificationsService.ACTION_MARK_NEW_VOICEMAILS_AS_OLD);
-    intent.setData(voicemailUri);
-    return PendingIntent.getService(context, 0, intent, 0);
-  }
-
-  private NotificationManager getNotificationManager() {
-    return (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
-  }
-
-  private TelephonyManager getTelephonyManager() {
-    return (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
-  }
-
-  private Notification createNotificationForVoicemail(
-      @NonNull NewCall voicemail, @NonNull Map<String, ContactInfo> contactInfos) {
-    Pair<Uri, Integer> notificationInfo = getNotificationInfo(voicemail);
-    ContactInfo contactInfo = contactInfos.get(voicemail.number);
-
-    Notification.Builder notificationBuilder =
-        createNotificationBuilder()
-            .setContentTitle(
-                context
-                    .getResources()
-                    .getQuantityString(R.plurals.notification_voicemail_title, 1, 1))
-            .setContentText(
-                ContactDisplayUtils.getTtsSpannedPhoneNumber(
-                    context.getResources(),
-                    R.string.notification_new_voicemail_ticker,
-                    contactInfo.name))
-            .setWhen(voicemail.dateMs)
-            .setSound(notificationInfo.first)
-            .setDefaults(notificationInfo.second);
-
-    if (voicemail.voicemailUri != null) {
-      notificationBuilder.setDeleteIntent(
-          createMarkNewVoicemailsAsOldIntent(voicemail.voicemailUri));
-    }
-
-    NotificationChannelManager.applyChannel(
-        notificationBuilder,
-        context,
-        Channel.VOICEMAIL,
-        PhoneAccountHandles.getAccount(context, voicemail));
-
-    ContactPhotoLoader loader = new ContactPhotoLoader(context, contactInfo);
-    Bitmap photoIcon = loader.loadPhotoIcon();
-    if (photoIcon != null) {
-      notificationBuilder.setLargeIcon(photoIcon);
-    }
-    if (!TextUtils.isEmpty(voicemail.transcription)) {
-      Logger.get(context)
-          .logImpression(DialerImpression.Type.VVM_NOTIFICATION_CREATED_WITH_TRANSCRIPTION);
-      notificationBuilder.setStyle(
-          new Notification.BigTextStyle().bigText(voicemail.transcription));
-    }
-    notificationBuilder.setContentIntent(newVoicemailIntent(voicemail));
-    Logger.get(context).logImpression(DialerImpression.Type.VVM_NOTIFICATION_CREATED);
-    return notificationBuilder.build();
-  }
-
-  private Notification.Builder createNotificationBuilder() {
-    return new Notification.Builder(context)
-        .setSmallIcon(android.R.drawable.stat_notify_voicemail)
-        .setColor(context.getColor(R.color.dialer_theme_color))
-        .setGroup(VISUAL_VOICEMAIL_NOTIFICATION_TAG)
-        .setOnlyAlertOnce(true)
-        .setAutoCancel(true);
-  }
-
-  private PendingIntent newVoicemailIntent(@Nullable NewCall voicemail) {
-    Intent intent =
-        DialtactsActivity.getShowTabIntent(context, DialtactsPagerAdapter.TAB_INDEX_VOICEMAIL);
-    // TODO (b/35486204): scroll to this voicemail
-    if (voicemail != null) {
-      intent.setData(voicemail.voicemailUri);
-    }
-    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/DialerQuickContactBadge.java b/java/com/android/dialer/app/calllog/DialerQuickContactBadge.java
new file mode 100644
index 0000000..a3aac41
--- /dev/null
+++ b/java/com/android/dialer/app/calllog/DialerQuickContactBadge.java
@@ -0,0 +1,63 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.app.calllog;
+
+import android.content.Context;
+import android.util.AttributeSet;
+import android.view.View;
+import android.widget.QuickContactBadge;
+import com.android.dialer.app.calllog.CallLogAdapter.OnActionModeStateChangedListener;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+
+/** Allows us to click the contact badge for non multi select mode. */
+class DialerQuickContactBadge extends QuickContactBadge {
+
+  private View.OnClickListener mExtraOnClickListener;
+  private OnActionModeStateChangedListener onActionModeStateChangeListener;
+
+  public DialerQuickContactBadge(Context context) {
+    super(context);
+  }
+
+  public DialerQuickContactBadge(Context context, AttributeSet attrs) {
+    super(context, attrs);
+  }
+
+  public DialerQuickContactBadge(Context context, AttributeSet attrs, int defStyle) {
+    super(context, attrs, defStyle);
+  }
+
+  @Override
+  public void onClick(View v) {
+    if (mExtraOnClickListener != null
+        && onActionModeStateChangeListener.isActionModeStateEnabled()) {
+      Logger.get(v.getContext())
+          .logImpression(DialerImpression.Type.MULTISELECT_SINGLE_PRESS_TAP_VIA_CONTACT_BADGE);
+      mExtraOnClickListener.onClick(v);
+    } else {
+      super.onClick(v);
+    }
+  }
+
+  public void setMulitSelectListeners(
+      View.OnClickListener extraOnClickListener,
+      OnActionModeStateChangedListener actionModeStateChangeListener) {
+    mExtraOnClickListener = extraOnClickListener;
+    onActionModeStateChangeListener = actionModeStateChangeListener;
+  }
+}
diff --git a/java/com/android/dialer/app/calllog/IntentProvider.java b/java/com/android/dialer/app/calllog/IntentProvider.java
index a94c678..e1ec9f5 100644
--- a/java/com/android/dialer/app/calllog/IntentProvider.java
+++ b/java/com/android/dialer/app/calllog/IntentProvider.java
@@ -24,12 +24,14 @@
 import android.telecom.PhoneAccountHandle;
 import com.android.contacts.common.model.Contact;
 import com.android.contacts.common.model.ContactLoader;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.calldetails.CallDetailsActivity;
 import com.android.dialer.calldetails.CallDetailsEntries;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallIntentBuilder;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.lightbringer.LightbringerComponent;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
 import com.android.dialer.util.CallUtil;
 import com.android.dialer.util.IntentUtil;
 import java.util.ArrayList;
@@ -68,6 +70,7 @@
     return new IntentProvider() {
       @Override
       public Intent getIntent(Context context) {
+        Logger.get(context).logImpression(DialerImpression.Type.IMS_VIDEO_REQUESTED_FROM_CALL_LOG);
         return new CallIntentBuilder(number, CallInitiationType.Type.CALL_LOG)
             .setPhoneAccountHandle(accountHandle)
             .setIsVideoCall(true)
@@ -80,6 +83,8 @@
     return new IntentProvider() {
       @Override
       public Intent getIntent(Context context) {
+        Logger.get(context)
+            .logImpression(DialerImpression.Type.LIGHTBRINGER_VIDEO_REQUESTED_FROM_CALL_LOG);
         return LightbringerComponent.get(context).getLightbringer().getIntent(context, number);
       }
     };
@@ -112,11 +117,12 @@
    * @return The call details intent provider.
    */
   public static IntentProvider getCallDetailIntentProvider(
-      CallDetailsEntries callDetailsEntries, CallComposerContact contact) {
+      CallDetailsEntries callDetailsEntries, DialerContact contact, boolean canReportCallerId) {
     return new IntentProvider() {
       @Override
       public Intent getIntent(Context context) {
-        return CallDetailsActivity.newInstance(context, callDetailsEntries, contact);
+        return CallDetailsActivity.newInstance(
+            context, callDetailsEntries, contact, canReportCallerId);
       }
     };
   }
diff --git a/java/com/android/dialer/app/calllog/LegacyVoicemailNotifier.java b/java/com/android/dialer/app/calllog/LegacyVoicemailNotifier.java
new file mode 100644
index 0000000..428c716
--- /dev/null
+++ b/java/com/android/dialer/app/calllog/LegacyVoicemailNotifier.java
@@ -0,0 +1,156 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.app.calllog;
+
+import android.annotation.TargetApi;
+import android.app.Notification;
+import android.app.NotificationManager;
+import android.app.PendingIntent;
+import android.content.Context;
+import android.os.Build.VERSION_CODES;
+import android.support.annotation.NonNull;
+import android.support.v4.os.BuildCompat;
+import android.telecom.PhoneAccount;
+import android.telecom.PhoneAccountHandle;
+import android.telecom.TelecomManager;
+import android.telephony.CarrierConfigManager;
+import android.telephony.PhoneNumberUtils;
+import android.telephony.TelephonyManager;
+import android.text.TextUtils;
+import com.android.dialer.app.R;
+import com.android.dialer.calllogutils.PhoneAccountUtils;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.notification.NotificationChannelManager;
+
+/** Shows a notification in the status bar for legacy vociemail. */
+@TargetApi(VERSION_CODES.O)
+public final class LegacyVoicemailNotifier {
+  private static final String NOTIFICATION_TAG = "LegacyVoicemail";
+  private static final int NOTIFICATION_ID = 1;
+
+  /**
+   * Replicates how packages/services/Telephony/NotificationMgr.java handles legacy voicemail
+   * notification. The notification will not be stackable because no information is available for
+   * individual voicemails.
+   */
+  public static void showNotification(
+      @NonNull Context context,
+      @NonNull PhoneAccountHandle handle,
+      int count,
+      String voicemailNumber,
+      PendingIntent callVoicemailIntent,
+      PendingIntent voicemailSettingsIntent,
+      boolean isRefresh) {
+    LogUtil.enterBlock("LegacyVoicemailNotifier.showNotification");
+    Assert.isNotNull(handle);
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+
+    TelephonyManager pinnedTelephonyManager =
+        context.getSystemService(TelephonyManager.class).createForPhoneAccountHandle(handle);
+    if (pinnedTelephonyManager == null) {
+      LogUtil.e("LegacyVoicemailNotifier.showNotification", "invalid PhoneAccountHandle");
+      return;
+    }
+
+    Notification notification =
+        createNotification(
+            context,
+            pinnedTelephonyManager,
+            handle,
+            count,
+            voicemailNumber,
+            callVoicemailIntent,
+            voicemailSettingsIntent,
+            isRefresh);
+    context
+        .getSystemService(NotificationManager.class)
+        .notify(NOTIFICATION_TAG, NOTIFICATION_ID, notification);
+  }
+
+  @NonNull
+  private static Notification createNotification(
+      @NonNull Context context,
+      @NonNull TelephonyManager pinnedTelephonyManager,
+      @NonNull PhoneAccountHandle handle,
+      int count,
+      String voicemailNumber,
+      PendingIntent callVoicemailIntent,
+      PendingIntent voicemailSettingsIntent,
+      boolean isRefresh) {
+    String notificationTitle =
+        context
+            .getResources()
+            .getQuantityString(R.plurals.notification_voicemail_title, count, count);
+    boolean isOngoing =
+        pinnedTelephonyManager
+            .getCarrierConfig()
+            .getBoolean(CarrierConfigManager.KEY_VOICEMAIL_NOTIFICATION_PERSISTENT_BOOL);
+
+    String contentText;
+    PendingIntent contentIntent;
+    if (!TextUtils.isEmpty(voicemailNumber) && callVoicemailIntent != null) {
+      contentText = getNotificationText(context, handle, voicemailNumber);
+      contentIntent = callVoicemailIntent;
+    } else {
+      contentText = context.getString(R.string.notification_voicemail_no_vm_number);
+      contentIntent = voicemailSettingsIntent;
+    }
+
+    Notification.Builder builder =
+        new Notification.Builder(context)
+            .setSmallIcon(android.R.drawable.stat_notify_voicemail)
+            .setColor(context.getColor(R.color.dialer_theme_color))
+            .setWhen(System.currentTimeMillis())
+            .setContentTitle(notificationTitle)
+            .setContentText(contentText)
+            .setContentIntent(contentIntent)
+            .setSound(pinnedTelephonyManager.getVoicemailRingtoneUri(handle))
+            .setOngoing(isOngoing)
+            .setOnlyAlertOnce(isRefresh)
+            .setChannelId(NotificationChannelManager.getVoicemailChannelId(context, handle));
+
+    if (pinnedTelephonyManager.isVoicemailVibrationEnabled(handle)) {
+      builder.setDefaults(Notification.DEFAULT_VIBRATE);
+    }
+
+    return builder.build();
+  }
+
+  @NonNull
+  private static String getNotificationText(
+      @NonNull Context context, PhoneAccountHandle handle, String voicemailNumber) {
+    if (PhoneAccountUtils.getSubscriptionPhoneAccounts(context).size() > 1) {
+      TelecomManager telecomManager = context.getSystemService(TelecomManager.class);
+      PhoneAccount phoneAccount = telecomManager.getPhoneAccount(handle);
+      return phoneAccount.getShortDescription().toString();
+    } else {
+      return String.format(
+          context.getString(R.string.notification_voicemail_text_format),
+          PhoneNumberUtils.formatNumber(voicemailNumber));
+    }
+  }
+
+  public static void cancelNotification(@NonNull Context context) {
+    LogUtil.enterBlock("LegacyVoicemailNotifier.cancelNotification");
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    notificationManager.cancel(NOTIFICATION_TAG, NOTIFICATION_ID);
+  }
+
+  private LegacyVoicemailNotifier() {}
+}
diff --git a/java/com/android/dialer/app/calllog/MissedCallNotifier.java b/java/com/android/dialer/app/calllog/MissedCallNotifier.java
index dd13298..e0e3fdf 100644
--- a/java/com/android/dialer/app/calllog/MissedCallNotifier.java
+++ b/java/com/android/dialer/app/calllog/MissedCallNotifier.java
@@ -30,11 +30,13 @@
 import android.support.annotation.Nullable;
 import android.support.annotation.VisibleForTesting;
 import android.support.annotation.WorkerThread;
+import android.support.v4.os.BuildCompat;
 import android.support.v4.os.UserManagerCompat;
 import android.support.v4.util.Pair;
 import android.text.BidiFormatter;
 import android.text.TextDirectionHeuristics;
 import android.text.TextUtils;
+import android.util.ArraySet;
 import com.android.contacts.common.ContactsUtils;
 import com.android.contacts.common.compat.PhoneNumberUtilsCompat;
 import com.android.dialer.app.DialtactsActivity;
@@ -46,23 +48,20 @@
 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.notification.NotificationChannelId;
 import com.android.dialer.phonenumbercache.ContactInfo;
 import com.android.dialer.phonenumberutil.PhoneNumberHelper;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.IntentUtil;
-import java.util.HashSet;
 import java.util.List;
 import java.util.Set;
 
 /** Creates a notification for calls that the user missed (neither answered nor rejected). */
 public class MissedCallNotifier implements Worker<Pair<Integer, String>, Void> {
 
-  /** The tag used to identify notifications from this class. */
-  static final String NOTIFICATION_TAG = "MissedCallNotifier";
-  /** The identifier of the notification of new missed calls. */
-  private static final int NOTIFICATION_ID = R.id.notification_missed_call;
+  static final String NOTIFICATION_TAG_PREFIX = "MissedCall_";
+  static final String NOTIFICATION_GROUP = "MissedCall";
+  private static final int NOTIFICATION_ID = 1;
 
   private final Context context;
   private final CallLogNotificationsQueryHelper callLogNotificationsQueryHelper;
@@ -104,7 +103,8 @@
 
     if ((newCalls != null && newCalls.isEmpty()) || count == 0) {
       // No calls to notify about: clear the notification.
-      CallLogNotificationsQueryHelper.removeMissedCallNotifications(context, null);
+      CallLogNotificationsQueryHelper.markAllMissedCallsInCallLogAsRead(context);
+      cancelAllMissedCallNotifications(context);
       return;
     }
 
@@ -146,7 +146,7 @@
                   null,
                   System.currentTimeMillis());
 
-      //TODO: look up caller ID that is not in contacts.
+      // TODO: look up caller ID that is not in contacts.
       ContactInfo contactInfo =
           callLogNotificationsQueryHelper.getContactInfo(
               call.number, call.numberPresentation, call.countryIso);
@@ -181,36 +181,39 @@
     publicSummaryBuilder
         .setContentTitle(context.getText(titleResId))
         .setContentIntent(createCallLogPendingIntent())
-        .setDeleteIntent(createClearMissedCallsPendingIntent(null));
+        .setDeleteIntent(
+            CallLogNotificationsService.createCancelAllMissedCallsPendingIntent(context));
 
     // Create the notification summary suitable for display when sensitive information is showing.
     groupSummary
         .setContentTitle(context.getText(titleResId))
         .setContentText(expandedText)
         .setContentIntent(createCallLogPendingIntent())
-        .setDeleteIntent(createClearMissedCallsPendingIntent(null))
+        .setDeleteIntent(
+            CallLogNotificationsService.createCancelAllMissedCallsPendingIntent(context))
         .setGroupSummary(useCallList)
         .setOnlyAlertOnce(useCallList)
         .setPublicVersion(publicSummaryBuilder.build());
-
-    NotificationChannelManager.applyChannel(groupSummary, context, Channel.MISSED_CALL, null);
+    if (BuildCompat.isAtLeastO()) {
+      groupSummary.setChannelId(NotificationChannelId.MISSED_CALL);
+    }
 
     Notification notification = groupSummary.build();
     configureLedOnNotification(notification);
 
     LogUtil.i("MissedCallNotifier.updateMissedCallNotification", "adding missed call notification");
-    getNotificationMgr().notify(NOTIFICATION_TAG, NOTIFICATION_ID, notification);
+    getNotificationMgr().notify(getNotificationTagForGroupSummary(), NOTIFICATION_ID, notification);
 
     if (useCallList) {
       // Do not repost active notifications to prevent erasing post call notes.
       NotificationManager manager = getNotificationMgr();
-      Set<String> activeTags = new HashSet<>();
+      Set<String> activeTags = new ArraySet<>();
       for (StatusBarNotification activeNotification : manager.getActiveNotifications()) {
         activeTags.add(activeNotification.getTag());
       }
 
       for (NewCall call : newCalls) {
-        String callTag = call.callsUri.toString();
+        String callTag = getNotificationTagForCall(call);
         if (!activeTags.contains(callTag)) {
           manager.notify(callTag, NOTIFICATION_ID, getNotificationForCall(call, null));
         }
@@ -218,6 +221,59 @@
     }
   }
 
+  public static void cancelAllMissedCallNotifications(@NonNull Context context) {
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
+      String tag = notification.getTag();
+      if (tag != null && tag.startsWith(NOTIFICATION_TAG_PREFIX)) {
+        notificationManager.cancel(tag, notification.getId());
+      }
+    }
+  }
+
+  public static void cancelSingleMissedCallNotification(
+      @NonNull Context context, @Nullable Uri callUri) {
+    if (callUri == null) {
+      LogUtil.e(
+          "MissedCallNotifier.cancelSingleMissedCallNotification",
+          "unable to cancel notification, uri is null");
+      return;
+    }
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    String callTag = getNotificationTagForCallUri(callUri);
+    String summaryTag = getNotificationTagForGroupSummary();
+    int notificationCount = 0;
+
+    for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
+      String currentTag = notification.getTag();
+      if (currentTag == null) {
+        continue;
+      }
+      if (currentTag.equals(callTag)) {
+        notificationManager.cancel(notification.getTag(), notification.getId());
+      } else if (currentTag.startsWith(NOTIFICATION_TAG_PREFIX) && !currentTag.equals(summaryTag)) {
+        notificationCount++;
+      }
+    }
+
+    if (notificationCount == 0) {
+      // There are no more missed call notifications. Remove the summary notification too.
+      notificationManager.cancel(summaryTag, NOTIFICATION_ID);
+    }
+  }
+
+  private static String getNotificationTagForGroupSummary() {
+    return NOTIFICATION_TAG_PREFIX + "GroupSummary";
+  }
+
+  private static String getNotificationTagForCall(@NonNull NewCall call) {
+    return getNotificationTagForCallUri(call.callsUri);
+  }
+
+  private static String getNotificationTagForCallUri(@NonNull Uri callUri) {
+    return NOTIFICATION_TAG_PREFIX + callUri;
+  }
+
   public void insertPostCallNotification(@NonNull String number, @NonNull String note) {
     List<NewCall> newCalls = callLogNotificationsQueryHelper.getNewMissedCalls();
     if (newCalls != null && !newCalls.isEmpty()) {
@@ -226,7 +282,9 @@
           // Update the first notification that matches our post call note sender.
           getNotificationMgr()
               .notify(
-                  call.callsUri.toString(), NOTIFICATION_ID, getNotificationForCall(call, note));
+                  getNotificationTagForCall(call),
+                  NOTIFICATION_ID,
+                  getNotificationForCall(call, note));
           break;
         }
       }
@@ -308,7 +366,7 @@
 
   private Notification.Builder createNotificationBuilder() {
     return new Notification.Builder(context)
-        .setGroup(NOTIFICATION_TAG)
+        .setGroup(NOTIFICATION_GROUP)
         .setSmallIcon(android.R.drawable.stat_notify_missed_call)
         .setColor(context.getResources().getColor(R.color.dialer_theme_color, null))
         .setAutoCancel(true)
@@ -321,10 +379,14 @@
     Builder builder =
         createNotificationBuilder()
             .setWhen(call.dateMs)
-            .setDeleteIntent(createClearMissedCallsPendingIntent(call.callsUri))
+            .setDeleteIntent(
+                CallLogNotificationsService.createCancelSingleMissedCallPendingIntent(
+                    context, call.callsUri))
             .setContentIntent(createCallLogPendingIntent(call.callsUri));
+    if (BuildCompat.isAtLeastO()) {
+      builder.setChannelId(NotificationChannelId.MISSED_CALL);
+    }
 
-    NotificationChannelManager.applyChannel(builder, context, Channel.MISSED_CALL, null);
     return builder;
   }
 
@@ -332,7 +394,8 @@
   @WorkerThread
   public void callBackFromMissedCall(String number, Uri callUri) {
     closeSystemDialogs(context);
-    CallLogNotificationsQueryHelper.removeMissedCallNotifications(context, callUri);
+    CallLogNotificationsQueryHelper.markSingleMissedCallInCallLogAsRead(context, callUri);
+    cancelSingleMissedCallNotification(context, callUri);
     DialerUtils.startActivityWithErrorToast(
         context,
         new CallIntentBuilder(number, CallInitiationType.Type.MISSED_CALL_NOTIFICATION)
@@ -343,7 +406,8 @@
   /** Trigger an intent to send an sms from a missed call number. */
   public void sendSmsFromMissedCall(String number, Uri callUri) {
     closeSystemDialogs(context);
-    CallLogNotificationsQueryHelper.removeMissedCallNotifications(context, callUri);
+    CallLogNotificationsQueryHelper.markSingleMissedCallInCallLogAsRead(context, callUri);
+    cancelSingleMissedCallNotification(context, callUri);
     DialerUtils.startActivityWithErrorToast(
         context, IntentUtil.getSendSmsIntent(number).setFlags(Intent.FLAG_ACTIVITY_NEW_TASK));
   }
@@ -371,14 +435,6 @@
     return PendingIntent.getActivity(context, 0, contentIntent, PendingIntent.FLAG_UPDATE_CURRENT);
   }
 
-  /** Creates a pending intent that marks all new missed calls as old. */
-  private PendingIntent createClearMissedCallsPendingIntent(@Nullable Uri callUri) {
-    Intent intent = new Intent(context, CallLogNotificationsService.class);
-    intent.setAction(CallLogNotificationsService.ACTION_MARK_NEW_MISSED_CALLS_AS_OLD);
-    intent.setData(callUri);
-    return PendingIntent.getService(context, 0, intent, 0);
-  }
-
   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);
diff --git a/java/com/android/dialer/app/calllog/PhoneAccountHandles.java b/java/com/android/dialer/app/calllog/PhoneAccountHandles.java
deleted file mode 100644
index acffffb..0000000
--- a/java/com/android/dialer/app/calllog/PhoneAccountHandles.java
+++ /dev/null
@@ -1,62 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package com.android.dialer.app.calllog;
-
-import android.content.ComponentName;
-import android.content.Context;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import android.telecom.PhoneAccount;
-import android.telecom.PhoneAccountHandle;
-import com.android.dialer.app.calllog.CallLogNotificationsQueryHelper.NewCall;
-import com.android.dialer.common.LogUtil;
-import com.android.dialer.telecom.TelecomUtil;
-import java.util.List;
-
-/** Methods to help extract {@link PhoneAccount} information from database and Telecomm sources. */
-class PhoneAccountHandles {
-
-  @Nullable
-  public static PhoneAccountHandle getAccount(@NonNull Context context, @Nullable NewCall call) {
-    PhoneAccountHandle handle;
-    if (call == null || call.accountComponentName == null || call.accountId == null) {
-      LogUtil.v(
-          "PhoneAccountUtils.getAccount",
-          "accountComponentName == null || callToNotify.accountId == null");
-      handle = TelecomUtil.getDefaultOutgoingPhoneAccount(context, PhoneAccount.SCHEME_TEL);
-      if (handle == null) {
-        List<PhoneAccountHandle> callCapablePhoneAccounts =
-            TelecomUtil.getCallCapablePhoneAccounts(context);
-        if (!callCapablePhoneAccounts.isEmpty()) {
-          return callCapablePhoneAccounts.get(0);
-        }
-        return null;
-      }
-    } else {
-      handle =
-          new PhoneAccountHandle(
-              ComponentName.unflattenFromString(call.accountComponentName), call.accountId);
-    }
-    if (handle.getComponentName() != null) {
-      LogUtil.v(
-          "PhoneAccountUtils.getAccount",
-          "PhoneAccountHandle.ComponentInfo:" + handle.getComponentName());
-    } else {
-      LogUtil.i("PhoneAccountUtils.getAccount", "PhoneAccountHandle.ComponentInfo: null");
-    }
-    return handle;
-  }
-}
diff --git a/java/com/android/dialer/app/calllog/VisualVoicemailNotifier.java b/java/com/android/dialer/app/calllog/VisualVoicemailNotifier.java
new file mode 100644
index 0000000..99fe466
--- /dev/null
+++ b/java/com/android/dialer/app/calllog/VisualVoicemailNotifier.java
@@ -0,0 +1,291 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.app.calllog;
+
+import android.app.Notification;
+import android.app.NotificationManager;
+import android.app.PendingIntent;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.Bitmap;
+import android.net.Uri;
+import android.os.Build.VERSION;
+import android.os.Build.VERSION_CODES;
+import android.service.notification.StatusBarNotification;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.v4.os.BuildCompat;
+import android.telecom.PhoneAccount;
+import android.telecom.PhoneAccountHandle;
+import android.telephony.TelephonyManager;
+import android.text.TextUtils;
+import com.android.contacts.common.util.ContactDisplayUtils;
+import com.android.dialer.app.DialtactsActivity;
+import com.android.dialer.app.R;
+import com.android.dialer.app.calllog.CallLogNotificationsQueryHelper.NewCall;
+import com.android.dialer.app.contactinfo.ContactPhotoLoader;
+import com.android.dialer.app.list.DialtactsPagerAdapter;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+import com.android.dialer.notification.NotificationChannelManager;
+import com.android.dialer.phonenumbercache.ContactInfo;
+import com.android.dialer.telecom.TelecomUtil;
+import java.util.List;
+import java.util.Map;
+
+/** Shows a notification in the status bar for visual voicemail. */
+final class VisualVoicemailNotifier {
+  private static final String NOTIFICATION_TAG_PREFIX = "VisualVoicemail_";
+  private static final String NOTIFICATION_GROUP = "VisualVoicemail";
+  private static final int NOTIFICATION_ID = 1;
+
+  public static void showNotifications(
+      @NonNull Context context,
+      @NonNull List<NewCall> newCalls,
+      @NonNull Map<String, ContactInfo> contactInfos,
+      @Nullable String callers) {
+    LogUtil.enterBlock("VisualVoicemailNotifier.showNotifications");
+    PendingIntent deleteIntent =
+        CallLogNotificationsService.createMarkAllNewVoicemailsAsOldIntent(context);
+    String contentTitle =
+        context
+            .getResources()
+            .getQuantityString(
+                R.plurals.notification_voicemail_title, newCalls.size(), newCalls.size());
+    Notification.Builder groupSummary =
+        createNotificationBuilder(context)
+            .setContentTitle(contentTitle)
+            .setContentText(callers)
+            .setDeleteIntent(deleteIntent)
+            .setGroupSummary(true)
+            .setContentIntent(newVoicemailIntent(context, null));
+
+    if (BuildCompat.isAtLeastO()) {
+      groupSummary.setGroupAlertBehavior(Notification.GROUP_ALERT_CHILDREN);
+      PhoneAccountHandle handle = getAccountForCall(context, newCalls.get(0));
+      groupSummary.setChannelId(NotificationChannelManager.getVoicemailChannelId(context, handle));
+    }
+
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    notificationManager.notify(
+        getNotificationTagForGroupSummary(), NOTIFICATION_ID, groupSummary.build());
+
+    for (NewCall voicemail : newCalls) {
+      notificationManager.notify(
+          getNotificationTagForVoicemail(voicemail),
+          NOTIFICATION_ID,
+          createNotificationForVoicemail(context, voicemail, contactInfos));
+    }
+  }
+
+  public static void cancelAllVoicemailNotifications(@NonNull Context context) {
+    LogUtil.enterBlock("VisualVoicemailNotifier.cancelAllVoicemailNotifications");
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
+      String tag = notification.getTag();
+      if (tag != null && tag.startsWith(NOTIFICATION_TAG_PREFIX)) {
+        notificationManager.cancel(tag, notification.getId());
+      }
+    }
+  }
+
+  public static void cancelSingleVoicemailNotification(
+      @NonNull Context context, @Nullable Uri voicemailUri) {
+    LogUtil.enterBlock("VisualVoicemailNotifier.cancelSingleVoicemailNotification");
+    if (voicemailUri == null) {
+      LogUtil.e("VisualVoicemailNotifier.cancelSingleVoicemailNotification", "uri is null");
+      return;
+    }
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    String voicemailTag = getNotificationTagForUri(voicemailUri);
+    String summaryTag = getNotificationTagForGroupSummary();
+    int notificationCount = 0;
+
+    for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
+      String currentTag = notification.getTag();
+      if (currentTag == null) {
+        continue;
+      }
+      if (currentTag.equals(voicemailTag)) {
+        notificationManager.cancel(notification.getTag(), notification.getId());
+      } else if (currentTag.startsWith(NOTIFICATION_TAG_PREFIX) && !currentTag.equals(summaryTag)) {
+        notificationCount++;
+      }
+    }
+
+    if (notificationCount == 0) {
+      // There are no more visual voicemail notifications. Remove the summary notification too.
+      notificationManager.cancel(summaryTag, NOTIFICATION_ID);
+    }
+  }
+
+  private static String getNotificationTagForVoicemail(@NonNull NewCall voicemail) {
+    return getNotificationTagForUri(voicemail.voicemailUri);
+  }
+
+  private static String getNotificationTagForUri(@NonNull Uri voicemailUri) {
+    return NOTIFICATION_TAG_PREFIX + voicemailUri;
+  }
+
+  private static String getNotificationTagForGroupSummary() {
+    return NOTIFICATION_TAG_PREFIX + "GroupSummary";
+  }
+
+  private static Notification.Builder createNotificationBuilder(@NonNull Context context) {
+    return new Notification.Builder(context)
+        .setSmallIcon(android.R.drawable.stat_notify_voicemail)
+        .setColor(context.getColor(R.color.dialer_theme_color))
+        .setGroup(NOTIFICATION_GROUP)
+        .setOnlyAlertOnce(true)
+        .setAutoCancel(true);
+  }
+
+  private static Notification createNotificationForVoicemail(
+      @NonNull Context context,
+      @NonNull NewCall voicemail,
+      @NonNull Map<String, ContactInfo> contactInfos) {
+    PhoneAccountHandle handle = getAccountForCall(context, voicemail);
+    ContactInfo contactInfo = contactInfos.get(voicemail.number);
+
+    Notification.Builder builder =
+        createNotificationBuilder(context)
+            .setContentTitle(
+                context
+                    .getResources()
+                    .getQuantityString(R.plurals.notification_voicemail_title, 1, 1))
+            .setContentText(
+                ContactDisplayUtils.getTtsSpannedPhoneNumber(
+                    context.getResources(),
+                    R.string.notification_new_voicemail_ticker,
+                    contactInfo.name))
+            .setWhen(voicemail.dateMs)
+            .setSound(getVoicemailRingtoneUri(context, handle))
+            .setDefaults(getNotificationDefaultFlags(context, handle));
+
+    if (voicemail.voicemailUri != null) {
+      builder.setDeleteIntent(
+          CallLogNotificationsService.createMarkSingleNewVoicemailAsOldIntent(
+              context, voicemail.voicemailUri));
+    }
+
+    if (BuildCompat.isAtLeastO()) {
+      builder.setChannelId(NotificationChannelManager.getVoicemailChannelId(context, handle));
+    }
+
+    ContactPhotoLoader loader = new ContactPhotoLoader(context, contactInfo);
+    Bitmap photoIcon = loader.loadPhotoIcon();
+    if (photoIcon != null) {
+      builder.setLargeIcon(photoIcon);
+    }
+    if (!TextUtils.isEmpty(voicemail.transcription)) {
+      Logger.get(context)
+          .logImpression(DialerImpression.Type.VVM_NOTIFICATION_CREATED_WITH_TRANSCRIPTION);
+      builder.setStyle(new Notification.BigTextStyle().bigText(voicemail.transcription));
+    }
+    builder.setContentIntent(newVoicemailIntent(context, voicemail));
+    Logger.get(context).logImpression(DialerImpression.Type.VVM_NOTIFICATION_CREATED);
+    return builder.build();
+  }
+
+  @Nullable
+  private static Uri getVoicemailRingtoneUri(
+      @NonNull Context context, @Nullable PhoneAccountHandle handle) {
+    if (VERSION.SDK_INT < VERSION_CODES.N) {
+      return null;
+    }
+    if (handle == null) {
+      LogUtil.i("VisualVoicemailNotifier.getVoicemailRingtoneUri", "null handle, getting fallback");
+      handle = getFallbackAccount(context);
+      if (handle == null) {
+        LogUtil.i(
+            "VisualVoicemailNotifier.getVoicemailRingtoneUri",
+            "no fallback handle, using null (default) ringtone");
+        return null;
+      }
+    }
+    return context.getSystemService(TelephonyManager.class).getVoicemailRingtoneUri(handle);
+  }
+
+  private static int getNotificationDefaultFlags(
+      @NonNull Context context, @Nullable PhoneAccountHandle handle) {
+    if (VERSION.SDK_INT < VERSION_CODES.N) {
+      return Notification.DEFAULT_ALL;
+    }
+    if (handle == null) {
+      LogUtil.i(
+          "VisualVoicemailNotifier.getNotificationDefaultFlags", "null handle, getting fallback");
+      handle = getFallbackAccount(context);
+      if (handle == null) {
+        LogUtil.i(
+            "VisualVoicemailNotifier.getNotificationDefaultFlags",
+            "no fallback handle, using default vibration");
+        return Notification.DEFAULT_ALL;
+      }
+    }
+    if (context.getSystemService(TelephonyManager.class).isVoicemailVibrationEnabled(handle)) {
+      return Notification.DEFAULT_VIBRATE;
+    }
+    return 0;
+  }
+
+  private static PendingIntent newVoicemailIntent(
+      @NonNull Context context, @Nullable NewCall voicemail) {
+    Intent intent =
+        DialtactsActivity.getShowTabIntent(context, DialtactsPagerAdapter.TAB_INDEX_VOICEMAIL);
+    // TODO (b/35486204): scroll to this voicemail
+    if (voicemail != null) {
+      intent.setData(voicemail.voicemailUri);
+    }
+    intent.putExtra(DialtactsActivity.EXTRA_CLEAR_NEW_VOICEMAILS, true);
+    return PendingIntent.getActivity(context, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT);
+  }
+
+  /**
+   * Gets a phone account for the given call entry. This could be null if SIM associated with the
+   * entry is no longer in the device or for other reasons (for example, modem reboot).
+   */
+  @Nullable
+  public static PhoneAccountHandle getAccountForCall(
+      @NonNull Context context, @Nullable NewCall call) {
+    if (call == null || call.accountComponentName == null || call.accountId == null) {
+      return null;
+    }
+    return new PhoneAccountHandle(
+        ComponentName.unflattenFromString(call.accountComponentName), call.accountId);
+  }
+
+  /**
+   * Gets any available phone account that can be used to get sound settings for voicemail. This is
+   * only called if the phone account for the voicemail entry can't be found.
+   */
+  @Nullable
+  public static PhoneAccountHandle getFallbackAccount(@NonNull Context context) {
+    PhoneAccountHandle handle =
+        TelecomUtil.getDefaultOutgoingPhoneAccount(context, PhoneAccount.SCHEME_TEL);
+    if (handle == null) {
+      List<PhoneAccountHandle> handles = TelecomUtil.getCallCapablePhoneAccounts(context);
+      if (!handles.isEmpty()) {
+        handle = handles.get(0);
+      }
+    }
+    return handle;
+  }
+
+  private VisualVoicemailNotifier() {}
+}
diff --git a/java/com/android/dialer/app/calllog/VisualVoicemailUpdateTask.java b/java/com/android/dialer/app/calllog/VisualVoicemailUpdateTask.java
new file mode 100644
index 0000000..d6601be
--- /dev/null
+++ b/java/com/android/dialer/app/calllog/VisualVoicemailUpdateTask.java
@@ -0,0 +1,168 @@
+/*
+ * Copyright (C) 2011 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.app.calllog;
+
+import android.content.Context;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.annotation.WorkerThread;
+import android.text.TextUtils;
+import android.util.ArrayMap;
+import com.android.dialer.app.R;
+import com.android.dialer.app.calllog.CallLogNotificationsQueryHelper.NewCall;
+import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler;
+import com.android.dialer.blocking.FilteredNumbersUtil;
+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.phonenumbercache.ContactInfo;
+import com.android.dialer.telecom.TelecomUtil;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
+/** Updates voicemail notifications in the background. */
+class VisualVoicemailUpdateTask implements Worker<VisualVoicemailUpdateTask.Input, Void> {
+  @Nullable
+  @Override
+  public Void doInBackground(@NonNull Input input) throws Throwable {
+    updateNotification(input.context, input.queryHelper, input.queryHandler);
+    return null;
+  }
+
+  /**
+   * Updates the notification and notifies of the call with the given URI.
+   *
+   * <p>Clears the notification if there are no new voicemails, and notifies if the given URI
+   * corresponds to a new voicemail.
+   */
+  @WorkerThread
+  private static void updateNotification(
+      Context context,
+      CallLogNotificationsQueryHelper queryHelper,
+      FilteredNumberAsyncQueryHandler queryHandler) {
+    Assert.isWorkerThread();
+
+    List<NewCall> newCalls = queryHelper.getNewVoicemails();
+    if (newCalls == null) {
+      return;
+    }
+    newCalls = filterBlockedNumbers(context, queryHandler, newCalls);
+    if (newCalls.isEmpty()) {
+      return;
+    }
+
+    // This represents a list of names to include in the notification.
+    String callers = null;
+
+    // Maps each number into a name: if a number is in the map, it has already left a more
+    // recent voicemail.
+    Map<String, ContactInfo> contactInfos = new ArrayMap<>();
+    for (NewCall newCall : newCalls) {
+      if (!contactInfos.containsKey(newCall.number)) {
+        ContactInfo contactInfo =
+            queryHelper.getContactInfo(
+                newCall.number, newCall.numberPresentation, newCall.countryIso);
+        contactInfos.put(newCall.number, contactInfo);
+
+        // This is a new caller. Add it to the back of the list of callers.
+        if (TextUtils.isEmpty(callers)) {
+          callers = contactInfo.name;
+        } else {
+          callers =
+              context.getString(
+                  R.string.notification_voicemail_callers_list, callers, contactInfo.name);
+        }
+      }
+    }
+    VisualVoicemailNotifier.showNotifications(context, newCalls, contactInfos, callers);
+  }
+
+  @WorkerThread
+  private static List<NewCall> filterBlockedNumbers(
+      Context context, FilteredNumberAsyncQueryHandler queryHandler, List<NewCall> newCalls) {
+    Assert.isWorkerThread();
+    if (FilteredNumbersUtil.hasRecentEmergencyCall(context)) {
+      LogUtil.i(
+          "VisualVoicemailUpdateTask.filterBlockedNumbers",
+          "not filtering due to recent emergency call");
+      return newCalls;
+    }
+
+    List<NewCall> result = new ArrayList<>();
+    for (NewCall newCall : newCalls) {
+      if (queryHandler.getBlockedIdSynchronous(newCall.number, newCall.countryIso) != null) {
+        LogUtil.i(
+            "VisualVoicemailUpdateTask.filterBlockedNumbers",
+            "found voicemail from blocked number, deleting");
+        if (newCall.voicemailUri != null) {
+          // Delete the voicemail.
+          CallLogAsyncTaskUtil.deleteVoicemailSynchronous(context, newCall.voicemailUri);
+        }
+      } else {
+        result.add(newCall);
+      }
+    }
+    return result;
+  }
+
+  /** Updates the voicemail notifications displayed. */
+  static void scheduleTask(@NonNull Context context, @NonNull Runnable callback) {
+    Assert.isNotNull(context);
+    Assert.isNotNull(callback);
+    if (!TelecomUtil.isDefaultDialer(context)) {
+      LogUtil.i("VisualVoicemailUpdateTask.scheduleTask", "not default dialer, not running");
+      callback.run();
+      return;
+    }
+
+    Input input =
+        new Input(
+            context,
+            CallLogNotificationsQueryHelper.getInstance(context),
+            new FilteredNumberAsyncQueryHandler(context));
+    DialerExecutors.createNonUiTaskBuilder(new VisualVoicemailUpdateTask())
+        .onSuccess(
+            output -> {
+              LogUtil.i("VisualVoicemailUpdateTask.scheduleTask", "update successful");
+              callback.run();
+            })
+        .onFailure(
+            throwable -> {
+              LogUtil.i("VisualVoicemailUpdateTask.scheduleTask", "update failed: " + throwable);
+              callback.run();
+            })
+        .build()
+        .executeParallel(input);
+  }
+
+  static class Input {
+    @NonNull final Context context;
+    @NonNull final CallLogNotificationsQueryHelper queryHelper;
+    @NonNull final FilteredNumberAsyncQueryHandler queryHandler;
+
+    Input(
+        Context context,
+        CallLogNotificationsQueryHelper queryHelper,
+        FilteredNumberAsyncQueryHandler queryHandler) {
+      this.context = context;
+      this.queryHelper = queryHelper;
+      this.queryHandler = queryHandler;
+    }
+  }
+}
diff --git a/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java b/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java
index 777f4c7..2fbebdd 100644
--- a/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java
+++ b/java/com/android/dialer/app/calllog/VoicemailQueryHandler.java
@@ -15,7 +15,6 @@
  */
 package com.android.dialer.app.calllog;
 
-import android.app.NotificationManager;
 import android.content.AsyncQueryHandler;
 import android.content.ContentResolver;
 import android.content.ContentValues;
@@ -23,30 +22,49 @@
 import android.net.Uri;
 import android.provider.CallLog.Calls;
 import android.support.annotation.MainThread;
+import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
-import com.android.dialer.app.R;
+import android.support.annotation.WorkerThread;
 import com.android.dialer.common.Assert;
-import com.android.dialer.notification.GroupedNotificationUtil;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.common.concurrent.ThreadUtil;
 
 /** Handles asynchronous queries to the call log for voicemail. */
 public class VoicemailQueryHandler extends AsyncQueryHandler {
 
-  private static final String TAG = "VoicemailQueryHandler";
-
   /** The token for the query to mark all new voicemails as old. */
   private static final int UPDATE_MARK_VOICEMAILS_AS_OLD_TOKEN = 50;
 
-  private Context mContext;
-
   @MainThread
-  public VoicemailQueryHandler(Context context, ContentResolver contentResolver) {
+  private VoicemailQueryHandler(ContentResolver contentResolver) {
     super(contentResolver);
     Assert.isMainThread();
-    mContext = context;
+  }
+
+  @WorkerThread
+  public static void markAllNewVoicemailsAsRead(final @NonNull Context context) {
+    ThreadUtil.postOnUiThread(
+        () -> {
+          new VoicemailQueryHandler(context.getContentResolver()).markNewVoicemailsAsOld(null);
+        });
+  }
+
+  @WorkerThread
+  public static void markSingleNewVoicemailAsRead(
+      final @NonNull Context context, final Uri voicemailUri) {
+    if (voicemailUri == null) {
+      LogUtil.e("VoicemailQueryHandler.markSingleNewVoicemailAsRead", "voicemail URI is null");
+      return;
+    }
+    ThreadUtil.postOnUiThread(
+        () -> {
+          new VoicemailQueryHandler(context.getContentResolver())
+              .markNewVoicemailsAsOld(voicemailUri);
+        });
   }
 
   /** Updates all new voicemails to mark them as old. */
-  public void markNewVoicemailsAsOld(@Nullable Uri voicemailUri) {
+  private void markNewVoicemailsAsOld(@Nullable Uri voicemailUri) {
     // Mark all "new" voicemails as not new anymore.
     StringBuilder where = new StringBuilder();
     where.append(Calls.NEW);
@@ -70,11 +88,5 @@
         voicemailUri == null
             ? new String[] {Integer.toString(Calls.VOICEMAIL_TYPE)}
             : new String[] {Integer.toString(Calls.VOICEMAIL_TYPE), voicemailUri.toString()});
-
-    GroupedNotificationUtil.removeNotification(
-        mContext.getSystemService(NotificationManager.class),
-        voicemailUri != null ? voicemailUri.toString() : null,
-        R.id.notification_visual_voicemail,
-        DefaultVoicemailNotifier.VISUAL_VOICEMAIL_NOTIFICATION_TAG);
   }
 }
diff --git a/java/com/android/dialer/app/calllog/calllogcache/CallLogCache.java b/java/com/android/dialer/app/calllog/calllogcache/CallLogCache.java
index 7645a33..6728dfb 100644
--- a/java/com/android/dialer/app/calllog/calllogcache/CallLogCache.java
+++ b/java/com/android/dialer/app/calllog/calllogcache/CallLogCache.java
@@ -19,7 +19,6 @@
 import android.content.Context;
 import android.telecom.PhoneAccountHandle;
 import com.android.dialer.app.calllog.CallLogAdapter;
-import com.android.dialer.compat.CompatUtils;
 import com.android.dialer.util.CallUtil;
 
 /**
@@ -46,10 +45,7 @@
 
   /** Return the most compatible version of the TelecomCallLogCache. */
   public static CallLogCache getCallLogCache(Context context) {
-    if (CompatUtils.isClassAvailable("android.telecom.PhoneAccountHandle")) {
-      return new CallLogCacheLollipopMr1(context);
-    }
-    return new CallLogCacheLollipop(context);
+    return new CallLogCacheLollipopMr1(context);
   }
 
   public void reset() {
diff --git a/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipop.java b/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipop.java
deleted file mode 100644
index 78aaa41..0000000
--- a/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipop.java
+++ /dev/null
@@ -1,74 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.dialer.app.calllog.calllogcache;
-
-import android.content.Context;
-import android.telecom.PhoneAccount;
-import android.telecom.PhoneAccountHandle;
-import android.telephony.PhoneNumberUtils;
-import android.text.TextUtils;
-
-/**
- * This is a compatibility class for the CallLogCache for versions of dialer before Lollipop Mr1
- * (the introduction of phone accounts).
- *
- * <p>This class should not be initialized directly and instead be acquired from {@link
- * CallLogCache#getCallLogCache}.
- */
-class CallLogCacheLollipop extends CallLogCache {
-
-  private String mVoicemailNumber;
-
-  /* package */ CallLogCacheLollipop(Context context) {
-    super(context);
-  }
-
-  @Override
-  public boolean isVoicemailNumber(PhoneAccountHandle accountHandle, CharSequence number) {
-    if (TextUtils.isEmpty(number)) {
-      return false;
-    }
-
-    String numberString = number.toString();
-
-    if (!TextUtils.isEmpty(mVoicemailNumber)) {
-      return PhoneNumberUtils.compare(numberString, mVoicemailNumber);
-    }
-
-    if (PhoneNumberUtils.isVoiceMailNumber(numberString)) {
-      mVoicemailNumber = numberString;
-      return true;
-    }
-
-    return false;
-  }
-
-  @Override
-  public String getAccountLabel(PhoneAccountHandle accountHandle) {
-    return null;
-  }
-
-  @Override
-  public int getAccountColor(PhoneAccountHandle accountHandle) {
-    return PhoneAccount.NO_HIGHLIGHT_COLOR;
-  }
-
-  @Override
-  public boolean doesAccountSupportCallSubject(PhoneAccountHandle accountHandle) {
-    return false;
-  }
-}
diff --git a/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipopMr1.java b/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipopMr1.java
index 0399987..f856806 100644
--- a/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipopMr1.java
+++ b/java/com/android/dialer/app/calllog/calllogcache/CallLogCacheLollipopMr1.java
@@ -17,15 +17,11 @@
 package com.android.dialer.app.calllog.calllogcache;
 
 import android.content.Context;
-import android.support.annotation.VisibleForTesting;
 import android.telecom.PhoneAccountHandle;
-import android.text.TextUtils;
 import android.util.ArrayMap;
-import android.util.Pair;
 import com.android.dialer.calllogutils.PhoneAccountUtils;
-import com.android.dialer.phonenumberutil.PhoneNumberHelper;
+import com.android.dialer.telecom.TelecomUtil;
 import java.util.Map;
-import java.util.concurrent.ConcurrentHashMap;
 
 /**
  * This is the CallLogCache for versions of dialer Lollipop Mr1 and above with support for multi-SIM
@@ -36,15 +32,6 @@
  */
 class CallLogCacheLollipopMr1 extends CallLogCache {
 
-  /*
-   * Maps from a phone-account/number pair to a boolean because multiple numbers could return true
-   * for the voicemail number if those numbers are not pre-normalized. Access must be synchronzied
-   * as it's used in the background thread in CallLogAdapter. {@see CallLogAdapter#loadData}
-   */
-  @VisibleForTesting
-  final Map<Pair<PhoneAccountHandle, CharSequence>, Boolean> mVoicemailQueryCache =
-      new ConcurrentHashMap<>();
-
   private final Map<PhoneAccountHandle, String> mPhoneAccountLabelCache = new ArrayMap<>();
   private final Map<PhoneAccountHandle, Integer> mPhoneAccountColorCache = new ArrayMap<>();
   private final Map<PhoneAccountHandle, Boolean> mPhoneAccountCallWithNoteCache = new ArrayMap<>();
@@ -55,7 +42,6 @@
 
   @Override
   public void reset() {
-    mVoicemailQueryCache.clear();
     mPhoneAccountLabelCache.clear();
     mPhoneAccountColorCache.clear();
     mPhoneAccountCallWithNoteCache.clear();
@@ -65,19 +51,7 @@
 
   @Override
   public boolean isVoicemailNumber(PhoneAccountHandle accountHandle, CharSequence number) {
-    if (TextUtils.isEmpty(number)) {
-      return false;
-    }
-
-    Pair<PhoneAccountHandle, CharSequence> key = new Pair<>(accountHandle, number);
-    Boolean value = mVoicemailQueryCache.get(key);
-    if (value != null) {
-      return value;
-    }
-    boolean isVoicemail =
-        PhoneNumberHelper.isVoicemailNumber(mContext, accountHandle, number.toString());
-    mVoicemailQueryCache.put(key, isVoicemail);
-    return isVoicemail;
+    return TelecomUtil.isVoicemailNumber(mContext, accountHandle, number.toString());
   }
 
   @Override
diff --git a/java/com/android/dialer/app/contactinfo/ContactInfoCache.java b/java/com/android/dialer/app/contactinfo/ContactInfoCache.java
index e561b56..82fc229 100644
--- a/java/com/android/dialer/app/contactinfo/ContactInfoCache.java
+++ b/java/com/android/dialer/app/contactinfo/ContactInfoCache.java
@@ -24,6 +24,7 @@
 import android.text.TextUtils;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.logging.ContactSource.Type;
+import com.android.dialer.oem.CequintCallerIdManager;
 import com.android.dialer.phonenumbercache.ContactInfo;
 import com.android.dialer.phonenumbercache.ContactInfoHelper;
 import com.android.dialer.util.ExpirableCache;
@@ -55,6 +56,7 @@
   private final OnContactInfoChangedListener mOnContactInfoChangedListener;
   private final BlockingQueue<ContactInfoRequest> mUpdateRequests;
   private final Handler mHandler;
+  private CequintCallerIdManager mCequintCallerIdManager;
   private QueryThread mContactInfoQueryThread;
   private volatile boolean mRequestProcessingDisabled = false;
 
@@ -95,6 +97,10 @@
     mHandler = new InnerHandler(new WeakReference<>(this));
   }
 
+  public void setCequintCallerIdManager(CequintCallerIdManager cequintCallerIdManager) {
+    mCequintCallerIdManager = cequintCallerIdManager;
+  }
+
   public ContactInfo getValue(
       String number,
       String countryIso,
@@ -156,11 +162,11 @@
     ContactInfo info;
     if (request.isLocalRequest()) {
       info = mContactInfoHelper.lookupNumber(request.number, request.countryIso);
-      if (!info.contactExists) {
+      if (info != null && !info.contactExists) {
         // TODO: Maybe skip look up if it's already available in cached number lookup
         // service.
         long start = SystemClock.elapsedRealtime();
-        mContactInfoHelper.updateFromCequintCallerId(info, request.number);
+        mContactInfoHelper.updateFromCequintCallerId(mCequintCallerIdManager, info, request.number);
         long time = SystemClock.elapsedRealtime() - start;
         LogUtil.d(
             "ContactInfoCache.queryContactInfo", "Cequint Caller Id look up takes %d ms", time);
diff --git a/java/com/android/dialer/app/dialpad/DialpadFragment.java b/java/com/android/dialer/app/dialpad/DialpadFragment.java
index e9d57b3..d339437 100644
--- a/java/com/android/dialer/app/dialpad/DialpadFragment.java
+++ b/java/com/android/dialer/app/dialpad/DialpadFragment.java
@@ -29,6 +29,7 @@
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.content.pm.PackageManager;
+import android.content.res.Resources;
 import android.database.Cursor;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
@@ -84,6 +85,9 @@
 import com.android.dialer.dialpadview.DialpadKeyButton;
 import com.android.dialer.dialpadview.DialpadView;
 import com.android.dialer.location.GeoUtil;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.oem.MotorolaUtils;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.proguard.UsedByReflection;
 import com.android.dialer.telecom.TelecomUtil;
 import com.android.dialer.util.CallUtil;
@@ -626,6 +630,14 @@
     Trace.beginSection(TAG + " onResume");
     super.onResume();
 
+    Resources res = getResources();
+    int iconId = R.drawable.quantum_ic_call_vd_theme_24;
+    if (MotorolaUtils.isWifiCallingAvailable(getContext())) {
+      iconId = R.drawable.ic_wifi_calling;
+    }
+    mFloatingActionButtonController.changeIcon(
+        res.getDrawable(iconId, null), res.getString(R.string.description_dial_button));
+
     final DialtactsActivity activity = (DialtactsActivity) getActivity();
     mDialpadQueryListener = activity;
 
@@ -1005,6 +1017,8 @@
    */
   private void handleDialButtonPressed() {
     if (isDigitsEmpty()) { // No number entered.
+      // No real call made, so treat it as a click
+      PerformanceReport.recordClick(UiAction.Type.PRESS_CALL_BUTTON_WITHOUT_CALLING);
       handleDialButtonClickWithEmptyDigits();
     } else {
       final String number = mDigits.getText().toString();
@@ -1015,6 +1029,7 @@
       if (number != null
           && !TextUtils.isEmpty(mProhibitedPhoneNumberRegexp)
           && number.matches(mProhibitedPhoneNumberRegexp)) {
+        PerformanceReport.recordClick(UiAction.Type.PRESS_CALL_BUTTON_WITHOUT_CALLING);
         LogUtil.i(
             "DialpadFragment.handleDialButtonPressed",
             "The phone number is prohibited explicitly by a rule.");
@@ -1051,6 +1066,10 @@
       startActivity(newFlashIntent());
     } else {
       if (!TextUtils.isEmpty(mLastNumberDialed)) {
+        // Dialpad will be filled with last called number,
+        // but we don't want to record it as user action
+        PerformanceReport.setIgnoreActionOnce(UiAction.Type.TEXT_CHANGE_WITH_INPUT);
+
         // Recall the last number dialed.
         mDigits.setText(mLastNumberDialed);
 
diff --git a/java/com/android/dialer/app/filterednumber/NumbersAdapter.java b/java/com/android/dialer/app/filterednumber/NumbersAdapter.java
index f71517a..d98395e 100644
--- a/java/com/android/dialer/app/filterednumber/NumbersAdapter.java
+++ b/java/com/android/dialer/app/filterednumber/NumbersAdapter.java
@@ -28,6 +28,7 @@
 import android.widget.TextView;
 import com.android.contacts.common.ContactPhotoManager;
 import com.android.contacts.common.ContactPhotoManager.DefaultImageRequest;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
 import com.android.contacts.common.util.UriUtils;
 import com.android.dialer.app.R;
 import com.android.dialer.compat.CompatUtils;
@@ -98,8 +99,8 @@
         info.lookupUri == null ? null : UriUtils.getLookupKeyFromUri(info.lookupUri);
     final int contactType =
         mContactInfoHelper.isBusiness(info.sourceType)
-            ? ContactPhotoManager.TYPE_BUSINESS
-            : ContactPhotoManager.TYPE_DEFAULT;
+            ? LetterTileDrawable.TYPE_BUSINESS
+            : LetterTileDrawable.TYPE_DEFAULT;
     final DefaultImageRequest request =
         new DefaultImageRequest(displayName, lookupKey, contactType, true /* isCircular */);
     badge.assignContactUri(info.lookupUri);
diff --git a/java/com/android/dialer/app/legacybindings/DialerLegacyBindings.java b/java/com/android/dialer/app/legacybindings/DialerLegacyBindings.java
index 1cdeb21..a483af9 100644
--- a/java/com/android/dialer/app/legacybindings/DialerLegacyBindings.java
+++ b/java/com/android/dialer/app/legacybindings/DialerLegacyBindings.java
@@ -40,6 +40,8 @@
       Activity activity,
       ViewGroup alertContainer,
       CallLogAdapter.CallFetcher callFetcher,
+      CallLogAdapter.MultiSelectRemoveView multiSelectRemoveView,
+      CallLogAdapter.OnActionModeStateChangedListener actionModeStateChangedListener,
       CallLogCache callLogCache,
       ContactInfoCache contactInfoCache,
       VoicemailPlaybackPresenter voicemailPlaybackPresenter,
diff --git a/java/com/android/dialer/app/legacybindings/DialerLegacyBindingsStub.java b/java/com/android/dialer/app/legacybindings/DialerLegacyBindingsStub.java
index 6e32843..488fbad 100644
--- a/java/com/android/dialer/app/legacybindings/DialerLegacyBindingsStub.java
+++ b/java/com/android/dialer/app/legacybindings/DialerLegacyBindingsStub.java
@@ -34,6 +34,8 @@
       Activity activity,
       ViewGroup alertContainer,
       CallLogAdapter.CallFetcher callFetcher,
+      CallLogAdapter.MultiSelectRemoveView multiSelectRemoveView,
+      CallLogAdapter.OnActionModeStateChangedListener actionModeStateChangedListener,
       CallLogCache callLogCache,
       ContactInfoCache contactInfoCache,
       VoicemailPlaybackPresenter voicemailPlaybackPresenter,
@@ -43,6 +45,8 @@
         activity,
         alertContainer,
         callFetcher,
+        multiSelectRemoveView,
+        actionModeStateChangedListener,
         callLogCache,
         contactInfoCache,
         voicemailPlaybackPresenter,
diff --git a/java/com/android/dialer/app/list/AllContactsFragment.java b/java/com/android/dialer/app/list/AllContactsFragment.java
index 0460997..32a99e7 100644
--- a/java/com/android/dialer/app/list/AllContactsFragment.java
+++ b/java/com/android/dialer/app/list/AllContactsFragment.java
@@ -38,12 +38,16 @@
 import com.android.contacts.common.list.ContactListFilter;
 import com.android.contacts.common.list.DefaultContactListAdapter;
 import com.android.dialer.app.R;
-import com.android.dialer.app.widget.EmptyContentView;
-import com.android.dialer.app.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.IntentUtil;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
+import com.android.dialer.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
+import java.util.Arrays;
 
 /** Fragments to show all contacts with phone numbers. */
 public class AllContactsFragment extends ContactEntryListFragment<ContactEntryListAdapter>
@@ -149,6 +153,8 @@
   public void onItemClick(AdapterView<?> parent, View view, int position, long id) {
     final Uri uri = (Uri) view.getTag();
     if (uri != null) {
+      Logger.get(getContext())
+          .logInteraction(InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_ALL_CONTACTS_GENERAL);
       if (CompatUtils.hasPrioritizedMimeType()) {
         QuickContact.showQuickContact(getContext(), view, uri, null, Phone.CONTENT_ITEM_TYPE);
       } else {
@@ -169,9 +175,15 @@
       return;
     }
 
-    if (!PermissionsUtil.hasPermission(activity, READ_CONTACTS)) {
+    String[] deniedPermissions =
+        PermissionsUtil.getPermissionsCurrentlyDenied(
+            getContext(), PermissionsUtil.allContactsGroupPermissionsUsedInDialer);
+    if (deniedPermissions.length > 0) {
+      LogUtil.i(
+          "AllContactsFragment.onEmptyViewActionButtonClicked",
+          "Requesting permissions: " + Arrays.toString(deniedPermissions));
       FragmentCompat.requestPermissions(
-          this, new String[] {READ_CONTACTS}, READ_CONTACTS_PERMISSION_REQUEST_CODE);
+          this, deniedPermissions, READ_CONTACTS_PERMISSION_REQUEST_CODE);
     } else {
       // Add new contact
       DialerUtils.startActivityWithErrorToast(
diff --git a/java/com/android/dialer/app/list/DialerPhoneNumberListAdapter.java b/java/com/android/dialer/app/list/DialerPhoneNumberListAdapter.java
index 537f488..fc0bd3c 100644
--- a/java/com/android/dialer/app/list/DialerPhoneNumberListAdapter.java
+++ b/java/com/android/dialer/app/list/DialerPhoneNumberListAdapter.java
@@ -19,6 +19,8 @@
 import android.content.Context;
 import android.content.res.Resources;
 import android.database.Cursor;
+import android.graphics.drawable.Drawable;
+import android.support.v4.content.ContextCompat;
 import android.telephony.PhoneNumberUtils;
 import android.text.BidiFormatter;
 import android.text.TextDirectionHeuristics;
@@ -29,7 +31,6 @@
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.dialer.app.R;
 import com.android.dialer.location.GeoUtil;
-import com.android.dialer.util.CallUtil;
 
 /**
  * {@link PhoneNumberListAdapter} with the following added shortcuts, that are displayed as list
@@ -50,7 +51,6 @@
 
   private final boolean[] mShortcutEnabled = new boolean[SHORTCUT_COUNT];
   private final BidiFormatter mBidiFormatter = BidiFormatter.getInstance();
-  private final boolean mVideoCallingEnabled;
   private final String mCountryIso;
 
   private String mFormattedQueryString;
@@ -59,7 +59,6 @@
     super(context);
 
     mCountryIso = GeoUtil.getCurrentCountryIso(context);
-    mVideoCallingEnabled = CallUtil.isVideoEnabled(context);
   }
 
   @Override
@@ -110,8 +109,7 @@
         return convertView;
       } else {
         final ContactListItemView v =
-            new ContactListItemView(
-                getContext(), null, mVideoCallingEnabled, isCallAndShareEnabled());
+            new ContactListItemView(getContext(), null, mIsImsVideoEnabled);
         assignShortcutToView(v, shortcutType);
         return v;
       }
@@ -125,8 +123,7 @@
       Context context, int partition, Cursor cursor, int position, ViewGroup parent) {
     final ContactListItemView view = super.newView(context, partition, cursor, position, parent);
 
-    view.setSupportVideoCallIcon(mVideoCallingEnabled);
-    view.setSupportCallAndShareIcon(isCallAndShareEnabled());
+    view.setSupportVideoCallIcon(mIsImsVideoEnabled);
     return view;
   }
 
@@ -171,7 +168,7 @@
 
   private void assignShortcutToView(ContactListItemView v, int shortcutType) {
     final CharSequence text;
-    final int drawableId;
+    final Drawable drawable;
     final Resources resources = getContext().getResources();
     final String number = getFormattedQueryString();
     switch (shortcutType) {
@@ -181,34 +178,39 @@
                 resources,
                 R.string.search_shortcut_call_number,
                 mBidiFormatter.unicodeWrap(number, TextDirectionHeuristics.LTR));
-        drawableId = R.drawable.ic_search_phone;
+        drawable = ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_call_vd_theme_24);
         break;
       case SHORTCUT_CREATE_NEW_CONTACT:
         text = resources.getString(R.string.search_shortcut_create_new_contact);
-        drawableId = R.drawable.ic_search_add_contact;
+        drawable =
+            ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_person_add_vd_theme_24);
+        drawable.setAutoMirrored(true);
         break;
       case SHORTCUT_ADD_TO_EXISTING_CONTACT:
         text = resources.getString(R.string.search_shortcut_add_to_contact);
-        drawableId = R.drawable.quantum_ic_person_white_24;
+        drawable =
+            ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_person_add_vd_theme_24);
         break;
       case SHORTCUT_SEND_SMS_MESSAGE:
         text = resources.getString(R.string.search_shortcut_send_sms_message);
-        drawableId = R.drawable.quantum_ic_message_white_24;
+        drawable =
+            ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_message_vd_theme_24);
         break;
       case SHORTCUT_MAKE_VIDEO_CALL:
         text = resources.getString(R.string.search_shortcut_make_video_call);
-        drawableId = R.drawable.quantum_ic_videocam_white_24;
+        drawable =
+            ContextCompat.getDrawable(getContext(), R.drawable.quantum_ic_videocam_vd_theme_24);
         break;
       case SHORTCUT_BLOCK_NUMBER:
         text = resources.getString(R.string.search_shortcut_block_number);
-        drawableId = R.drawable.ic_not_interested_googblue_24dp;
+        drawable =
+            ContextCompat.getDrawable(getContext(), R.drawable.ic_not_interested_googblue_24dp);
         break;
       default:
         throw new IllegalArgumentException("Invalid shortcut type");
     }
-    v.setDrawableResource(drawableId);
+    v.setDrawable(drawable);
     v.setDisplayName(text);
-    v.setPhotoPosition(super.getPhotoPosition());
     v.setAdjustSelectionBoundsEnabled(false);
   }
 
diff --git a/java/com/android/dialer/app/list/DialerViewPager.java b/java/com/android/dialer/app/list/DialerViewPager.java
new file mode 100644
index 0000000..ae99f05
--- /dev/null
+++ b/java/com/android/dialer/app/list/DialerViewPager.java
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.app.list;
+
+import android.content.Context;
+import android.support.v4.view.ViewPager;
+import android.util.AttributeSet;
+import android.view.MotionEvent;
+
+/** Class that handles enabling/disabling swiping between @{ViewPagerTabs}. */
+public class DialerViewPager extends ViewPager {
+
+  private boolean enableSwipingPages;
+
+  public DialerViewPager(Context context, AttributeSet attributeSet) {
+    super(context, attributeSet);
+    enableSwipingPages = true;
+  }
+
+  @Override
+  public boolean onInterceptTouchEvent(MotionEvent event) {
+    if (enableSwipingPages) {
+      return super.onInterceptTouchEvent(event);
+    }
+
+    return false;
+  }
+
+  @Override
+  public boolean onTouchEvent(MotionEvent event) {
+    if (enableSwipingPages) {
+      return super.onTouchEvent(event);
+    }
+
+    return false;
+  }
+
+  public void setEnableSwipingPages(boolean enabled) {
+    enableSwipingPages = enabled;
+  }
+}
diff --git a/java/com/android/dialer/app/list/DialtactsPagerAdapter.java b/java/com/android/dialer/app/list/DialtactsPagerAdapter.java
index dba3d3a..822aa78 100644
--- a/java/com/android/dialer/app/list/DialtactsPagerAdapter.java
+++ b/java/com/android/dialer/app/list/DialtactsPagerAdapter.java
@@ -28,8 +28,8 @@
 import com.android.dialer.calllog.CallLogFramework;
 import com.android.dialer.calllog.ui.NewCallLogFragment;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.contactsfragment.ContactsFragment;
 import com.android.dialer.database.CallLogQueryHandler;
 import com.android.dialer.speeddial.SpeedDialFragment;
@@ -78,7 +78,7 @@
     CallLogFramework callLogFramework = CallLogComponent.get(context).callLogFramework();
     useNewCallLogTab = callLogFramework.isNewCallLogEnabled(context);
     useNewContactsTab =
-        ConfigProviderBindings.get(context).getBoolean("enable_new_contacts_tab", false);
+        ConfigProviderBindings.get(context).getBoolean("enable_new_contacts_tab", true);
     this.tabTitles = tabTitles;
     hasActiveVoicemailProvider = hasVoicemailProvider;
     fragments.addAll(Collections.nCopies(TAB_COUNT_WITH_VOICEMAIL, null));
diff --git a/java/com/android/dialer/app/list/ListsFragment.java b/java/com/android/dialer/app/list/ListsFragment.java
index 8dd52a9..3f03db1 100644
--- a/java/com/android/dialer/app/list/ListsFragment.java
+++ b/java/com/android/dialer/app/list/ListsFragment.java
@@ -31,7 +31,6 @@
 import android.os.Trace;
 import android.preference.PreferenceManager;
 import android.provider.VoicemailContract;
-import android.support.v4.view.ViewPager;
 import android.support.v4.view.ViewPager.OnPageChangeListener;
 import android.view.LayoutInflater;
 import android.view.View;
@@ -44,9 +43,12 @@
 import com.android.dialer.app.voicemail.error.VoicemailStatusCorruptionHandler.Source;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.database.CallLogQueryHandler;
+import com.android.dialer.database.CallLogQueryHandler.Listener;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.logging.ScreenEvent;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.speeddial.SpeedDialFragment;
 import com.android.dialer.util.PermissionsUtil;
 import com.android.dialer.voicemailstatus.VisualVoicemailEnabledChecker;
@@ -60,11 +62,11 @@
  * Contacts list. This will also eventually contain the logic that allows sliding the ViewPager
  * containing the lists up above the search bar and pin it against the top of the screen.
  */
-public class ListsFragment extends Fragment
-    implements ViewPager.OnPageChangeListener, CallLogQueryHandler.Listener {
+public class ListsFragment extends Fragment implements OnPageChangeListener, Listener {
 
   private static final String TAG = "ListsFragment";
-  private ViewPager mViewPager;
+
+  private DialerViewPager mViewPager;
   private ViewPagerTabs mViewPagerTabs;
   private DialtactsPagerAdapter mAdapter;
   private RemoveView mRemoveView;
@@ -77,10 +79,12 @@
   private final ArrayList<OnPageChangeListener> mOnPageChangeListeners = new ArrayList<>();
   /** The position of the currently selected tab. */
   private int mTabIndex = TAB_INDEX_SPEED_DIAL;
-  private boolean mPaused;
 
+  private boolean mPaused;
   private CallLogQueryHandler mCallLogQueryHandler;
 
+  private UiAction.Type[] actionTypeList;
+
   private final ContentObserver mVoicemailStatusObserver =
       new ContentObserver(new Handler()) {
         @Override
@@ -151,6 +155,12 @@
     Trace.endSection();
     Trace.beginSection(TAG + " setup views");
 
+    actionTypeList = new UiAction.Type[TAB_COUNT_WITH_VOICEMAIL];
+    actionTypeList[TAB_INDEX_SPEED_DIAL] = UiAction.Type.CHANGE_TAB_TO_FAVORITE;
+    actionTypeList[TAB_INDEX_HISTORY] = UiAction.Type.CHANGE_TAB_TO_CALL_LOG;
+    actionTypeList[TAB_INDEX_ALL_CONTACTS] = UiAction.Type.CHANGE_TAB_TO_CONTACTS;
+    actionTypeList[TAB_INDEX_VOICEMAIL] = UiAction.Type.CHANGE_TAB_TO_VOICEMAIL;
+
     String[] tabTitles = new String[TAB_COUNT_WITH_VOICEMAIL];
     tabTitles[TAB_INDEX_SPEED_DIAL] = getResources().getString(R.string.tab_speed_dial);
     tabTitles[TAB_INDEX_HISTORY] = getResources().getString(R.string.tab_history);
@@ -163,7 +173,7 @@
     tabIcons[TAB_INDEX_ALL_CONTACTS] = R.drawable.quantum_ic_people_white_24;
     tabIcons[TAB_INDEX_VOICEMAIL] = R.drawable.quantum_ic_voicemail_white_24;
 
-    mViewPager = (ViewPager) parentView.findViewById(R.id.lists_pager);
+    mViewPager = (DialerViewPager) parentView.findViewById(R.id.lists_pager);
     mAdapter =
         new DialtactsPagerAdapter(
             getContext(),
@@ -180,7 +190,6 @@
     mViewPagerTabs.configureTabIcons(tabIcons);
     mViewPagerTabs.setViewPager(mViewPager);
     addOnPageChangeListener(mViewPagerTabs);
-
     mRemoveView = (RemoveView) parentView.findViewById(R.id.remove_view);
     mRemoveViewContent = parentView.findViewById(R.id.remove_view_content);
 
@@ -191,7 +200,7 @@
           .registerContentObserver(
               VoicemailContract.Status.CONTENT_URI, true, mVoicemailStatusObserver);
     } else {
-      LogUtil.w("ListsFragment.onCreateView", "no voicemail read/add permissions");
+      LogUtil.w("ListsFragment.onCreateView", "no voicemail read permissions");
     }
 
     Trace.endSection();
@@ -213,8 +222,8 @@
 
   /**
    * Shows the tab with the specified index. If the voicemail tab index is specified, but the
-   * voicemail status hasn't been fetched, it will try to show the tab after the voicemail status
-   * has been fetched.
+   * voicemail status hasn't been fetched, it will show the speed dial tab and try to show the
+   * voicemail tab after the voicemail status has been fetched.
    */
   public void showTab(int index) {
     if (index == TAB_INDEX_VOICEMAIL) {
@@ -241,6 +250,8 @@
 
   @Override
   public void onPageSelected(int position) {
+    PerformanceReport.recordClick(actionTypeList[position]);
+
     LogUtil.i("ListsFragment.onPageSelected", "position: %d", position);
     mTabIndex = mAdapter.getRtlPosition(position);
 
@@ -375,7 +386,7 @@
   public void markMissedCallsAsReadAndRemoveNotifications() {
     if (mCallLogQueryHandler != null) {
       mCallLogQueryHandler.markMissedCallsAsRead();
-      CallLogNotificationsService.markNewMissedCallsAsOld(getContext(), null);
+      CallLogNotificationsService.cancelAllMissedCalls(getContext());
     }
   }
 
@@ -385,6 +396,11 @@
     mRemoveView.animate().alpha(show ? 1 : 0).start();
   }
 
+  public void showMultiSelectRemoveView(boolean show) {
+    mViewPagerTabs.setVisibility(show ? View.GONE : View.VISIBLE);
+    mViewPager.setEnableSwipingPages(!show);
+  }
+
   public boolean hasFrequents() {
     Fragment page = mAdapter.getItem(mAdapter.getRtlPosition(TAB_INDEX_SPEED_DIAL));
     return page instanceof OldSpeedDialFragment
diff --git a/java/com/android/dialer/app/list/OldSpeedDialFragment.java b/java/com/android/dialer/app/list/OldSpeedDialFragment.java
index 40fe745..05d017b 100644
--- a/java/com/android/dialer/app/list/OldSpeedDialFragment.java
+++ b/java/com/android/dialer/app/list/OldSpeedDialFragment.java
@@ -50,13 +50,13 @@
 import com.android.contacts.common.list.ContactTileView;
 import com.android.contacts.common.list.OnPhoneNumberPickerActionListener;
 import com.android.dialer.app.R;
-import com.android.dialer.app.widget.EmptyContentView;
-import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.util.PermissionsUtil;
 import com.android.dialer.util.ViewUtil;
+import com.android.dialer.widget.EmptyContentView;
 import java.util.ArrayList;
+import java.util.Arrays;
 
 /** This fragment displays the user's favorite/frequent contacts in a grid. */
 public class OldSpeedDialFragment extends Fragment
@@ -404,9 +404,15 @@
       return;
     }
 
-    if (!PermissionsUtil.hasPermission(activity, READ_CONTACTS)) {
+    String[] deniedPermissions =
+        PermissionsUtil.getPermissionsCurrentlyDenied(
+            getContext(), PermissionsUtil.allContactsGroupPermissionsUsedInDialer);
+    if (deniedPermissions.length > 0) {
+      LogUtil.i(
+          "OldSpeedDialFragment.onEmptyViewActionButtonClicked",
+          "Requesting permissions: " + Arrays.toString(deniedPermissions));
       FragmentCompat.requestPermissions(
-          this, new String[] {READ_CONTACTS}, READ_CONTACTS_PERMISSION_REQUEST_CODE);
+          this, deniedPermissions, READ_CONTACTS_PERMISSION_REQUEST_CODE);
     } else {
       // Switch tabs
       ((HostInterface) activity).showAllContactsTab();
@@ -430,7 +436,7 @@
     void showAllContactsTab();
   }
 
-  private class ContactTileLoaderListener implements LoaderManager.LoaderCallbacks<Cursor> {
+  class ContactTileLoaderListener implements LoaderManager.LoaderCallbacks<Cursor> {
 
     @Override
     public CursorLoader onCreateLoader(int id, Bundle args) {
@@ -460,24 +466,17 @@
   private class ContactTileAdapterListener implements ContactTileView.Listener {
 
     @Override
-    public void onContactSelected(Uri contactUri, Rect targetRect) {
+    public void onContactSelected(
+        Uri contactUri, Rect targetRect, CallSpecificAppData callSpecificAppData) {
       if (mPhoneNumberPickerActionListener != null) {
-        CallSpecificAppData callSpecificAppData =
-            CallSpecificAppData.newBuilder()
-                .setCallInitiationType(CallInitiationType.Type.SPEED_DIAL)
-                .build();
         mPhoneNumberPickerActionListener.onPickDataUri(
             contactUri, false /* isVideoCall */, callSpecificAppData);
       }
     }
 
     @Override
-    public void onCallNumberDirectly(String phoneNumber) {
+    public void onCallNumberDirectly(String phoneNumber, CallSpecificAppData callSpecificAppData) {
       if (mPhoneNumberPickerActionListener != null) {
-        CallSpecificAppData callSpecificAppData =
-            CallSpecificAppData.newBuilder()
-                .setCallInitiationType(CallInitiationType.Type.SPEED_DIAL)
-                .build();
         mPhoneNumberPickerActionListener.onPickPhoneNumber(
             phoneNumber, false /* isVideoCall */, callSpecificAppData);
       }
diff --git a/java/com/android/dialer/app/list/PhoneFavoriteListView.java b/java/com/android/dialer/app/list/PhoneFavoriteListView.java
index 9516f06..f4f395f 100644
--- a/java/com/android/dialer/app/list/PhoneFavoriteListView.java
+++ b/java/com/android/dialer/app/list/PhoneFavoriteListView.java
@@ -1,6 +1,5 @@
 /*
- * Copyright (C) 2012 Google Inc.
- * Licensed to The Android Open Source Project.
+ * Copyright (C) 2017 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -24,7 +23,6 @@
 import android.graphics.Bitmap;
 import android.os.Handler;
 import android.util.AttributeSet;
-import android.util.Log;
 import android.view.DragEvent;
 import android.view.MotionEvent;
 import android.view.View;
@@ -33,6 +31,7 @@
 import android.widget.ImageView;
 import com.android.dialer.app.R;
 import com.android.dialer.app.list.DragDropController.DragItemContainer;
+import com.android.dialer.common.LogUtil;
 
 /** Viewgroup that presents the user's speed dial contacts in a grid. */
 public class PhoneFavoriteListView extends GridView
@@ -40,14 +39,14 @@
 
   public static final String LOG_TAG = PhoneFavoriteListView.class.getSimpleName();
   final int[] mLocationOnScreen = new int[2];
-  private final long SCROLL_HANDLER_DELAY_MILLIS = 5;
-  private final int DRAG_SCROLL_PX_UNIT = 25;
-  private final float DRAG_SHADOW_ALPHA = 0.7f;
+  private static final long SCROLL_HANDLER_DELAY_MILLIS = 5;
+  private static final int DRAG_SCROLL_PX_UNIT = 25;
+  private static final float DRAG_SHADOW_ALPHA = 0.7f;
   /**
    * {@link #mTopScrollBound} and {@link mBottomScrollBound} will be offseted to the top / bottom by
    * {@link #getHeight} * {@link #BOUND_GAP_RATIO} pixels.
    */
-  private final float BOUND_GAP_RATIO = 0.2f;
+  private static final float BOUND_GAP_RATIO = 0.2f;
 
   private float mTouchSlop;
   private int mTopScrollBound;
@@ -67,7 +66,6 @@
         }
       };
   private boolean mIsDragScrollerRunning = false;
-  private int mTouchDownForDragStartX;
   private int mTouchDownForDragStartY;
   private Bitmap mDragShadowBitmap;
   private ImageView mDragShadowOverlay;
@@ -98,7 +96,7 @@
   }
 
   public PhoneFavoriteListView(Context context, AttributeSet attrs) {
-    this(context, attrs, -1);
+    this(context, attrs, 0);
   }
 
   public PhoneFavoriteListView(Context context, AttributeSet attrs, int defStyle) {
@@ -121,7 +119,6 @@
   @Override
   public boolean onInterceptTouchEvent(MotionEvent ev) {
     if (ev.getAction() == MotionEvent.ACTION_DOWN) {
-      mTouchDownForDragStartX = (int) ev.getX();
       mTouchDownForDragStartY = (int) ev.getY();
     }
 
@@ -287,7 +284,7 @@
       try {
         bitmap = cache.copy(Bitmap.Config.ARGB_8888, false);
       } catch (final OutOfMemoryError e) {
-        Log.w(LOG_TAG, "Failed to copy bitmap from Drawing cache", e);
+        LogUtil.w(LOG_TAG, "Failed to copy bitmap from Drawing cache", e);
         bitmap = null;
       }
     }
diff --git a/java/com/android/dialer/app/list/PhoneFavoriteSquareTileView.java b/java/com/android/dialer/app/list/PhoneFavoriteSquareTileView.java
index 5a18d03..40f23ea 100644
--- a/java/com/android/dialer/app/list/PhoneFavoriteSquareTileView.java
+++ b/java/com/android/dialer/app/list/PhoneFavoriteSquareTileView.java
@@ -26,6 +26,8 @@
 import com.android.contacts.common.list.ContactEntry;
 import com.android.dialer.app.R;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 
 /** Displays the contact's picture overlaid with their name and number type in a tile. */
 public class PhoneFavoriteSquareTileView extends PhoneFavoriteTileView {
@@ -87,6 +89,8 @@
           new OnClickListener() {
             @Override
             public void onClick(View v) {
+              Logger.get(getContext())
+                  .logInteraction(InteractionEvent.Type.SPEED_DIAL_OPEN_CONTACT_CARD);
               launchQuickContact();
             }
           });
diff --git a/java/com/android/dialer/app/list/PhoneFavoriteTileView.java b/java/com/android/dialer/app/list/PhoneFavoriteTileView.java
index db89cf3..eb4f8e9 100644
--- a/java/com/android/dialer/app/list/PhoneFavoriteTileView.java
+++ b/java/com/android/dialer/app/list/PhoneFavoriteTileView.java
@@ -18,16 +18,22 @@
 
 import android.content.ClipData;
 import android.content.Context;
+import android.provider.ContactsContract.PinnedPositions;
 import android.text.TextUtils;
 import android.util.AttributeSet;
 import android.view.View;
 import android.widget.ImageView;
-import com.android.contacts.common.ContactPhotoManager;
 import com.android.contacts.common.ContactPhotoManager.DefaultImageRequest;
 import com.android.contacts.common.MoreContactUtils;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
 import com.android.contacts.common.list.ContactEntry;
 import com.android.contacts.common.list.ContactTileView;
 import com.android.dialer.app.R;
+import com.android.dialer.callintent.CallInitiationType;
+import com.android.dialer.callintent.CallSpecificAppData;
+import com.android.dialer.callintent.SpeedDialContactType;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 
 /**
  * A light version of the {@link com.android.contacts.common.list.ContactTileView} that is used in
@@ -42,7 +48,6 @@
   // tile is long pressed.
   static final String DRAG_PHONE_FAVORITE_TILE = "PHONE_FAVORITE_TILE";
   private static final String TAG = PhoneFavoriteTileView.class.getSimpleName();
-  private static final boolean DEBUG = false;
   // These parameters instruct the photo manager to display the default image/letter at 70% of
   // its normal size, and vertically offset upwards 12% towards the top of the letter tile, to
   // make room for the contact name and number label at the bottom of the image.
@@ -55,6 +60,8 @@
   private View mShadowOverlay;
   /** Users' most frequent phone number. */
   private String mPhoneNumberString;
+  private boolean isPinned;
+  private boolean isStarred;
 
   public PhoneFavoriteTileView(Context context, AttributeSet attrs) {
     super(context, attrs);
@@ -83,6 +90,8 @@
     super.loadFromContact(entry);
     // Set phone number to null in case we're reusing the view.
     mPhoneNumberString = null;
+    isPinned = (entry.pinned != PinnedPositions.UNPINNED);
+    isStarred = entry.isFavorite;
     if (entry != null) {
       // Grab the phone-number to call directly. See {@link onClick()}.
       mPhoneNumberString = entry.phoneNumber;
@@ -113,16 +122,37 @@
         if (mListener == null) {
           return;
         }
+
+        CallSpecificAppData.Builder callSpecificAppData =
+            CallSpecificAppData.newBuilder()
+                .setCallInitiationType(CallInitiationType.Type.SPEED_DIAL)
+                .setSpeedDialContactPosition(
+                    ((PhoneFavoriteListView) v.getParent()).getPositionForView(v));
+        if (isStarred) {
+          callSpecificAppData.addSpeedDialContactType(SpeedDialContactType.Type.STARRED_CONTACT);
+        } else {
+          callSpecificAppData.addSpeedDialContactType(SpeedDialContactType.Type.FREQUENT_CONTACT);
+        }
+        if (isPinned) {
+          callSpecificAppData.addSpeedDialContactType(SpeedDialContactType.Type.PINNED_CONTACT);
+        }
+
         if (TextUtils.isEmpty(mPhoneNumberString)) {
+          // Don't set performance report now, since user may spend some time on picking a number
+
           // Copy "superclass" implementation
+          Logger.get(getContext())
+              .logInteraction(InteractionEvent.Type.SPEED_DIAL_CLICK_CONTACT_WITH_AMBIGUOUS_NUMBER);
           mListener.onContactSelected(
-              getLookupUri(), MoreContactUtils.getTargetRectFromView(PhoneFavoriteTileView.this));
+              getLookupUri(),
+              MoreContactUtils.getTargetRectFromView(PhoneFavoriteTileView.this),
+              callSpecificAppData.build());
         } else {
           // When you tap a frequently-called contact, you want to
           // call them at the number that you usually talk to them
           // at (i.e. the one displayed in the UI), regardless of
           // whether that's their default number.
-          mListener.onCallNumberDirectly(mPhoneNumberString);
+          mListener.onCallNumberDirectly(mPhoneNumberString, callSpecificAppData.build());
         }
       }
     };
@@ -133,7 +163,7 @@
     return new DefaultImageRequest(
         displayName,
         lookupKey,
-        ContactPhotoManager.TYPE_DEFAULT,
+        LetterTileDrawable.TYPE_DEFAULT,
         DEFAULT_IMAGE_LETTER_SCALE,
         DEFAULT_IMAGE_LETTER_OFFSET,
         false);
diff --git a/java/com/android/dialer/app/list/PhoneFavoritesTileAdapter.java b/java/com/android/dialer/app/list/PhoneFavoritesTileAdapter.java
index c692eca..876fbf1 100644
--- a/java/com/android/dialer/app/list/PhoneFavoritesTileAdapter.java
+++ b/java/com/android/dialer/app/list/PhoneFavoritesTileAdapter.java
@@ -30,7 +30,6 @@
 import android.provider.ContactsContract.PinnedPositions;
 import android.support.annotation.VisibleForTesting;
 import android.text.TextUtils;
-import android.util.Log;
 import android.util.LongSparseArray;
 import android.view.View;
 import android.view.ViewGroup;
@@ -41,6 +40,11 @@
 import com.android.contacts.common.list.ContactTileView;
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.dialer.app.R;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.lightbringer.Lightbringer;
+import com.android.dialer.lightbringer.LightbringerComponent;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 import com.android.dialer.shortcuts.ShortcutRefresher;
 import com.google.common.collect.ComparisonChain;
 import java.util.ArrayList;
@@ -190,6 +194,14 @@
     // Track the length of {@link #mContactEntries} and compare to {@link #TILES_SOFT_LIMIT}.
     int counter = 0;
 
+    // Data for logging
+    int starredContactsCount = 0;
+    int pinnedContactsCount = 0;
+    int multipleNumbersContactsCount = 0;
+    int contactsWithPhotoCount = 0;
+    int contactsWithNameCount = 0;
+    int lightbringerReachableContactsCount = 0;
+
     // The cursor should not be closed since this is invoked from a CursorLoader.
     if (cursor.moveToFirst()) {
       int starredColumn = cursor.getColumnIndexOrThrow(Contacts.STARRED);
@@ -262,6 +274,22 @@
         contact.pinned = pinned;
         mContactEntries.add(contact);
 
+        // Set counts for logging
+        if (isStarred) {
+          // mNumStarred might be larger than the number of visible starred contact,
+          // since it includes invisible ones (starred contact with no phone number).
+          starredContactsCount++;
+        }
+        if (pinned != PinnedPositions.UNPINNED) {
+          pinnedContactsCount++;
+        }
+        if (!TextUtils.isEmpty(name)) {
+          contactsWithNameCount++;
+        }
+        if (photoUri != null) {
+          contactsWithPhotoCount++;
+        }
+
         duplicates.put(id, contact);
 
         counter++;
@@ -274,6 +302,47 @@
 
     ShortcutRefresher.refresh(mContext, mContactEntries);
     notifyDataSetChanged();
+
+    Lightbringer lightbringer = LightbringerComponent.get(mContext).getLightbringer();
+    for (ContactEntry contact : mContactEntries) {
+      if (contact.phoneNumber == null) {
+        multipleNumbersContactsCount++;
+      } else if (lightbringer.isReachable(mContext, contact.phoneNumber)) {
+        lightbringerReachableContactsCount++;
+      }
+    }
+
+    Logger.get(mContext)
+        .logSpeedDialContactComposition(
+            counter,
+            starredContactsCount,
+            pinnedContactsCount,
+            multipleNumbersContactsCount,
+            contactsWithPhotoCount,
+            contactsWithNameCount,
+            lightbringerReachableContactsCount);
+    // Logs for manual testing
+    LogUtil.v("PhoneFavoritesTileAdapter.saveCursorToCache", "counter: %d", counter);
+    LogUtil.v(
+        "PhoneFavoritesTileAdapter.saveCursorToCache",
+        "starredContactsCount: %d",
+        starredContactsCount);
+    LogUtil.v(
+        "PhoneFavoritesTileAdapter.saveCursorToCache",
+        "pinnedContactsCount: %d",
+        pinnedContactsCount);
+    LogUtil.v(
+        "PhoneFavoritesTileAdapter.saveCursorToCache",
+        "multipleNumbersContactsCount: %d",
+        multipleNumbersContactsCount);
+    LogUtil.v(
+        "PhoneFavoritesTileAdapter.saveCursorToCache",
+        "contactsWithPhotoCount: %d",
+        contactsWithPhotoCount);
+    LogUtil.v(
+        "PhoneFavoritesTileAdapter.saveCursorToCache",
+        "contactsWithNameCount: %d",
+        contactsWithNameCount);
   }
 
   /** Iterates over the {@link Cursor} Returns position of the first NON Starred Contact */
@@ -347,7 +416,7 @@
   @Override
   public void notifyDataSetChanged() {
     if (DEBUG) {
-      Log.v(TAG, "notifyDataSetChanged");
+      LogUtil.v(TAG, "notifyDataSetChanged");
     }
     super.notifyDataSetChanged();
   }
@@ -355,7 +424,7 @@
   @Override
   public View getView(int position, View convertView, ViewGroup parent) {
     if (DEBUG) {
-      Log.v(TAG, "get view for " + String.valueOf(position));
+      LogUtil.v(TAG, "get view for " + position);
     }
 
     PhoneFavoriteTileView tileView = null;
@@ -455,8 +524,9 @@
           // update the database here with the new pinned positions
           try {
             mContext.getContentResolver().applyBatch(ContactsContract.AUTHORITY, operations);
+            Logger.get(mContext).logInteraction(InteractionEvent.Type.SPEED_DIAL_PIN_CONTACT);
           } catch (RemoteException | OperationApplicationException e) {
-            Log.e(TAG, "Exception thrown when pinning contacts", e);
+            LogUtil.e(TAG, "Exception thrown when pinning contacts", e);
           }
         }
       }
@@ -609,6 +679,7 @@
     if (mDraggedEntry != null) {
       unstarAndUnpinContact(mDraggedEntry.lookupUri);
       mAwaitingRemove = true;
+      Logger.get(mContext).logInteraction(InteractionEvent.Type.SPEED_DIAL_REMOVE_CONTACT);
     }
   }
 
diff --git a/java/com/android/dialer/app/list/RegularSearchFragment.java b/java/com/android/dialer/app/list/RegularSearchFragment.java
index 0289679..728948b 100644
--- a/java/com/android/dialer/app/list/RegularSearchFragment.java
+++ b/java/com/android/dialer/app/list/RegularSearchFragment.java
@@ -25,12 +25,14 @@
 import com.android.contacts.common.list.ContactEntryListAdapter;
 import com.android.contacts.common.list.PinnedHeaderListView;
 import com.android.dialer.app.R;
-import com.android.dialer.app.widget.EmptyContentView;
-import com.android.dialer.app.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
 import com.android.dialer.callintent.CallInitiationType;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.phonenumbercache.CachedNumberLookupService;
 import com.android.dialer.phonenumbercache.PhoneNumberCache;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
+import com.android.dialer.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
+import java.util.Arrays;
 
 public class RegularSearchFragment extends SearchFragment
     implements OnEmptyViewActionButtonClickedListener,
@@ -114,8 +116,15 @@
     }
 
     if (READ_CONTACTS.equals(mPermissionToRequest)) {
-      FragmentCompat.requestPermissions(
-          this, new String[] {mPermissionToRequest}, PERMISSION_REQUEST_CODE);
+      String[] deniedPermissions =
+          PermissionsUtil.getPermissionsCurrentlyDenied(
+              getContext(), PermissionsUtil.allContactsGroupPermissionsUsedInDialer);
+      if (deniedPermissions.length > 0) {
+        LogUtil.i(
+            "RegularSearchFragment.onEmptyViewActionButtonClicked",
+            "Requesting permissions: " + Arrays.toString(deniedPermissions));
+        FragmentCompat.requestPermissions(this, deniedPermissions, PERMISSION_REQUEST_CODE);
+      }
     }
   }
 
diff --git a/java/com/android/dialer/app/list/RemoveView.java b/java/com/android/dialer/app/list/RemoveView.java
index 3b917db..1d566c5 100644
--- a/java/com/android/dialer/app/list/RemoveView.java
+++ b/java/com/android/dialer/app/list/RemoveView.java
@@ -41,7 +41,7 @@
   }
 
   public RemoveView(Context context, AttributeSet attrs) {
-    this(context, attrs, -1);
+    this(context, attrs, 0);
   }
 
   public RemoveView(Context context, AttributeSet attrs, int defStyle) {
diff --git a/java/com/android/dialer/app/list/SearchFragment.java b/java/com/android/dialer/app/list/SearchFragment.java
index fcf8236..00a2708 100644
--- a/java/com/android/dialer/app/list/SearchFragment.java
+++ b/java/com/android/dialer/app/list/SearchFragment.java
@@ -34,19 +34,20 @@
 import android.widget.ListView;
 import android.widget.Space;
 import com.android.contacts.common.list.ContactEntryListAdapter;
-import com.android.contacts.common.list.ContactListItemView;
 import com.android.contacts.common.list.OnPhoneNumberPickerActionListener;
 import com.android.contacts.common.list.PhoneNumberPickerFragment;
 import com.android.dialer.animation.AnimUtils;
 import com.android.dialer.app.R;
 import com.android.dialer.app.dialpad.DialpadFragment.ErrorDialogFragment;
 import com.android.dialer.app.widget.DialpadSearchEmptyContentView;
-import com.android.dialer.app.widget.EmptyContentView;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.IntentUtil;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
 
 public class SearchFragment extends PhoneNumberPickerFragment {
 
@@ -80,7 +81,6 @@
     setQuickContactEnabled(true);
     setAdjustSelectionBoundsEnabled(false);
     setDarkTheme(false);
-    setPhotoPosition(ContactListItemView.getDefaultPhotoPosition(false /* opposite */));
     setUseCallableUri(true);
 
     try {
@@ -98,9 +98,6 @@
   public void onStart() {
     LogUtil.d("SearchFragment.onStart", "");
     super.onStart();
-    if (isSearchMode()) {
-      getAdapter().setHasHeader(0, false);
-    }
 
     mActivity = (HostInterface) getActivity();
 
@@ -172,16 +169,6 @@
     return animator;
   }
 
-  @Override
-  protected void setSearchMode(boolean flag) {
-    super.setSearchMode(flag);
-    // This hides the "All contacts with phone numbers" header in the search fragment
-    final ContactEntryListAdapter adapter = getAdapter();
-    if (adapter != null) {
-      adapter.setHasHeader(0, false);
-    }
-  }
-
   public void setAddToContactNumber(String addToContactNumber) {
     mAddToContactNumber = addToContactNumber;
   }
@@ -249,6 +236,10 @@
         }
         break;
       case DialerPhoneNumberListAdapter.SHORTCUT_CREATE_NEW_CONTACT:
+        if (this instanceof SmartDialSearchFragment) {
+          Logger.get(getContext())
+              .logImpression(DialerImpression.Type.CREATE_NEW_CONTACT_FROM_DIALPAD);
+        }
         number =
             TextUtils.isEmpty(mAddToContactNumber)
                 ? adapter.getFormattedQueryString()
@@ -257,6 +248,10 @@
         DialerUtils.startActivityWithErrorToast(getActivity(), intent);
         break;
       case DialerPhoneNumberListAdapter.SHORTCUT_ADD_TO_EXISTING_CONTACT:
+        if (this instanceof SmartDialSearchFragment) {
+          Logger.get(getContext())
+              .logImpression(DialerImpression.Type.ADD_TO_A_CONTACT_FROM_DIALPAD);
+        }
         number =
             TextUtils.isEmpty(mAddToContactNumber)
                 ? adapter.getFormattedQueryString()
diff --git a/java/com/android/dialer/app/list/SmartDialSearchFragment.java b/java/com/android/dialer/app/list/SmartDialSearchFragment.java
index eb1508c..2ebc06b 100644
--- a/java/com/android/dialer/app/list/SmartDialSearchFragment.java
+++ b/java/com/android/dialer/app/list/SmartDialSearchFragment.java
@@ -29,11 +29,12 @@
 import com.android.contacts.common.list.ContactEntryListAdapter;
 import com.android.dialer.app.R;
 import com.android.dialer.app.dialpad.SmartDialCursorLoader;
-import com.android.dialer.app.widget.EmptyContentView;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.database.DialerDatabaseHelper;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
+import java.util.Arrays;
 
 /** Implements a fragment to load and display SmartDial search results. */
 public class SmartDialSearchFragment extends SearchFragment
@@ -80,6 +81,11 @@
   }
 
   @Override
+  public boolean getShowEmptyListForNullQuery() {
+    return true;
+  }
+
+  @Override
   protected void setupEmptyView() {
     if (mEmptyView != null && getActivity() != null) {
       if (!PermissionsUtil.hasPermission(getActivity(), CALL_PHONE)) {
@@ -123,8 +129,16 @@
       return;
     }
 
-    FragmentCompat.requestPermissions(
-        this, new String[] {CALL_PHONE}, CALL_PHONE_PERMISSION_REQUEST_CODE);
+    String[] deniedPermissions =
+        PermissionsUtil.getPermissionsCurrentlyDenied(
+            getContext(), PermissionsUtil.allPhoneGroupPermissionsUsedInDialer);
+    if (deniedPermissions.length > 0) {
+      LogUtil.i(
+          "SmartDialSearchFragment.onEmptyViewActionButtonClicked",
+          "Requesting permissions: " + Arrays.toString(deniedPermissions));
+      FragmentCompat.requestPermissions(
+          this, deniedPermissions, CALL_PHONE_PERMISSION_REQUEST_CODE);
+    }
   }
 
   @Override
diff --git a/java/com/android/dialer/app/manifests/activities/AndroidManifest.xml b/java/com/android/dialer/app/manifests/activities/AndroidManifest.xml
index ca93da0..0729d72 100644
--- a/java/com/android/dialer/app/manifests/activities/AndroidManifest.xml
+++ b/java/com/android/dialer/app/manifests/activities/AndroidManifest.xml
@@ -19,7 +19,7 @@
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.android.dialer.app">
 
-  <application>
+  <application android:theme="@style/Theme.AppCompat">
 
     <activity
       android:exported="false"
@@ -41,6 +41,7 @@
       android:resizeableActivity="true"
       android:theme="@style/DialtactsActivityTheme"
       android:windowSoftInputMode="stateAlwaysHidden|adjustNothing">
+      <!-- LINT.IfChange -->
       <intent-filter>
         <action android:name="android.intent.action.DIAL"/>
 
@@ -106,6 +107,7 @@
         <category android:name="android.intent.category.DEFAULT"/>
         <category android:name="android.intent.category.TAB"/>
       </intent-filter>
+      <!-- LINT.ThenChange(//depot/google3/third_party/java_src/android_app/dialer/java/com/android/dialer/dialtacts/impl/AndroidManifest.xml) -->
 
       <meta-data
         android:name="com.android.keyguard.layout"
diff --git a/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_48dp.png b/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_48dp.png
new file mode 100644
index 0000000..eeed895
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_48dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_blue_24dp.png b/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_blue_24dp.png
new file mode 100644
index 0000000..b041a74
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-hdpi/ic_check_mark_blue_24dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-hdpi/ic_empty_check_mark_white_24dp.png b/java/com/android/dialer/app/res/drawable-hdpi/ic_empty_check_mark_white_24dp.png
new file mode 100644
index 0000000..2c5ba8d
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-hdpi/ic_empty_check_mark_white_24dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-hdpi/ic_results_phone.png b/java/com/android/dialer/app/res/drawable-hdpi/ic_results_phone.png
deleted file mode 100644
index 3a1a7a7..0000000
--- a/java/com/android/dialer/app/res/drawable-hdpi/ic_results_phone.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-mdpi/ic_check_mark_48dp.png b/java/com/android/dialer/app/res/drawable-mdpi/ic_check_mark_48dp.png
new file mode 100644
index 0000000..f3b76be
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-mdpi/ic_check_mark_48dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-mdpi/ic_results_phone.png b/java/com/android/dialer/app/res/drawable-mdpi/ic_results_phone.png
deleted file mode 100644
index 74ccf14..0000000
--- a/java/com/android/dialer/app/res/drawable-mdpi/ic_results_phone.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xhdpi/ic_check_mark_48dp.png b/java/com/android/dialer/app/res/drawable-xhdpi/ic_check_mark_48dp.png
new file mode 100644
index 0000000..01a3bbe
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-xhdpi/ic_check_mark_48dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xhdpi/ic_results_phone.png b/java/com/android/dialer/app/res/drawable-xhdpi/ic_results_phone.png
deleted file mode 100644
index 0e24fa4..0000000
--- a/java/com/android/dialer/app/res/drawable-xhdpi/ic_results_phone.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxhdpi/ic_check_mark_48dp.png b/java/com/android/dialer/app/res/drawable-xxhdpi/ic_check_mark_48dp.png
new file mode 100644
index 0000000..2043279
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-xxhdpi/ic_check_mark_48dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxhdpi/ic_results_phone.png b/java/com/android/dialer/app/res/drawable-xxhdpi/ic_results_phone.png
deleted file mode 100644
index 9594619..0000000
--- a/java/com/android/dialer/app/res/drawable-xxhdpi/ic_results_phone.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_check_mark_48dp.png b/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_check_mark_48dp.png
new file mode 100644
index 0000000..bfbe69e
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_check_mark_48dp.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_results_phone.png b/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_results_phone.png
deleted file mode 100644
index 395652c..0000000
--- a/java/com/android/dialer/app/res/drawable-xxxhdpi/ic_results_phone.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable/ic_search_phone.xml b/java/com/android/dialer/app/res/drawable/ic_search_phone.xml
deleted file mode 100644
index 5d449ee..0000000
--- a/java/com/android/dialer/app/res/drawable/ic_search_phone.xml
+++ /dev/null
@@ -1,20 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-     Copyright (C) 2014 The Android Open Source Project
-
-     Licensed under the Apache License, Version 2.0 (the "License");
-     you may not use this file except in compliance with the License.
-     You may obtain a copy of the License at
-
-          http://www.apache.org/licenses/LICENSE-2.0
-
-     Unless required by applicable law or agreed to in writing, software
-     distributed under the License is distributed on an "AS IS" BASIS,
-     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-     See the License for the specific language governing permissions and
-     limitations under the License.
--->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:src="@drawable/ic_results_phone"
-  android:tint="@color/search_shortcut_icon_color"/>
diff --git a/java/com/android/dialer/app/res/drawable/ic_wifi_calling.xml b/java/com/android/dialer/app/res/drawable/ic_wifi_calling.xml
new file mode 100644
index 0000000..9687133
--- /dev/null
+++ b/java/com/android/dialer/app/res/drawable/ic_wifi_calling.xml
@@ -0,0 +1,29 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2017 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+    android:height="24dp"
+    android:tint="?attr/colorControlNormal"
+    android:viewportHeight="30"
+    android:viewportWidth="30"
+    android:width="24dp">
+  <path
+      android:fillColor="@android:color/white"
+      android:pathData="M14.88,16.3h0L25,3.66a16.51,16.51 0,0 0,-20.3 0L14.88,16.3Z"/>
+  <path
+      android:fillColor="@android:color/white"
+      android:pathData="M26.42,18.88a1.25,1.25 0,0 0,-0.89 -0.36,1.28 1.28,0 0,0 -0.87,0.35 14.26,14.26 0,0 1,-3.32 2.31,1.24 1.24,0 0,0 -0.7,1.12v3.87a18.27,18.27 0,0 1,-5.75 0.91,18.63 18.63,0 0,1 -5.75,-0.9v-3.87a1.26,1.26 0,0 0,-0.7 -1.12,14.73 14.73,0 0,1 -3.34,-2.31 1.23,1.23 0,0 0,-0.87 -0.35,1.25 1.25,0 0,0 -0.89,0.36L0.24,22a1.24,1.24 0,0 0,-0.36 0.89,1.23 1.23,0 0,0 0.37,0.87 21.26,21.26 0,0 0,29.26 0,1.27 1.27,0 0,0 0,-1.77Z"/>
+</vector>
\ No newline at end of file
diff --git a/java/com/android/dialer/app/res/layout-land/empty_content_view_dialpad_search.xml b/java/com/android/dialer/app/res/layout-land/empty_content_view_dialpad_search.xml
index 5f80680..59d1363 100644
--- a/java/com/android/dialer/app/res/layout-land/empty_content_view_dialpad_search.xml
+++ b/java/com/android/dialer/app/res/layout-land/empty_content_view_dialpad_search.xml
@@ -26,14 +26,14 @@
       android:layout_height="0dp"
       android:layout_weight="1"/>
     <ImageView
-      android:id="@+id/emptyListViewImage"
+      android:id="@+id/empty_list_view_image"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:layout_gravity="center_horizontal"
       android:importantForAccessibility="no"/>
 
     <TextView
-      android:id="@+id/emptyListViewMessage"
+      android:id="@+id/empty_list_view_message"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
       android:paddingTop="8dp"
@@ -45,7 +45,7 @@
       android:textSize="@dimen/empty_list_message_text_size"/>
 
     <TextView
-      android:id="@+id/emptyListViewAction"
+      android:id="@+id/empty_list_view_action"
       style="@style/TextActionStyle"
       android:layout_width="wrap_content"
       android:layout_height="wrap_content"
diff --git a/java/com/android/dialer/app/res/layout/action_mode_close_button.xml b/java/com/android/dialer/app/res/layout/action_mode_close_button.xml
new file mode 100644
index 0000000..4cb85d4
--- /dev/null
+++ b/java/com/android/dialer/app/res/layout/action_mode_close_button.xml
@@ -0,0 +1,31 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2017 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<ImageView xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/action_mode_close_button"
+    style="?attr/actionModeCloseButtonStyle"
+    android:layout_width="wrap_content"
+    android:layout_height="match_parent"
+    android:layout_marginEnd="16dip"
+    android:layout_marginRight="16dip"
+    android:paddingStart="8dp"
+    android:paddingLeft="8dp"
+    android:clickable="true"
+    android:contentDescription="@string/description_cancel_multi_select"
+    android:focusable="true"
+    android:src="@drawable/quantum_ic_close_white_24"/>
+
+
diff --git a/java/com/android/dialer/app/res/layout/all_contacts_fragment.xml b/java/com/android/dialer/app/res/layout/all_contacts_fragment.xml
index 17a4520..422c529 100644
--- a/java/com/android/dialer/app/res/layout/all_contacts_fragment.xml
+++ b/java/com/android/dialer/app/res/layout/all_contacts_fragment.xml
@@ -45,7 +45,7 @@
       android:cropToPadding="false"
       android:clipToPadding="false"/>
 
-    <com.android.dialer.app.widget.EmptyContentView
+    <com.android.dialer.widget.EmptyContentView
       android:id="@+id/empty_list_view"
       android:layout_width="match_parent"
       android:layout_height="wrap_content"
diff --git a/java/com/android/dialer/app/res/layout/call_log_fragment.xml b/java/com/android/dialer/app/res/layout/call_log_fragment.xml
index 64f7c10..bbfe4e3 100644
--- a/java/com/android/dialer/app/res/layout/call_log_fragment.xml
+++ b/java/com/android/dialer/app/res/layout/call_log_fragment.xml
@@ -21,6 +21,36 @@
   android:background="@color/background_dialer_call_log"
   android:orientation="vertical">
 
+  <LinearLayout
+      android:id="@+id/multi_select_select_all_view_content"
+      android:layout_width="match_parent"
+      android:layout_height="@dimen/tab_height"
+      android:layout_gravity="start"
+      android:background="@color/actionbar_background_color"
+      android:orientation="horizontal"
+      android:visibility="gone">
+
+    <ImageView
+        android:id="@+id/select_all_view_icon"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:paddingLeft="@dimen/select_all_icon_padding"
+        android:paddingRight="@dimen/select_all_icon_padding"
+        android:gravity="center_vertical"
+        android:src="@drawable/ic_empty_check_mark_white_24dp"/>
+    <TextView
+        android:id="@+id/select_all_view_text"
+        android:layout_width="wrap_content"
+        android:layout_height="match_parent"
+        android:paddingLeft="@dimen/select_all_text_left_padding"
+        android:gravity="center_vertical"
+        android:text="@string/select_all"
+        android:textAllCaps="true"
+        android:textStyle="bold"
+        android:textColor="@color/remove_text_color"
+        android:textSize="@dimen/select_all_text_size"/>
+  </LinearLayout>
+
   <FrameLayout
     android:id="@+id/modal_message_container"
     android:layout_width="match_parent"
@@ -37,7 +67,7 @@
     android:background="@color/background_dialer_call_log"
     android:clipToPadding="false"/>
 
-  <com.android.dialer.app.widget.EmptyContentView
+  <com.android.dialer.widget.EmptyContentView
     android:id="@+id/empty_list_view"
     android:layout_width="match_parent"
     android:layout_height="0dp"
diff --git a/java/com/android/dialer/app/res/layout/call_log_list_item.xml b/java/com/android/dialer/app/res/layout/call_log_list_item.xml
index 0fbbb9d..afb50ff 100644
--- a/java/com/android/dialer/app/res/layout/call_log_list_item.xml
+++ b/java/com/android/dialer/app/res/layout/call_log_list_item.xml
@@ -65,7 +65,7 @@
             android:layout_height="wrap_content"
             >
 
-          <QuickContactBadge
+          <com.android.dialer.app.calllog.DialerQuickContactBadge
               android:id="@+id/quick_contact_photo"
               android:layout_width="@dimen/contact_photo_size"
               android:layout_height="@dimen/contact_photo_size"
@@ -80,7 +80,7 @@
               android:layout_width="@dimen/contact_photo_size"
               android:layout_height="@dimen/contact_photo_size"
               android:visibility="gone"
-              android:src="@drawable/quantum_ic_check_circle_googblue_24" />
+              android:src="@drawable/ic_check_mark_48dp" />
 
         </FrameLayout>
 
diff --git a/java/com/android/dialer/app/res/layout/call_log_list_item_actions.xml b/java/com/android/dialer/app/res/layout/call_log_list_item_actions.xml
index d3a5531..5046383 100644
--- a/java/com/android/dialer/app/res/layout/call_log_list_item_actions.xml
+++ b/java/com/android/dialer/app/res/layout/call_log_list_item_actions.xml
@@ -50,7 +50,7 @@
       <TextView
         android:id="@+id/call_action_text"
         style="@style/CallLogActionTextStyle"
-        android:text="@string/description_call_log_call_action"/>
+        android:text="@string/call"/>
 
       <TextView
         android:id="@+id/call_type_or_location_text"
@@ -135,7 +135,7 @@
 
     <ImageView
       style="@style/CallLogActionIconStyle"
-      android:src="@drawable/ic_call_and_share"/>
+      android:src="@drawable/ic_phone_attach"/>
 
     <TextView
       style="@style/CallLogActionTextStyle"
diff --git a/java/com/android/dialer/app/res/layout/dialpad_fragment.xml b/java/com/android/dialer/app/res/layout/dialpad_fragment.xml
index dd6dab7..9b95e1f 100644
--- a/java/com/android/dialer/app/res/layout/dialpad_fragment.xml
+++ b/java/com/android/dialer/app/res/layout/dialpad_fragment.xml
@@ -21,42 +21,42 @@
     android:orientation="horizontal">
 
   <LinearLayout
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:orientation="vertical">
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:orientation="vertical">
 
     <!-- spacer view -->
     <View
-      android:id="@+id/spacer"
-      android:layout_width="match_parent"
-      android:layout_height="0dp"
-      android:layout_weight="1"
-      android:background="#00000000"/>
+        android:id="@+id/spacer"
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1"
+        android:background="#00000000"/>
     <!-- Dialpad shadow -->
     <View
-      android:layout_width="match_parent"
-      android:layout_height="@dimen/shadow_length"
-      android:background="@drawable/shadow_fade_up"/>
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/shadow_length"
+        android:background="@drawable/shadow_fade_up"/>
     <include layout="@layout/dialpad_view"/>
     <!-- "Dialpad chooser" UI, shown only when the user brings up the
              Dialer while a call is already in progress.
              When this UI is visible, the other Dialer elements
              (the textfield/button and the dialpad) are hidden. -->
     <ListView
-      android:id="@+id/dialpadChooser"
-      android:layout_width="match_parent"
-      android:layout_height="wrap_content"
-      android:background="@color/background_dialer_light"
-      android:visibility="gone"/>
+        android:id="@+id/dialpadChooser"
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:background="@color/background_dialer_light"
+        android:visibility="gone"/>
 
   </LinearLayout>
 
   <!-- Margin bottom and alignParentBottom don't work well together, so use a Space instead. -->
   <Space
-    android:id="@+id/dialpad_floating_action_button_margin_bottom"
-    android:layout_width="match_parent"
-    android:layout_height="@dimen/floating_action_button_margin_bottom"
-    android:layout_alignParentBottom="true"/>
+      android:id="@+id/dialpad_floating_action_button_margin_bottom"
+      android:layout_width="match_parent"
+      android:layout_height="@dimen/floating_action_button_margin_bottom"
+      android:layout_alignParentBottom="true"/>
 
   <android.support.design.widget.FloatingActionButton
       android:id="@+id/dialpad_floating_action_button"
@@ -64,8 +64,9 @@
       android:layout_height="@dimen/floating_action_button_height"
       android:layout_above="@id/dialpad_floating_action_button_margin_bottom"
       android:layout_centerHorizontal="true"
-      android:src="@drawable/quantum_ic_call_white_24"
       android:contentDescription="@string/description_dial_button"
-      app:elevation="@dimen/floating_action_button_translation_z"
-      app:backgroundTint="@color/dialpad_fab_green"/>
+      android:src="@drawable/quantum_ic_call_vd_theme_24"
+      app:backgroundTint="@color/dialpad_fab_green"
+      app:colorControlNormal="#ffffff"
+      app:elevation="@dimen/floating_action_button_translation_z"/>
 </view>
diff --git a/java/com/android/dialer/app/res/layout/empty_content_view_dialpad_search.xml b/java/com/android/dialer/app/res/layout/empty_content_view_dialpad_search.xml
index e245aac..1d20479 100644
--- a/java/com/android/dialer/app/res/layout/empty_content_view_dialpad_search.xml
+++ b/java/com/android/dialer/app/res/layout/empty_content_view_dialpad_search.xml
@@ -16,7 +16,7 @@
 
 <merge xmlns:android="http://schemas.android.com/apk/res/android">
   <ImageView
-    android:id="@+id/emptyListViewImage"
+    android:id="@+id/empty_list_view_image"
     android:layout_height="0dp"
     android:layout_weight="1"
     android:layout_width="match_parent"
@@ -24,7 +24,7 @@
     android:gravity="center_horizontal" />
 
   <TextView
-    android:id="@+id/emptyListViewMessage"
+    android:id="@+id/empty_list_view_message"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:gravity="center_horizontal|top"
@@ -36,7 +36,7 @@
     android:paddingBottom="8dp"/>
 
   <TextView
-    android:id="@+id/emptyListViewAction"
+    android:id="@+id/empty_list_view_action"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
     android:gravity="center_horizontal"
diff --git a/java/com/android/dialer/app/res/layout/lists_fragment.xml b/java/com/android/dialer/app/res/layout/lists_fragment.xml
index 442b428..9596172 100644
--- a/java/com/android/dialer/app/res/layout/lists_fragment.xml
+++ b/java/com/android/dialer/app/res/layout/lists_fragment.xml
@@ -15,41 +15,41 @@
 -->
 
 <FrameLayout
-  xmlns:android="http://schemas.android.com/apk/res/android"
-  android:id="@+id/lists_frame"
-  android:layout_width="match_parent"
-  android:layout_height="match_parent"
-  android:animateLayoutChanges="true">
-
-  <LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/lists_frame"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:orientation="vertical">
+    android:animateLayoutChanges="true">
+
+  <LinearLayout
+      android:layout_width="match_parent"
+      android:layout_height="match_parent"
+      android:orientation="vertical">
 
     <!-- TODO: Apply background color to ActionBar instead of a FrameLayout. For now, this is
          the easiest way to preserve correct pane scrolling and searchbar collapse/expand
          behaviors. -->
     <FrameLayout
-      android:layout_width="match_parent"
-      android:layout_height="@dimen/action_bar_height_large"
-      android:background="@color/actionbar_background_color"
-      android:elevation="@dimen/tab_elevation"/>
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/action_bar_height_large"
+        android:background="@color/actionbar_background_color"
+        android:elevation="@dimen/tab_elevation"/>
 
     <com.android.contacts.common.list.ViewPagerTabs
-      android:id="@+id/lists_pager_header"
-      style="@style/DialtactsActionBarTabTextStyle"
-      android:layout_width="match_parent"
-      android:layout_height="@dimen/tab_height"
-      android:layout_gravity="top"
-      android:elevation="@dimen/tab_elevation"
-      android:orientation="horizontal"
-      android:textAllCaps="true"/>
+        android:id="@+id/lists_pager_header"
+        style="@style/DialtactsActionBarTabTextStyle"
+        android:layout_width="match_parent"
+        android:layout_height="@dimen/tab_height"
+        android:layout_gravity="top"
+        android:elevation="@dimen/tab_elevation"
+        android:orientation="horizontal"
+        android:textAllCaps="true"/>
 
-    <android.support.v4.view.ViewPager
-      android:id="@+id/lists_pager"
-      android:layout_width="match_parent"
-      android:layout_height="0dp"
-      android:layout_weight="1"/>
+    <com.android.dialer.app.list.DialerViewPager
+        android:id="@+id/lists_pager"
+        android:layout_width="match_parent"
+        android:layout_height="0dp"
+        android:layout_weight="1"/>
 
   </LinearLayout>
 
@@ -58,38 +58,38 @@
        This is required since drag and drop event is only sent to views are visible when drag
        starts. -->
   <com.android.dialer.app.list.RemoveView
-    android:id="@+id/remove_view"
-    android:layout_width="match_parent"
-    android:layout_height="@dimen/tab_height"
-    android:layout_marginTop="@dimen/action_bar_height_large"
-    android:contentDescription="@string/remove_contact"
-    android:importantForAccessibility="no">
+      android:id="@+id/remove_view"
+      android:layout_width="match_parent"
+      android:layout_height="@dimen/tab_height"
+      android:layout_marginTop="@dimen/action_bar_height_large"
+      android:contentDescription="@string/remove_contact"
+      android:importantForAccessibility="no">
 
     <LinearLayout
-      android:id="@+id/remove_view_content"
-      android:layout_width="match_parent"
-      android:layout_height="match_parent"
-      android:background="@color/actionbar_background_color"
-      android:gravity="center"
-      android:orientation="horizontal"
-      android:visibility="gone">
+        android:id="@+id/remove_view_content"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        android:background="@color/actionbar_background_color"
+        android:gravity="center"
+        android:orientation="horizontal"
+        android:visibility="gone">
 
       <ImageView
-        android:id="@+id/remove_view_icon"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:layout_marginTop="8dp"
-        android:layout_marginBottom="8dp"
-        android:src="@drawable/ic_remove"
-        android:tint="@color/remove_text_color"/>
+          android:id="@+id/remove_view_icon"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:layout_marginTop="8dp"
+          android:layout_marginBottom="8dp"
+          android:src="@drawable/ic_remove"
+          android:tint="@color/remove_text_color"/>
 
       <TextView
-        android:id="@+id/remove_view_text"
-        android:layout_width="wrap_content"
-        android:layout_height="wrap_content"
-        android:text="@string/remove_contact"
-        android:textColor="@color/remove_text_color"
-        android:textSize="@dimen/remove_text_size"/>
+          android:id="@+id/remove_view_text"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:text="@string/remove_contact"
+          android:textColor="@color/remove_text_color"
+          android:textSize="@dimen/remove_text_size"/>
 
     </LinearLayout>
 
diff --git a/java/com/android/dialer/app/res/layout/search_edittext.xml b/java/com/android/dialer/app/res/layout/search_edittext.xml
index c02512d..bb6a5f7 100644
--- a/java/com/android/dialer/app/res/layout/search_edittext.xml
+++ b/java/com/android/dialer/app/res/layout/search_edittext.xml
@@ -29,7 +29,7 @@
       android:padding="@dimen/search_box_search_icon_padding"
       android:importantForAccessibility="no"
       android:scaleType="center"
-      android:src="@drawable/quantum_ic_search_white_24"
+      android:src="@drawable/quantum_ic_search_vd_theme_24"
       android:tint="@color/searchbox_icon_tint"/>
 
     <TextView
diff --git a/java/com/android/dialer/app/res/layout/speed_dial_fragment.xml b/java/com/android/dialer/app/res/layout/speed_dial_fragment.xml
index c778c6b..3fa3be2 100644
--- a/java/com/android/dialer/app/res/layout/speed_dial_fragment.xml
+++ b/java/com/android/dialer/app/res/layout/speed_dial_fragment.xml
@@ -41,7 +41,7 @@
       android:numColumns="@integer/contact_tile_column_count_in_favorites"/>
   </FrameLayout>
 
-  <com.android.dialer.app.widget.EmptyContentView
+  <com.android.dialer.widget.EmptyContentView
     android:id="@+id/empty_list_view"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
diff --git a/java/com/android/dialer/app/res/menu/dialtacts_options.xml b/java/com/android/dialer/app/res/menu/dialtacts_options.xml
index 25a3e18..b50e6ad 100644
--- a/java/com/android/dialer/app/res/menu/dialtacts_options.xml
+++ b/java/com/android/dialer/app/res/menu/dialtacts_options.xml
@@ -28,5 +28,8 @@
   <item
     android:id="@+id/menu_simulator_submenu"
     android:title="@string/simulator_submenu_label"/>
+  <item
+      android:id="@+id/menu_new_ui_launcher_shortcut"
+      android:title="@string/new_ui_launcher_shortcut_label"/>
 
 </menu>
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 2eb462b..40e2973 100644
--- a/java/com/android/dialer/app/res/values-af/strings.xml
+++ b/java/com/android/dialer/app/res/values-af/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Voeg wagtyd by"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Instellings"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Nabootser"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Skep nuwe UI-kortpad"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle kontakte"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Gebruik raak-nommerbord"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Keer terug na oproep wat besig is"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Voeg oproep by"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Inkomende oproepe"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Gaan tans grootmaathandelingmodus in"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Het grootmaathandelingmodus verlaat"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Het <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> gekies"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Het <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ontkies"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Speel stemboodskap"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Bekyk kontak <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Bel <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Stemboodskap"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"stemboodskap"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"stemboodskappe"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nee"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Kanselleer grootmaathandelingmodus"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Vee uit"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Kanselleer"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Vee geselekteerde <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> uit?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> gekies"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Vee hierdie stemboodskappe uit? "</b>"</item>
+      <item quantity="one">"<b>"Vee hierdie stemboodskap uit? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> om <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Laai tans van SIM-kaart af…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM-kaartkontakte"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Geen kontakte-program beskikbaar nie"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Stemsoektog is nie beskikbaar nie"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Kan nie \'n foonoproep maak nie want die Foon-program is gedeaktiveer."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Deursoek kontakte"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nuwe gemiste oproepe"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Daar is nog niemand op jou spoedbel nie"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Voeg \'n gunsteling by"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Jy het nog nie enige kontakte nie"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Voeg \'n kontak by"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Raak aan prent om al die nommers te sien of raak en hou om te herorganiseer"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Verwyder"</string>
+    <string name="select_all" msgid="408601760696146245">"Kies alles"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video-oproep"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Stuur \'n boodskap"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Oproepbesonderhede"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Geblokkeerde nommers"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> is reeds geblokkeer."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Oproeprekeninge"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Skakel aan"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Stel toestemmings"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Skakel die kontaktetoestemming aan om spoedbel te aktiveer."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Skakel die foontoestemming aan om jou oproeprekord te sien."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Skakel die kontaktetoestemming aan om jou kontakte te sien."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Skakel die foontoestemming aan om na jou stemboodskapdiens te gaan."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Skakel die Kontakte-toestemmings aan om jou kontakte te deursoek."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Skakel die foontoestemming aan om \'n oproep te maak."</string>
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 8230301..08b52a6 100644
--- a/java/com/android/dialer/app/res/values-am/strings.xml
+++ b/java/com/android/dialer/app/res/values-am/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"መጠበቅ አክል"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ቅንብሮች"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"ማስመሰያ"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"አዲስ የዩአይ አቋራጭ ፍጠር"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ሁሉም እውቅያዎች"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"የድምፅ ቁልፍ ሰሌዳን ንካ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"በመካሄድ ላይ ወዳለው ጥሪ ተመለስ"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ጥሪ ያክሉ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ገቢ ጥሪዎች"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ወደ የጅምላ እርምጃ ሁነታ በመግባት ላይ"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ከጅምላ እርምጃ ሁነታ ለቀው ወጥተዋል"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ተመርጧል"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> አልተመረጠም"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"የድምፅ መልዕክት አጫውት"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"ዕውቂያ <xliff:g id="NAME">%1$s</xliff:g> ዕይ"</string>
     <string name="description_call" msgid="1532402285334775372">"ጥሪ <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"የድምፅ መልዕክት"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ሰከንድ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> ደቂቃ <xliff:g id="SECONDS">%s</xliff:g> ሴከ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"የድምፅ መልዕክት"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"የድምፅ መልዕክቶች"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"አዎ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"አይ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"የጅምላ እርምጃ ሁነታ ይቅር"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ሰርዝ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ይቅር"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"የተመረጠው <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ይሰረዝ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ተመርጠዋል"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"እነዚህ የድምፅ መልዕክቶች ይሰረዙ? "</b>"</item>
+      <item quantity="other">"<b>"እነዚህ የድምፅ መልዕክቶች ይሰረዙ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> <xliff:g id="TIME">%2$s</xliff:g> ላይ"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"ከSIM ካርድ ላይ በመጫን ላይ..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"የSIM ካርድ ዕውቂያዎች"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"ምንም የእውቂያዎች መተግበሪያ አይገኝም"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"የድምጽ ፍለጋ አይገኝም"</string>
     <string name="call_not_available" msgid="7850148370757361155">"የስልክ መተግበሪያው ስለተሰናከለ የስልክ ጥሪ ማድረግ አይቻልም።"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"ዕውቅያዎችን ፈልግ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> አዲስ ያልተመለሱ ጥሪዎች"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"በፈጥኖ መደወያ ላይ ገና ማንም የለዎትም"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ተወዳጅ አክል"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ገና ምንም እውቂያዎች የሉዎትም"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ዕውቂያ አክል"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ሁሉንም ቁጥሮች ለማየት ምስል ይንኩ ወይም ዳግም ለመደርደር ነክተው ይያዙት"</string>
     <string name="remove_contact" msgid="2353580570488923668">"አስወግድ"</string>
+    <string name="select_all" msgid="408601760696146245">"ሁሉንም ምረጥ"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"የቪዲዮ ጥሪ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"መልእክት ላክ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"የጥሪ ዝርዝሮች"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"የታገዱ ቁጥሮች"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ቀድሞውኑ ታግዷል።"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"የመደወያ መለያዎች"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"አብራ"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ፍቃዶችን አዋቅር"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ፈጥኖ መደወያን ለማንቃት የእውቂያዎች ፍቃዱን ያብሩ።"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"የጥሪ ምዝግብ ማስታወአሽዎን ለማየት የስልክ ፍቃዱን ያብሩ።"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"የእርስዎን እውቂያዎች ለማየት የእውቂያዎች ፍቃዱን ያብሩ።"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"የድምፅ መልዕክትዎን ለመድረስ የስልክ ፍቃዱን ያብሩ።"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"የእርስዎን እውቂያዎች ለመከታተል የእውቂያዎች ፍቃዶችን ያብሩ።"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ስልክ ለመደወል የስልክ ፍቃዱን ያብሩ።"</string>
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 e4dfb4d..fe84a66 100644
--- a/java/com/android/dialer/app/res/values-ar/strings.xml
+++ b/java/com/android/dialer/app/res/values-ar/strings.xml
@@ -84,11 +84,16 @@
     <string name="add_wait" msgid="1177723010768282578">"إضافة انتظار"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"الإعدادات"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"المحاكي"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"إنشاء اختصار للواجهة الجديدة"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"جميع جهات الاتصال"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"استخدام لوحة مفاتيح نغمات باللمس"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"عودة إلى المكالمة الجارية"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"إضافة مكالمة"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"المكالمات الواردة"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"يتم الدخول إلى وضع الإجراء المجمَّع"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"تمت مغادرة وضع الإجراء المجمَّع"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"تم تحديد <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"تم إلغاء تحديد <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"تشغيل البريد الصوتي"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"عرض جهة الاتصال <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"الاتصال بـ <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -103,11 +108,19 @@
     <string name="voicemail" msgid="8899540969000957954">"البريد الصوتي"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ثانية"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> دقيقة <xliff:g id="SECONDS">%s</xliff:g> ثانية"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"البريد الصوتي"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"رسائل البريد الصوتي"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"نعم"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"لا"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"إلغاء وضع الإجراءات المجمَّع"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"حذف"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"إلغاء"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"حذف رسائل <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> المحددة؟"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"تم تحديد <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="zero">"<b>"حذف رسائل البريد الصوتي هذه؟ "</b>"</item>
+      <item quantity="two">"<b>"حذف رسالتي البريد الصوتي هاتين؟ "</b>"</item>
+      <item quantity="few">"<b>"حذف رسائل البريد الصوتي هذه؟ "</b>"</item>
+      <item quantity="many">"<b>"حذف رسائل البريد الصوتي هذه؟ "</b>"</item>
+      <item quantity="other">"<b>"حذف رسائل البريد الصوتي هذه؟ "</b>"</item>
+      <item quantity="one">"<b>"حذف رسالة البريد الصوتي هذه؟ "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> في <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -120,7 +133,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"‏جارٍ التحميل من شريحة SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"‏شريحة SIM وجهات الاتصال"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"لا يتوفر تطبيق لجهات الاتصال"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"البحث الصوتي غير متاح"</string>
     <string name="call_not_available" msgid="7850148370757361155">"يتعذر إجراء مكالمة هاتفية نظرًا لأنه تم تعطيل تطبيق الهاتف."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"البحث في جهات الاتصال"</string>
@@ -149,10 +161,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> من المكالمات الجديدة الفائتة"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"لم تتم إضافة أية جهة اتصال إلى قائمة الاتصال السريع حتى الآن"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"إضافة مفضلة"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ليست لديك أية جهات اتصال حتى الآن"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"إضافة جهة اتصال"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"المس الصورة للاطلاع على جميع الأرقام أو المس مع الاستمرار لإعادة الترتيب"</string>
     <string name="remove_contact" msgid="2353580570488923668">"إزالة"</string>
+    <string name="select_all" msgid="408601760696146245">"تحديد الكل"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"مكالمة فيديو"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"إرسال رسالة"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"تفاصيل المكالمة"</string>
@@ -221,11 +232,9 @@
     <string name="block_list" msgid="4701585783411870782">"الأرقام المحظورة"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"تم حظر <xliff:g id="NUMBER">%1$s</xliff:g>."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"حسابات الاتصال"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"تشغيل"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"تعيين الأذونات"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"لتمكين الاتصال السريع، شغِّل إذن جهات الاتصال."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"للاطلاع على سجل المكالمات، شغِّل إذن الهاتف."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"للاطلاع على جهات الاتصال، شغِّل إذن جهات الاتصال."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"للوصول إلى البريد الصوتي، شغِّل إذن الهاتف."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"للبحث عن جهات الاتصال، عليك تشغيل أذونات جهات الاتصال."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"لإجراء مكالمة، شغِّل إذن الهاتف."</string>
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 62bc117..f2b0cf3 100644
--- a/java/com/android/dialer/app/res/values-az/strings.xml
+++ b/java/com/android/dialer/app/res/values-az/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Gözləmə əlavə edin"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ayarlar"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Stimulyator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Yeni İİ Qısayolu yaradın"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Bütün kontaktlar"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Toxunma ton klaviaturasını istifadə edin"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Davam edən zəngə qayıdın"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Zəng əlavə edin"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Gələn zənglər"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Toplu əməliyyat rejiminə daxil olunur"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Toplu əməliyyat rejimi tərk edilir"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> seçildi"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> seçilmədi"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Səsli məktubu oxudun"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> adlı kontakta baxın"</string>
     <string name="description_call" msgid="1532402285334775372">"Zəng <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Səsli poçt"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> san"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> dəq <xliff:g id="SECONDS">%s</xliff:g> san"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"səsli e-məktub"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"səsli e-məktublar"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Bəli"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Xeyr"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Qrup əməliyyatları rejimini ləğv edin"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Silin"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Ləğv edin"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Seçilmiş <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> silinsin?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> seçilib"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Bu səsli e-məktub silinsin? "</b>"</item>
+      <item quantity="one">"<b>"Bu səsli e-məktub silinsin? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> tarixində <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM kartdan yüklənir..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM kart kontaktları"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Əlaqələr proqramı mövcud deyil"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Səsli axtarış mövcud deyil"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefon tətbiqi deaktiv edildiyinə görə telefon zəngi etmək mümkün deyil."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Kontakt axtarın"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> yeni buraxılmış zəng"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Hələ sürətli zəng siyahınızda hec kim yoxdur"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Sevimlilərə əlavə edin"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Hələ heç bir kontaktınız yoxdur"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Kontakt əlavə edin"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Bütün nömrələri görmək üçün təsvirə toxunun və ya yenidən qaydaya salmaq üçün basıb saxlayın"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Yığışdır"</string>
+    <string name="select_all" msgid="408601760696146245">"Hamısını seçin"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video zəng"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Mesaj göndərin"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Zəng detalları"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Bloklanmış nömrələr"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> artıq bloklanıb."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Hesabların çağrılması"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktiv edin"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"İcazələri quraşdırın"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Sürətli yığımı aktivləşdirmək üçün, Kontakt icazələrini aktivləşdirin."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Çağrı jurnalınızı görmək üçün Telefon icazəsini aktivləşdirin."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kontaktlarınızı görmək üçün Kontakt icazəsini aktivləşdirin."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Səsli poçta daxil olmaq üçün, Telefon icazəsini aktivləşdirin."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kontaktlarınızı axtarmaq üçün, Kontakt icazələrini aktiv edin."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Zəng etmək üçün, Telefon icazəsini aktivləşdirin."</string>
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 9df7291..b011f78 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
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Dodaj čekanje"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Podešavanja"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Napravite prečicu za novi UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Svi kontakti"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Upotrebite brojčanik za tonsko biranje"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Vrati se na poziv koji je u toku"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Dodaj poziv"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Dolazni pozivi"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Ulazite u režim grupnih radnji"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Izašli ste iz režima grupnih radnji"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Izabrano je <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Opozvan je izbor <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Puštanje govorne pošte"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Prikaži kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Pozovi <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Govorna pošta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sek"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"govornu poruku"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"govorne poruke"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Da"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Otkažite režim grupnih radnji"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Izbriši"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Otkaži"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Želite li da izbrišete izabranu(e) <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Izabranih: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Želite li da izbrišete ove govorne poruke? "</b>"</item>
+      <item quantity="few">"<b>"Želite li da izbrišete ove govorne poruke? "</b>"</item>
+      <item quantity="other">"<b>"Želite li da izbrišete ove govorne poruke? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> u <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Učitava se sa SIM kartice…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakti na SIM kartici"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nema dostupne aplikacije za kontakte"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Glasovna pretraga nije dostupna"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nije moguće uputiti telefonski poziv jer je aplikacija Telefon onemogućena."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Pretraži kontakte"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Novih propuštenih poziva: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Nemate nijedan kontakt na brzom biranju"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Dodaj omiljen kontakt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Još uvek nemate nijedan kontakt"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Dodaj kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Dodirnite sliku da biste videli sve brojeve ili dodirnite i zadržite da biste im promenili raspored"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Ukloni"</string>
+    <string name="select_all" msgid="408601760696146245">"Izaberi sve"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video poziv"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Pošalji poruku"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalji poziva"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokirani brojevi"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> je već blokiran."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Nalozi za pozivanje"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Uključi"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Podesi dozvole"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Da biste omogućili brzo biranje, uključite dozvolu za Kontakte."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Da biste videli evidenciju poziva, uključite dozvolu za Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Da biste videli kontakte, uključite dozvolu za Kontakte."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Da biste pristupili govornoj pošti, uključite dozvolu za Telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Da biste pretražili kontakte, uključite dozvole za Kontakte."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Da biste uputili poziv, uključite dozvolu za Telefon."</string>
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 aac3df2..f9b0837 100644
--- a/java/com/android/dialer/app/res/values-be/strings.xml
+++ b/java/com/android/dialer/app/res/values-be/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Дадаць чаканне"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Налады"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Сродак мадэліравання"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Ярлык новага карыст. інтэрфейсу"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Усе кантакты"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Выкарыстанне тонавай клавіятуры"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Звярнуцца да бягучага выкліку"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Дадаць выклік"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Уваходныя выклікі"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Уваход у рэжым групавога дзеяння"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Выхад з рэжыму групавога дзеяння"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Выбрана: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Выбар скасаваны: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Прайграць паведамленне галасавой пошты"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Прагледзець кантакт <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Выклікаць карыстальнiка <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Галасавая пошта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> с"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> хв <xliff:g id="SECONDS">%s</xliff:g> с"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"галасавая пошта"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"галасавая пошта"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Так"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Не"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Скасаваць рэжым пакетных дзеянняў"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Выдаліць"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Скасаваць"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Выдаліць вылучанае: <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Выбрана: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Выдаліць гэтыя паведамленні галасавой пошты? "</b>"</item>
+      <item quantity="few">"<b>"Выдаліць гэтыя паведамленні галасавой пошты? "</b>"</item>
+      <item quantity="many">"<b>"Выдаліць гэтыя паведамленні галасавой пошты? "</b>"</item>
+      <item quantity="other">"<b>"Выдаліць гэтыя паведамленні галасавой пошты? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> у <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Загрузка з SIM-карты..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Кантакты SIM-карты"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Праграмы для аперацый з кантактамі няма"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Галасавы пошук недаступны"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Немагчыма зрабіць выклік па тэлефоне, таму што праграма Тэлефон была адключана."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Пошук кантактаў"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Новых прапушчаных выклікаў: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"У вас пакуль нікога няма на хуткім наборы"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Дадаць улюбёны"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"У вас пакуль няма ніякіх кантактаў"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Дадаць кантакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Дакраніцеся да відарыса, каб прагледзець усе нумары, або дакраніцеся і ўтрымлівайце, каб змяніць парадак"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Выдаліць"</string>
+    <string name="select_all" msgid="408601760696146245">"Выбраць усё"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Відэавыклік"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Адправiць паведамленне"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Падрабязнасці выкліку"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Заблакіраваныя нумары"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ужо заблакіраваны."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Уліковыя запісы для выклікаў"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Уключыць"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Задаць дазволы"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Каб уключыць хуткі набор, уключыце дазвол для Кантактаў."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Каб прагледзець свой журнал выклікаў, уключыце дазволы Тэлефона."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Каб бачыць свае кантакты, уключыце дазвол для Кантактаў."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Каб атрымаць доступ да галасавой пошты, уключыце дазвол для Тэлефона."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Каб шукаць свае кантакты, уключыце дазвол для Кантактаў."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Каб зрабіць выклік, уключыце дазвол для Тэлефона."</string>
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 7bab71f..8b1105c 100644
--- a/java/com/android/dialer/app/res/values-bg/strings.xml
+++ b/java/com/android/dialer/app/res/values-bg/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Добавяне на изчакване"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Настройки"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулатор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Пряк път към новия ПИ"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Всички контакти"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Използване на тонова клавиатура"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Назад към текущото обаждане"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Добавяне на обаждане"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Вх. обаждания"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Влизате в режима на групови действия"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Излязохте от режима на групови действия"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Избрахте <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Премахнахте избора от <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Пускане на гласовата поща"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Преглед на контактa <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Обаждане на <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Гласова поща"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мин <xliff:g id="SECONDS">%s</xliff:g> сек"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"гласово съобщение"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"гласови съобщения"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Да"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Не"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Анулиране на режима на групови действия"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Изтриване"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Отказ"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Избрахте <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> – да се изтрие ли избраното?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Избрахте <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Да се изтрият ли тези гласови съобщения? "</b>"</item>
+      <item quantity="one">"<b>"Да се изтрие ли това гласово съобщение? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> в <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Зарежда се от SIM карта..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Контакти от SIM карта"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Няма налично приложение за контакти"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Гласовото търсене не е налице"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Не може да се осъществи телефонно обаждане, защото приложението Телефон е деактивирано."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Търсене в контактите"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> нови пропуснати обаждания"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Още нямате контакти за бързо набиране"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Добавяне на любим контакт"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Още нямате контакти"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Добавяне на контакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Докоснете изображението, за да видите всички номера, или го натиснете и задръжте за пренареждане"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Премахване"</string>
+    <string name="select_all" msgid="408601760696146245">"Избиране на всички"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видеообаждане"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Изпращане на съобщение"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Подробности за обаждането"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Блокирани номера"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Номер <xliff:g id="NUMBER">%1$s</xliff:g> вече е блокиран."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Профили за обаждане"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Включване"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Задаване на разрешенията"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"За да активирате бързото набиране, включете разрешението за Контакти."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"За да видите списъка с обажданията си, включете разрешението за Телефон."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"За да видите контактите си, включете разрешението за Контакти."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"За да осъществите достъп до гласовата си поща, включете разрешението за Телефон."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"За да търсите в контактите си, включете разрешенията за тях."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"За да извършите обаждане, включете разрешението за Телефон."</string>
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 271247b..2ec3626 100644
--- a/java/com/android/dialer/app/res/values-bn/strings.xml
+++ b/java/com/android/dialer/app/res/values-bn/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"অপেক্ষা যোগ করুন"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"সেটিংস"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"সিমুলেটার"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"নতুন UI শর্টকাট তৈরি করুন"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"সকল পরিচিতি"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"স্পর্শ স্বর কীপ্যাড ব্যবহার করুন"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"প্রগতিতে থাকা কলে প্রত্যাবর্তন"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"কল যোগ করুন"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ইনকামিং কলগুলি"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"বাল্ক অ্যাকশন মোডে প্রবেশ করা হচ্ছে"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"বাল্ক অ্যাকশন মোড ত্যাগ করুন"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> নির্বাচন করা হয়েছে"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> অনির্বাচন করা হয়েছে"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ভয়েসমেল প্লে করুন"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> পরিচিতি দেখুন"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> কে কল করুন"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ভয়েসমেল"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> সেকেন্ড"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> মিনিট <xliff:g id="SECONDS">%s</xliff:g> সেকেন্ড"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ভয়েসমেল"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ভয়েসমেলগুলি"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"হ্যাঁ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"না"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ব্যাচ অ্যাকশন মোড বাতিল করুন"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"মুছুন"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"বাতিল করুন"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"নির্বাচিত <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> মুছে ফেলতে চান?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g>টি নির্বাচিত"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"এই ভয়েসমেলগুলি মুছবেন? "</b>"</item>
+      <item quantity="other">"<b>"এই ভয়েসমেলগুলি মুছবেন? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> তারিখে <xliff:g id="TIME">%2$s</xliff:g>\'টায়"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"সিম কার্ড থেকে লোড করা হচ্ছে…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"সিম কার্ডের পরিচিতিগুলি"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"কোনো পরিচিতি অ্যাপ্লিকেশান উপলব্ধ নয়"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ভয়েস অনুসন্ধান অনুপলব্ধ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"কোনো ফোন কল করা যাবে না কারণ ফোন অ্যাপ্লিকেশানটি অক্ষম করা হয়েছে৷"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"পরিচিতিগুলি খুঁজুন"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g>টি নতুন মিসড কল"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"আপনার স্পীড ডায়ালে এখনও পর্যন্ত কেউ নেই"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"একটি পছন্দসই যোগ করুন"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"আপনার এখনও পর্যন্ত কোনো পরিচিতি নেই"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"একটি পরিচিতি যোগ করুন"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"সমস্ত নম্বর দেখতে ছবিতে স্পর্শ করুন বা রেকর্ড করতে স্পর্শ করে ধরে রাখুন"</string>
     <string name="remove_contact" msgid="2353580570488923668">"সরান"</string>
+    <string name="select_all" msgid="408601760696146245">"সবগুলি নির্বাচন করুন"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ভিডিও কল"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"একটি বার্তা পাঠান"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"কলের বিশদ বিবরণ"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ব্লক করা নাম্বারগুলি"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ইতিমধ্যেই অববোধ করা রয়েছে৷"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"কলিং অ্যাকাউন্টগুলি"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"চালু করুন"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"অনুমতিগুলি সেট করুন"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"স্পীড ডায়াল সক্ষম করতে, পরিচিতিগুলির অনুমতি চালু করুন।"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"আপনার কল লগ দেখতে, ফোনের অনুমতি চালু করুন।"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"আপনার পরিচিতিগুলি দেখতে, পরিচিতিগুলির অনুমতি চালু করুন।"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"আপনার ভয়েসমেল অ্যাক্সেস করতে, ফোনের অনুমতি চালু করুন।"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"আপনার পরিচিতিগুলি অনুসন্ধান করতে, পরিচিতির অনুমতিগুলি চালু করুন।"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"একটি কল করতে, ফোনের অনুমতি চালু করুন।"</string>
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 92c9c14..087db12 100644
--- a/java/com/android/dialer/app/res/values-bs/strings.xml
+++ b/java/com/android/dialer/app/res/values-bs/strings.xml
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Dodaj čekanje"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Postavke"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Kreiraj prečicu za novi UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Svi kontakti"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Koristi tastaturu za tonsko biranje"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Povratak na poziv u toku"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Dodaj poziv"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Dolazni pozivi"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Ulazak u način rada za skupnu radnju"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Napuštanje načina rada za skupnu radnju"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Odabrano <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Poništen odabir <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Pokretanje govorne pošte"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Prikaži kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Pozovi kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Govorna pošta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"poruka govorne pošte"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"poruke govorne pošte"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Da"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Otkaži način rada za grupnu radnju"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Izbriši"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Otkaži"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Izbrisati izabranu/e <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Odabrano <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Izbrisati ove govorne poruke? "</b>"</item>
+      <item quantity="few">"<b>"Izbrisati ove govorne poruke? "</b>"</item>
+      <item quantity="other">"<b>"Izbrisati ove govorne poruke? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> u <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Učitavanje sa SIM kartice…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakti sa SIM kartice"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nije dostupna nijedna aplikacija za kontakte"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Glasovna pretraga nije dostupna"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nije moguće uputiti poziv jer je aplikacija Telefon onemogućena."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Traži kontakte"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Broj novih propuštenih poziva: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Nemate nikog na brzom biranju"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Dodaj u favorite"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Još nemate nijedan kontakt"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Dodaj kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Dodirnite sliku da vidite sve brojeve ili dodirnite i držite da promijenite raspored."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Ukloni"</string>
+    <string name="select_all" msgid="408601760696146245">"Izaberi sve"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videopoziv"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Pošalji poruku"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalji o pozivu"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokirani brojevi"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> je već blokiran."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Računi za pozivanje"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Uključi"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Postavi dozvole"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Da omogućite brzo biranje, uključite dozvolu za Kontakte."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Da vidite popis poziva, uključite dozvolu za Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Da vidite kontakte, uključite dozvolu za Kontakte."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Da pristupite govornoj pošti,uključite dozvolu za telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Da pretražujete kontakte, uključite dozvole za Kontakte."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Da uputite poziv, uključite dozvolu za Telefon."</string>
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 fa04dd9..7138580 100644
--- a/java/com/android/dialer/app/res/values-ca/strings.xml
+++ b/java/com/android/dialer/app/res/values-ca/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Afegeix espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Configuració"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Crea drecera per a la nova IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tots els contactes"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Utilitza el teclat de tons"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Torna a la trucada en curs"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Afegeix una trucada"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Trucades entrants"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"S\'està accedint al mode d\'acció massiva"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"S\'ha sortit del mode d\'acció massiva"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"S\'ha seleccionat <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"S\'ha desseleccionat <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reprodueix el missatge de veu"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Visualitza el contacte <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Truca a <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,24 +104,27 @@
     <string name="voicemail" msgid="8899540969000957954">"Bústia de veu"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"missatge de veu"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"missatges de veu"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sí"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancel·la el mode d\'accions en lot"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Suprimeix"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancel·la"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Vols suprimir l\'element o elements seleccionats (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> seleccionades"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Vols suprimir aquests missatges de veu? "</b>"</item>
+      <item quantity="one">"<b>"Vols suprimir aquest missatge de veu? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> a les <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
     <string name="voicemailCallLogDateTimeFormatWithDuration" msgid="7224408726047155205">"<xliff:g id="DATEANDTIME">%1$s</xliff:g> • <xliff:g id="DURATION">%2$s</xliff:g>"</string>
     <string name="dialog_phone_call_prohibited_message" msgid="6317935773274628316">"No es pot trucar a aquest número."</string>
-    <string name="dialog_voicemail_not_ready_message" msgid="6437173108290752604">"Per configurar els missatges de veu, vés a Menú &gt; Configuració."</string>
+    <string name="dialog_voicemail_not_ready_message" msgid="6437173108290752604">"Per configurar els missatges de veu, ves a Menú &gt; Configuració."</string>
     <string name="dialog_voicemail_airplane_mode_message" msgid="1044988101597862159">"Per trucar a la bústia de veu, primer has de desactivar el mode d\'avió."</string>
     <string name="contact_list_loading" msgid="7919825236309749352">"S\'està carregant…"</string>
     <string name="imei" msgid="5214505934662768308">"IMEI"</string>
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"S\'està carregant des de la targeta SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contactes de la targeta SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No hi ha cap contacte disponible."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"La cerca per veu no està disponible."</string>
     <string name="call_not_available" msgid="7850148370757361155">"No es pot fer una trucada telefònica perquè s\'ha desactivat l\'aplicació de telèfon."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Cerca als contactes"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> trucades perdudes noves"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Encara no tens cap contacte al marcatge ràpid"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Afegeix un preferit"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Encara no tens cap contacte"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Afegeix un contacte"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toca la imatge per veure\'n tots els números o bé mantén-la premuda per canviar-ne l\'ordre"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Suprimeix"</string>
+    <string name="select_all" msgid="408601760696146245">"Selecciona-ho tot"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videotrucada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Envia un missatge"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalls de la trucada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloquejats"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ja està bloquejat."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Comptes de trucades"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activa"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Defineix els permisos"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Activa el permís Contactes per activar el marcatge ràpid."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Activa el permís Telèfon per veure el teu registre de trucades."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Activa el permís Contactes per veure els teus contactes."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Activa el permís Telèfon per accedir a la bústia de veu."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Per cercar els teus contactes, activa els permisos de Contactes."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Activa el permís Telèfon per fer una trucada."</string>
@@ -227,7 +232,7 @@
     <string name="call_log_action_block_number" msgid="5048188386501998865">"Bloqueja el número"</string>
     <string name="call_log_action_remove_spam" msgid="2045319806318398403">"No és una trucada brossa"</string>
     <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="spam_number_call_log_label" msgid="2678431398326811131">"Trucada 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>
     <string name="about_phone_label" msgid="582991354677973731">"Informació"</string>
 </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 5a3e429..dbff467 100644
--- a/java/com/android/dialer/app/res/values-cs/strings.xml
+++ b/java/com/android/dialer/app/res/values-cs/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Přidat čekání"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Nastavení"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulátor"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Vytv. zkratku na nové rozhraní"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Všechny kontakty"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Použít dotykovou tónovou klávesnici"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Návrat k probíhajícímu hovoru"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Přidat hovor"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Příchozí volání"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Vstupování do režimu hromadných akcí"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Opustili jste režim hromadných akcí"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Položka <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> je vybrána"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Položka <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> není vybrána"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Přehrát hlasovou schránku"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Zobrazit kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Volat kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Hlasová schránka"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"vybranou hlasovou zprávu"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"vybrané hlasové zprávy"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ano"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Zrušit režim hromadných akcí"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Smazat"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Zrušit"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Smazat <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Vybráno: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="few">"<b>"Smazat tyto hlasové zprávy? "</b>"</item>
+      <item quantity="many">"<b>"Smazat tyto hlasové zprávy? "</b>"</item>
+      <item quantity="other">"<b>"Smazat tyto hlasové zprávy? "</b>"</item>
+      <item quantity="one">"<b>"Smazat tuto hlasovou zprávu? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> v <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Načítání ze SIM karty..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakty na SIM kartě"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Není k dispozici žádná aplikace pro práci s kontakty."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Hlasové vyhledávání není k dispozici."</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefonický hovor nelze uskutečnit, protože aplikace Telefon byla zakázána."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Vyhledat kontakty"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Nové zmeškané hovory: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"V rychlém vytáčení zatím nemáte žádný kontakt."</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Přidat oblíbený kontakt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Zatím nemáte žádné kontakty"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Přidat kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Klepnutím na obrázek zobrazíte všechna čísla. Podržením můžete změnit pořadí."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Odstranit"</string>
+    <string name="select_all" msgid="408601760696146245">"Vybrat všechny"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videohovor"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Odeslat zprávu"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Podrobnosti hovoru"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokovaná čísla"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Číslo <xliff:g id="NUMBER">%1$s</xliff:g> je již blokováno."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Účty pro volání"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Zapnout"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Nastavit oprávnění"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Chcete-li povolit rychlé vytáčení, aktivujte oprávnění Kontakty."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Chcete-li zobrazit seznam hovorů, aktivujte oprávnění Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Chcete-li zobrazit kontakty, aktivujte oprávnění Kontakty."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Chcete-li přejít do hlasové schránky, aktivujte oprávnění Telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Chcete-li vyhledat kontakty, zapněte oprávnění Kontakty."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Chcete-li uskutečnit hovor, aktivujte oprávnění Telefon."</string>
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 42aa663..72f5a28 100644
--- a/java/com/android/dialer/app/res/values-da/strings.xml
+++ b/java/com/android/dialer/app/res/values-da/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Tilføj ventetid"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Indstillinger"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Opret ny brugerfladegenvej"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle kontakter"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Brug numerisk tastatur"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Vend tilbage til igangværende opkald"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Tilføj opkald"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Indgående opkald"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Massehandlingstilstanden startes"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Massehandlingstilstanden blev afsluttet"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Vælg <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Fravalgt <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Afspil telefonsvarerbesked"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Vis kontaktpersonen <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ring til <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Telefonsvarer"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"talebesked"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"talebeskeder"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nej"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Annuller massehandlingstilstand"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Slet"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Annuller"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Vil du slette de valgte <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> er valgt"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Vil du slette denne talebesked? "</b>"</item>
+      <item quantity="other">"<b>"Vil du slette disse talebeskeder? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kl. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Indlæser fra SIM-kort ..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakter på SIM-kort"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Der er ingen app til kontaktpersoner"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Talesøgning er ikke tilgængelig"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Det er ikke muligt at foretage et telefonopkald, fordi applikationen Telefon er deaktiveret."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Søg i kontakter"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nye ubesvarede opkald"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Der er endnu ingen kontaktpersoner i Hurtigopkald"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Angiv en kontaktperson som foretrukken"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Du har endnu ikke nogen kontaktpersoner"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Tilføj en kontaktperson"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tryk på billedet for at se alle numre, eller tryk og hold nede på billedet for at omarrangere"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Fjern"</string>
+    <string name="select_all" msgid="408601760696146245">"Vælg alt"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videoopkald"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send en sms-besked"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Opkaldsinfo"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokerede telefonnumre"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> er allerede blokeret."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Opkaldskonti"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktivér"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Angiv tilladelser"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Slå tilladelsen Kontaktpersoner til for at aktivere hurtigopkald."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Slå tilladelsen Telefon til for at se din opkaldsliste."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Slå tilladelsen Kontaktpersoner til for at se dine kontaktpersoner."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Slå tilladelsen Telefon til for at få adgang til din telefonsvarer,"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Hvis du vil søge i dine kontaktpersoner, skal du slå tilladelserne Kontaktpersoner til."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Slå tilladelsen Telefon til for at foretage et opkald."</string>
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 5653e0f..a7efd53 100644
--- a/java/com/android/dialer/app/res/values-de/strings.xml
+++ b/java/com/android/dialer/app/res/values-de/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Warten hinzufügen"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Einstellungen"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Verknüpfung für neue Benutzeroberfläche erstellen"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle Kontakte"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Telefontastatur verwenden"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Zurück zum aktuellen Anruf"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Anruf hinzufügen"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Eingehende Anrufe"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Es wird in den Modus für Bulk-Aktionen gewechselt"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Der Modus für Bulk-Aktionen wurde verlassen"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ausgewählt"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Auswahl für <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> aufgehoben"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Mailbox abhören"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Kontakt <xliff:g id="NAME">%1$s</xliff:g> anzeigen"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> anrufen"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Mailbox"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"Mailboxnachricht"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"Mailboxnachrichten"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nein"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Modus für Batch-Aktionen abbrechen"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Löschen"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Abbrechen"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Ausgewählte <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> löschen?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ausgewählt"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Diese Mailboxnachrichten löschen? "</b>"</item>
+      <item quantity="one">"<b>"Diese Mailboxnachricht löschen? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> um <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Ladevorgang von SIM-Karte läuft..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakte auf SIM-Karte"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Keine Kontakte-App verfügbar"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Sprachsuche nicht verfügbar"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Es kann kein Anruf getätigt werden, da die App \"Telefon\" deaktiviert wurde."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"In Kontakten suchen"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> neue entgangene Anrufe"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Du hast für noch niemanden eine Kurzwahl festgelegt"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Favoriten hinzufügen"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Du hast noch keine Kontakte."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Kontakt hinzufügen"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tippe auf das Bild, um alle Nummern zu sehen, oder halte das Bild länger gedrückt, um sie neu anzuordnen"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Entfernen"</string>
+    <string name="select_all" msgid="408601760696146245">"Alle auswählen"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videoanruf"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"SMS senden"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Anrufdetails"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blockierte Nummern"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ist bereits blockiert."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Anrufkonten"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktivieren"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Berechtigungen festlegen"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Aktiviere die Berechtigung \"Kontakte\", um die Kurzwahlfunktion zu verwenden."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Aktiviere die Berechtigung \"Telefon\", um dein Anrufprotokoll abzurufen."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Aktiviere die Berechtigung \"Kontakte\", um deine Kontakte abzurufen."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Aktiviere die Berechtigung \"Telefon\", um auf deine Mailbox zuzugreifen."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Aktiviere die Berechtigungen \"Kontakte\", um deine Kontakte zu suchen."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Aktiviere die Berechtigung \"Telefon\", um einen Anruf zu tätigen."</string>
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 847f60a..7080e5e 100644
--- a/java/com/android/dialer/app/res/values-el/strings.xml
+++ b/java/com/android/dialer/app/res/values-el/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Προσθήκη αναμονής"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ρυθμίσεις"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Προσομοιωτής"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Δημ. νέας συντόμ. διεπαφής"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Όλες οι επαφές"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Χρησιμοποιήστε το πληκτρολόγιο αφής ηχητικών τόνων"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Επιστροφή στην κλήση που βρίσκεται σε εξέλιξη"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Προσθήκη κλήσης"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Εισερχόμενες κλήσεις"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Εισαγωγή στη λειτουργία μαζικών ενεργειών"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Αποχώρηση από τη λειτουργία μαζικών ενεργειών"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Έγινε επιλογή <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Καταργήθηκε η επιλογή <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Αναπαραγωγή μηνύματος αυτόματου τηλεφωνητή"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Προβολή επαφής <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Κλήση <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Αυτόματος τηλεφωνητής"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> δευτερόλεπτα"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> λεπτά <xliff:g id="SECONDS">%s</xliff:g> δευτερόλεπτα"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"φωνητικού μηνύματος αυτόματου τηλεφωνητή"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"φωνητικών μηνυμάτων αυτόματου τηλεφωνητή"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ναι"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Όχι"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Ακύρωση λειτουργίας μαζικών ενεργειών"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Διαγραφή"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Ακύρωση"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Διαγραφή επιλεγμ. <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>;"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Έχουν επιλεγεί <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Διαγραφή αυτών των μηνυμάτων αυτόματου τηλεφωνητή; "</b>"</item>
+      <item quantity="one">"<b>"Διαγραφή αυτού του μηνύματος αυτόματου τηλεφωνητή; "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> στις <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Φόρτωση από κάρτα SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Επαφές στην κάρτα SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Δεν υπάρχουν διαθέσιμες εφαρμογές επαφών"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Η φωνητική αναζήτηση δεν είναι διαθέσιμη"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Δεν είναι δυνατή η πραγματοποίηση τηλεφωνικής κλήσης επειδή η εφαρμογή \"Τηλέφωνο\" έχει απενεργοποιηθεί."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Αναζήτηση επαφών"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> νέες αναπάντητες κλήσεις"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Δεν έχετε ορίσει ακόμη κάποια επαφή στις ταχείες κλήσεις"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Προσθέστε ένα αγαπημένο"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Δεν έχετε επαφές ακόμη"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Προσθήκη επαφής"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Αγγίξτε την εικόνα για να δείτε όλους τους αριθμούς ή αγγίξτε παρατεταμένα για αναδιάταξη"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Κατάργηση"</string>
+    <string name="select_all" msgid="408601760696146245">"Επιλογή όλων"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Βιντεοκλήση"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Αποστολή μηνύματος"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Λεπτομέρειες κλήσης"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Αποκλεισμένοι αριθμοί"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Ο αριθμός <xliff:g id="NUMBER">%1$s</xliff:g> αποκλείστηκε ήδη."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Λογαριασμοί κλήσης"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ενεργοποίηση"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Ορισμός αδειών"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Για να ενεργοποιήσετε την ταχεία κλήση, ενεργοποιήστε την άδεια επαφών."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Για να δείτε το αρχείο καταγραφής κλήσεών σας, ενεργοποιήστε την άδεια τηλεφώνου."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Για να δείτε τις επαφές σας, ενεργοποιήστε την άδεια επαφών."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Για να αποκτήσετε πρόσβαση στον τηλεφωνητή σας, ενεργοποιήστε την άδεια τηλεφώνου."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Για να κάνετε αναζήτηση στις επαφές σας, ενεργοποιήστε τις άδειες \"Επαφές\"."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Για να πραγματοποιήσετε μια κλήση, ενεργοποιήστε την άδεια τηλεφώνου."</string>
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 28eea8b..999f7da 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
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Add wait"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Settings"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Create new UI shortcut"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"All contacts"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Use touch tone keypad"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Return to call in progress"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Add call"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Incoming calls"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entering bulk action mode"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Left bulk action mode"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Selected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Unselected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Play voicemail"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"View contact <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Call <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Voicemail"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sec"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sec"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"voicemail"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"voicemails"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Yes"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancel batch actions mode"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Delete"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancel"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Delete selected <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selected"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Delete these voicemails? "</b>"</item>
+      <item quantity="one">"<b>"Delete this voicemail? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> at <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Loading from SIM card…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM card contacts"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No contacts app available"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Voice search not available"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Cannot make a phone call because the Phone application has been disabled."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Search contacts"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> new missed calls"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"No one is on your speed dial yet"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Add a favourite"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"You don\'t have any contacts yet"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Add a contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Touch image to see all numbers, or touch &amp; hold to re-arrange"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remove"</string>
+    <string name="select_all" msgid="408601760696146245">"Select all"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video call"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send a message"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Call details"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blocked numbers"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> is already blocked."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Calling accounts"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Turn on"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Set permissions"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"To enable speed dial, turn on the Contacts permission."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"To see your call log, turn on the Phone permission."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"To see your contacts, turn on the Contacts permission."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"To access your voicemail, turn on the Phone permission."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"To search your contacts, turn on the Contacts permissions."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"To place a call, turn on the Phone permission."</string>
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 28eea8b..999f7da 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
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Add wait"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Settings"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Create new UI shortcut"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"All contacts"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Use touch tone keypad"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Return to call in progress"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Add call"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Incoming calls"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entering bulk action mode"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Left bulk action mode"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Selected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Unselected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Play voicemail"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"View contact <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Call <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Voicemail"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sec"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sec"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"voicemail"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"voicemails"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Yes"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancel batch actions mode"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Delete"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancel"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Delete selected <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selected"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Delete these voicemails? "</b>"</item>
+      <item quantity="one">"<b>"Delete this voicemail? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> at <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Loading from SIM card…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM card contacts"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No contacts app available"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Voice search not available"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Cannot make a phone call because the Phone application has been disabled."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Search contacts"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> new missed calls"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"No one is on your speed dial yet"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Add a favourite"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"You don\'t have any contacts yet"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Add a contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Touch image to see all numbers, or touch &amp; hold to re-arrange"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remove"</string>
+    <string name="select_all" msgid="408601760696146245">"Select all"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video call"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send a message"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Call details"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blocked numbers"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> is already blocked."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Calling accounts"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Turn on"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Set permissions"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"To enable speed dial, turn on the Contacts permission."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"To see your call log, turn on the Phone permission."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"To see your contacts, turn on the Contacts permission."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"To access your voicemail, turn on the Phone permission."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"To search your contacts, turn on the Contacts permissions."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"To place a call, turn on the Phone permission."</string>
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 28eea8b..999f7da 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
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Add wait"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Settings"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Create new UI shortcut"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"All contacts"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Use touch tone keypad"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Return to call in progress"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Add call"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Incoming calls"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entering bulk action mode"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Left bulk action mode"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Selected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Unselected <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Play voicemail"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"View contact <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Call <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Voicemail"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sec"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sec"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"voicemail"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"voicemails"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Yes"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancel batch actions mode"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Delete"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancel"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Delete selected <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selected"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Delete these voicemails? "</b>"</item>
+      <item quantity="one">"<b>"Delete this voicemail? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> at <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Loading from SIM card…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM card contacts"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No contacts app available"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Voice search not available"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Cannot make a phone call because the Phone application has been disabled."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Search contacts"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> new missed calls"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"No one is on your speed dial yet"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Add a favourite"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"You don\'t have any contacts yet"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Add a contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Touch image to see all numbers, or touch &amp; hold to re-arrange"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remove"</string>
+    <string name="select_all" msgid="408601760696146245">"Select all"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video call"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send a message"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Call details"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blocked numbers"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> is already blocked."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Calling accounts"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Turn on"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Set permissions"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"To enable speed dial, turn on the Contacts permission."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"To see your call log, turn on the Phone permission."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"To see your contacts, turn on the Contacts permission."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"To access your voicemail, turn on the Phone permission."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"To search your contacts, turn on the Contacts permissions."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"To place a call, turn on the Phone permission."</string>
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 9d80bc9..701d74e 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
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Agregar espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Configuración"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Crear acceso a la nueva IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos los contactos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usar teclado numérico"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Regresar a la llamada en curso"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Agregar llamada"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Llamadas entrantes"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrando al modo de acción masiva"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Saliendo del modo de acción masiva"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Se seleccionó <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Se anuló la selección de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproducir mensaje de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ver contacto <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Llamar a <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Correo de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"el mensaje de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"los mensajes de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sí"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancelar el modo de acción masiva"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Borrar"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"¿Deseas borrar <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> que seleccionaste?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> seleccionada(s)"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"¿Deseas borrar estos mensajes de voz? "</b>"</item>
+      <item quantity="one">"<b>"¿Deseas borrar este mensaje de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"El <xliff:g id="DATE">%1$s</xliff:g> a la hora <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Cargando desde tarjeta SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contactos de tarjeta SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No hay aplicaciones de contactos disponibles."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Búsqueda por voz no disponible"</string>
     <string name="call_not_available" msgid="7850148370757361155">"No se pueden realizar llamadas porque se inhabilitó la aplicación Teléfono."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Buscar contactos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> llamadas perdidas nuevas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Aún no tienes contactos en la opción de marcado rápido"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Agregar un favorito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Aún no tienes contactos"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Agregar un contacto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toca la imagen para ver todos los números o mantenla presionada para reorganizar"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eliminar"</string>
+    <string name="select_all" msgid="408601760696146245">"Seleccionar todo"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videollamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar un mensaje"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalles de la llamada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ya está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Cuentas telefónicas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Configurar permisos"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para habilitar el marcado rápido, activa el permiso Contactos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver el registro de llamadas, activa el permiso Teléfono."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver los contactos, activa el permiso Contactos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para acceder al buzón de voz, activa el permiso Teléfono."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para buscar contactos, activa el permiso Contactos."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para realizar una llamada, activa el permiso Teléfono."</string>
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 b7383d9..8cf47f5 100644
--- a/java/com/android/dialer/app/res/values-es/strings.xml
+++ b/java/com/android/dialer/app/res/values-es/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Añadir espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ajustes"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Crear acceso a la interfaz"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos los contactos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usar teclado táctil"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Volver a la llamada"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Añadir llamada"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Llamadas entrantes"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrando en el modo de acción en bloque"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Se ha salido del modo de acción en bloque"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> seleccionado"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Selección de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> anulada"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproducir mensaje de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ver contacto <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Llamar a <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Buzón de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min y <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"mensaje de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"mensajes de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sí"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancelar el modo de acciones en lote"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Eliminar"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"¿Eliminar la selección de <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Se han seleccionado <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"¿Eliminar estos mensajes de voz? "</b>"</item>
+      <item quantity="one">"<b>"¿Eliminar este mensaje de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> a las <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Cargando desde tarjeta SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contactos de tarjeta SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"No hay aplicaciones de contactos disponibles"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"La búsqueda por voz no está disponible"</string>
     <string name="call_not_available" msgid="7850148370757361155">"No se puede hacer llamadas porque se ha inhabilitado la aplicación Teléfono."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Buscar contactos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> llamadas perdidas nuevas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Aún no tienes contactos en la función de marcación rápida"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Añadir un favorito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Aún no tienes contactos"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Añadir un contacto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tocar la imagen para ver todos los números o mantenerla pulsada para cambiar el orden"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eliminar"</string>
+    <string name="select_all" msgid="408601760696146245">"Seleccionar todo"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videollamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar un mensaje"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalles de la llamada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ya está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Cuentas de llamadas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Establecer permisos"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para habilitar la marcación rápida, activa el permiso la aplicación Contactos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver el registro de llamadas, activa el permiso de la aplicación Teléfono."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver tus contactos, activa el permiso de la aplicación Contactos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para acceder al buzón de voz, activa el permiso de la aplicación Teléfono."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para poder buscar tus contactos, activa los permisos de contactos."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para hacer una llamada, activa el permiso de la aplicación Teléfono."</string>
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 d4e4faa..da043bf 100644
--- a/java/com/android/dialer/app/res/values-et/strings.xml
+++ b/java/com/android/dialer/app/res/values-et/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Lisa ootamine"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Seaded"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulaator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Loo uue kasutajaliid. otsetee"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Kõik kontaktid"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Kasuta puutetooniga klahvistikku"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Tagasi käimasolevale kõnele"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Lisa kõne"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Sissetulevad kõned"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Sisenemine hulgitoimingute režiimi"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Lahkumine hulgitoimingute režiimist"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> on valitud"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> on valimata"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Esita kõnepostisõnum"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Kuva kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Helista kasutajale <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Kõnepost"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"kõnepostisõnum"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"kõnepostisõnumid"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Jah"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ei"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Mitme toimigu režiimi tühistamine"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Kustuta"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Tühista"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Kas kustutada valitud kõnepostisõnumid <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> on valitud"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Kas kustutada need kõnepostisõnumid? "</b>"</item>
+      <item quantity="one">"<b>"Kas kustutada see kõnepostisõnum? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kell <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Laadimine SIM-kaardilt ..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM-kaardi kontaktid"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Kontaktide rakendus pole saadaval"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Häälotsing ei ole saadaval"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Helistada ei saa, sest telefonirakendus on keelatud."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Otsige kontakte"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> uus/uut vastamata kõne(t)"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Te pole veel kedagi kiirvalimisse lisanud"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Lisa lemmik"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Teil pole veel kontakte"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Lisa kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Puudutage kujutist kõigi numbrite nägemiseks või puudutage pikalt järjestuse muutmiseks"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eemalda"</string>
+    <string name="select_all" msgid="408601760696146245">"Vali kõik"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videokõne"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Saada sõnum"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Kõne üksikasjad"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokeeritud numbrid"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> on juba blokeeritud."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Helistamiskontod"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Lülita sisse"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Määra load"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Kiirvalimise lubamiseks lülitage sisse kontaktiluba."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Kõnelogi vaatamiseks lülitage sisse telefoniluba."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kontaktide vaatamiseks lülitage sisse kontaktiluba."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Kõnepostile juurdepääsemiseks lülitage sisse telefoniluba."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kontaktide otsimiseks lülitage sisse kontaktiload."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Helistamiseks lülitage sisse telefoniluba."</string>
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 95f4621..071c6f3 100644
--- a/java/com/android/dialer/app/res/values-eu/strings.xml
+++ b/java/com/android/dialer/app/res/values-eu/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Gehitu itxaronaldia"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ezarpenak"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulagailua"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Sortu interfazerako esteka"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Kontaktu guztiak"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Erabili ukipen-tonuak dituen teklatua"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Itzuli abian den deira"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Gehitu deia"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Sarrerako deiak"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Ekintzak multzoka gauzatzeko modua aktibatzen"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Ekintzak multzoka gauzatzeko modua desaktibatu da"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> hautatu da"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> desautatu da"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Erreproduzitu erantzungailuko ahots-mezuak"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ikusi <xliff:g id="NAME">%1$s</xliff:g> kontaktua"</string>
     <string name="description_call" msgid="1532402285334775372">"Deitu <xliff:g id="NAME">%1$s</xliff:g> erabiltzaileari"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Erantzungailua"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ahots-mezua"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ahots-mezuak"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Bai"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ez"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Utzi bertan behera ekintzak multzoka gauzatzeko modua"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Ezabatu"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Utzi"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Hautatutako <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ezabatu?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> hautatu dira"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Ahots-mezu hauek ezabatu nahi dituzu? "</b>"</item>
+      <item quantity="one">"<b>"Ahots-mezu hau ezabatu nahi duzu? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> (<xliff:g id="TIME">%2$s</xliff:g>)"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM txarteletik kargatzen…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM txarteleko kontaktuak"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ez dago kontaktuen aplikaziorik erabilgarri"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Ahozko bilaketa ez dago erabilgarri"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Ezin da telefono-deirik egin Telefonoa aplikazioa desgaitu egin delako."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Bilatu kontaktuetan"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> dei galdu berri"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Ez duzu inor markatze bizkorrean oraindik"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Gehitu gogokoak"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Ez duzu kontakturik oraindik"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Gehitu kontaktua"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Ukitu irudia zenbaki guztiak ikusteko, edo eduki ezazu sakatuta berrantolatzeko"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Kendu"</string>
+    <string name="select_all" msgid="408601760696146245">"Hautatu guztiak"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Bideo-deia"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Bidali mezua"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Deiaren xehetasunak"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokeatutako zenbakiak"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> blokeatuta dago dagoeneko."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Deiak egiteko kontuak"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktibatu"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Ezarri baimenak"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Markatze bizkorra gaitzeko, aktibatu Kontaktuak erabiltzeko baimena."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Deien erregistroa ikusteko, aktibatu Telefonoa erabiltzeko baimena."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kontaktuak ikusteko, aktibatu Kontaktuak erabiltzeko baimena."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Erantzungailuan sartzeko, aktibatu Telefonoa erabiltzeko baimena."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kontaktuak bilatzeko, aktibatu kontaktuak atzitzeko baimenak."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Deiak egiteko, aktibatu Telefonoa erabiltzeko baimena."</string>
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 9c8c01b..6c58874 100644
--- a/java/com/android/dialer/app/res/values-fa/strings.xml
+++ b/java/com/android/dialer/app/res/values-fa/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"افزودن انتظار"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"تنظیمات"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"شبیه‌ساز"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"ایجاد میان‌بر رابط کاربری جدید"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"همه مخاطبین"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"استفاده از صفحه‌کلید لمسی"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"برگشت به تماس درحال انجام"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"افزودن تماس"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"تماس‌های ورودی"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"درحال ورود به حالت اقدام انبوه"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"خروج از حالت اقدام انبوه"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> انتخاب شد"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> از حالت انتخاب خارج شد"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"پخش پست صوتی"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"مشاهده مخاطب <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"تماس با <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"پست صوتی"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ثانیه"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> دقیقه <xliff:g id="SECONDS">%s</xliff:g> ثانیه"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"پست صوتی"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"پست‌های صوتی"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"بله"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"نه"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"لغو حالت اقدام‌ دسته‌ای"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"حذف"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"لغو"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> انتخاب‌شده حذف شود؟"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> مورد انتخاب شد"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"این پست‌های صوتی حذف شوند؟ "</b>"</item>
+      <item quantity="other">"<b>"این پست‌های صوتی حذف شوند؟ "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ساعت <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"در حال بارگیری سیم کارت..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"مخاطبین سیم کارت"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"هیچ برنامه مخاطبی در دسترس نیست"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"جستجوی گفتاری در دسترس نیست"</string>
     <string name="call_not_available" msgid="7850148370757361155">"برقراری تماس تلفنی ممکن نیست، زیرا برنامه تلفن غیرفعال شده است."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"جستجوی مخاطبین"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> تماس‌ بی‌پاسخ جدید"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"هنوز کسی در فهرست شماره‌گیری سریع شما نیست"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"افزودن مورد دلخواه"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"هنوز هیچ مخاطبی ندارید"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"افزودن مخاطب"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"برای مشاهده همه شماره‌ها، تصویر را لمس کنید، یا برای ترتیب مجدد، لمس کنید و نگه‌دارید"</string>
     <string name="remove_contact" msgid="2353580570488923668">"حذف"</string>
+    <string name="select_all" msgid="408601760696146245">"انتخاب همه"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"تماس ویدئویی"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ارسال پیام"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"جزئیات تماس"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"شماره‌های مسدود‌شده"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> درحال‌حاضر مسدود شده است."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"حساب‌های تماس"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"روشن کردن"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"تنظیم مجوزها"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"برای فعال کردن شماره‌گیری سریع، مجوز «مخاطبین» را روشن کنید."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"برای دیدن گزارش تماستان، مجوز «تلفن» را روشن کنید."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"برای دیدن مخاطبینتان، مجوز «مخاطبین» را روشن کنید."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"برای دسترسی به پست صوتی‌تان، مجوز «تلفن» را روشن کنید."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"برای جستجوی مخاطبینتان، مجوزهای مخاطبین را روشن کنید."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"برای برقراری تماس، مجوز «تلفن» را روشن کنید."</string>
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 c5a103d..55865d4 100644
--- a/java/com/android/dialer/app/res/values-fi/strings.xml
+++ b/java/com/android/dialer/app/res/values-fi/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Lisää tauko"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Asetukset"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulaattori"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Luo uusi UI-pikakuvake"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Kaikki yhteystiedot"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Käytä näppäimistöä"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Palaa käynnissä olevaan puheluun"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Lisää puhelu"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Saapuvat puhelut"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Siirrytään joukkotoimintotilaan."</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Poistuttiin joukkotoimintotilasta."</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> valittiin."</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ei ole enää valittuna."</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Toista vastaajaviesti"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Näytä yhteystieto <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Soita: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Vastaaja"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"vastaajaviesti"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"vastaajaviestit"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Kyllä"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ei"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Peruuta joukkotoimintotila."</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Poista"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Peruuta"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Poistetaanko <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> valittu"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Poistetaanko nämä vastaajaviestit? "</b>"</item>
+      <item quantity="one">"<b>"Poistetaanko tämä vastaajaviesti? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> klo <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>.<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Ladataan SIM-kortilta…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM-kortin yhteystiedot"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ei käytettävissä olevaa yhteystietosovellusta"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Puhehaku ei ole käytettävissä"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Puhelua ei voi soittaa, koska Puhelin-sovellus on poistettu käytöstä."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Hae yhteystiedoista"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> uutta vastaamatonta puhelua"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Pikavalinnassa ei ole vielä yhtään yhteystietoa."</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Lisää suosikki"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Sinulla ei ole yhteystietoja."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Lisää yhteystieto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Katso kaikki numerot koskettamalla kuvaa tai järjestele tietoja koskettamalla kuvaa pitkään."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Poista"</string>
+    <string name="select_all" msgid="408601760696146245">"Valitse kaikki"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videopuhelu"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Lähetä viesti"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Puhelun tiedot"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Estetyt numerot"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> on jo estetty."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Puhelutilit"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ota käyttöön"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Määritä käyttöoikeudet"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Jos haluat käyttää pikavalintaa, ota Yhteystiedot-käyttöoikeus käyttöön."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Jos haluat katsella puhelulokiasi, ota Puhelin-käyttöoikeus käyttöön."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Jos haluat katsella yhteystietojasi, ota Yhteystiedot-käyttöoikeus käyttöön."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Jos haluat käyttää puhelinvastaajaa, ota Puhelin-käyttöoikeus käyttöön."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Jos haluat hakea kontaktejasi, ota käyttöön kontaktien käyttöoikeudet."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Jos haluat soittaa puheluja, ota Puhelin-käyttöoikeus käyttöön."</string>
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 d557d74..f10b121 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
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Ajouter Attendre"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Paramètres"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulateur"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Créer un raccourci vers l\'IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tous les contacts"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Utiliser le clavier DTMF"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Reprendre l\'appel en cours"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Autre appel"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Appels entrants"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrée du mode d\'action groupée en cours…"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Mode d\'action groupée quitté"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Sélection : <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Désélection : <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Écouter le message vocal"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Afficher le contact <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Appeler <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Messagerie vocale"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min et <xliff:g id="SECONDS">%s</xliff:g> sec"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"message vocal"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"messages vocaux"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Oui"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Non"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Annuler le mode d\'action par lots"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Supprimer"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Annuler"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Supprimer la sélection (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> sélection(s)"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Supprimer ce message vocal? "</b>"</item>
+      <item quantity="other">"<b>"Supprimer ces messages vocaux? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> à <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Chargement depuis la carte SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contacts de carte SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Aucune application de gestion des contacts n\'est disponible"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Recherche vocale non disponible"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Impossible d\'effectuer un appel téléphonique, car l\'application Téléphone a été désactivée."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Rechercher des contacts"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nouveaux appels manqués"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Aucun contact ne figure dans vos numéros de composition abrégée"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Ajouter un favori"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Vous n\'avez pas encore de contacts"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Ajouter un contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Touchez l\'image pour afficher tous les numéros, ou maintenez le doigt dessus pour les réorganiser"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Supprimer"</string>
+    <string name="select_all" msgid="408601760696146245">"Tout sélectionner"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Appel vidéo"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Envoyer un message"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Détails de l\'appel"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Numéros bloqués"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Le numéro <xliff:g id="NUMBER">%1$s</xliff:g> est déjà bloqué."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Comptes d\'appel"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activer"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Définir les autorisations"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Pour activer la composition abrégée, activez l\'autorisation Contacts."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Pour consulter votre journal d\'appels, activez l\'autorisation Téléphone."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Pour consulter vos contacts, activez l\'autorisation Contacts."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Pour accéder à votre messagerie vocale, activez l\'autorisation Téléphone."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Pour rechercher vos contacts et les lieux à proximité, activez les autorisations Contacts."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Pour faire un appel, activez l\'autorisation Téléphone."</string>
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 d8a5939..2ce930a 100644
--- a/java/com/android/dialer/app/res/values-fr/strings.xml
+++ b/java/com/android/dialer/app/res/values-fr/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Ajouter une attente"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Paramètres"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulateur"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Créer un raccourci vers la nouvelle interface"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tous les contacts"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Utiliser le clavier DTMF"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Reprendre l\'appel en cours"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Autre appel"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Appels entrants"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Activation du mode d\'action groupée"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Désactivation du mode d\'action groupée"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> sélectionné"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> désélectionné"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Écouter le message vocal"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Afficher le contact <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Appeler <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Messagerie vocale"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> secondes"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min et <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"message vocal"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"messages vocaux"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Oui"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Non"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Annuler le mode d\'actions groupées"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Supprimer"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Annuler"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Supprimer les messages vocaux sélectionnés (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>) ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> sélectionnés"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Supprimer ce message vocal ? "</b>"</item>
+      <item quantity="other">"<b>"Supprimer ces message vocaux ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> à <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Chargement depuis la carte SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contacts de carte SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Aucune application de gestion des contacts n\'est disponible."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Recherche vocale non disponible"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Impossible d\'effectuer un appel téléphonique, car l\'application Téléphone a été désactivée."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Rech. des contacts"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Nouveaux appels manqués : <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Aucun contact pour la numérotation abrégée"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Ajouter un favori"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Vous n\'avez pas encore de contacts."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Ajouter un contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Appuyer sur l\'image pour afficher tous les numéros, ou appuyer dessus de manière prolongée pour réorganiser ces derniers"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Supprimer"</string>
+    <string name="select_all" msgid="408601760696146245">"Tout sélectionner"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Appel vidéo"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Envoyer un message"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Informations sur l\'appel"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Numéros bloqués"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Le numéro \"<xliff:g id="NUMBER">%1$s</xliff:g>\" est déjà bloqué."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Comptes téléphoniques"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activer"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Définir les autorisations"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Pour activer la numérotation abrégée, activez l\'autorisation Contacts."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Pour consulter votre journal d\'appels, activez l\'autorisation Téléphone."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Pour consulter vos contacts, activez l\'autorisation Contacts."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Pour accéder à votre messagerie vocale, activez l\'autorisation Téléphone."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Pour rechercher vos contacts, activez l\'autorisation Contacts."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Pour passer un appel, activez l\'autorisation Téléphone."</string>
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 33b55a7..b9e5407 100644
--- a/java/com/android/dialer/app/res/values-gl/strings.xml
+++ b/java/com/android/dialer/app/res/values-gl/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Engadir espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Configuración"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Crear atallo para a nova IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos os contactos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usar teclado de tons táctiles"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Volver á chamada en curso"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Engadir chamada"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Chamadas entrantes"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrando no modo de acción masiva"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Saíu do modo de acción masiva"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Seleccionouse: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Anulouse a selección de: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproducir correo de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ver contacto <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Chamar a <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Correo de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"correo de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"correos de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Si"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Non"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancela o modo de accións en lote"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Eliminar"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Queres eliminar a selección (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Cantidade seleccionada: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Queres eliminar estes correos de voz? "</b>"</item>
+      <item quantity="one">"<b>"Queres eliminar este correo de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ás <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Cargando da tarxeta SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contactos da tarxeta SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Non hai aplicacións de contactos dispoñibles"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Busca por voz non dispoñible"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Non se pode facer unha chamada telefónica porque se desactivou a aplicación de teléfono."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Buscar contactos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> chamadas perdidas novas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Aínda non tes ningún contacto na marcación directa"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Engade un favorito para a marcación directa"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Aínda non tes contactos"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Engade un contacto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toca a imaxe para ver todos os números ou mantena premida para reordenalos"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eliminar"</string>
+    <string name="select_all" msgid="408601760696146245">"Seleccionar todos"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videochamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar unha mensaxe"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalles da chamada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"O <xliff:g id="NUMBER">%1$s</xliff:g> xa está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Contas de chamadas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Establecer permisos"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para activar a marcación rápida, activa o permiso de Contactos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver o teu rexistro de chamadas, activa o permiso de Teléfono."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver os teus contactos, activa o permiso de Contactos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para acceder ao correo de voz, activa o permiso de Teléfono."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para buscar os teus contactos, activa os permisos de Contactos."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para facer unha chamada, activa o permiso de Teléfono."</string>
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 1df1826..ca8749a 100644
--- a/java/com/android/dialer/app/res/values-gu/strings.xml
+++ b/java/com/android/dialer/app/res/values-gu/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"પ્રતીક્ષા ઉમેરો"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"સેટિંગ્સ"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"સિમ્યુલેટર"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"નવું UI શૉર્ટકટ્સ બનાવો"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"તમામ સંપર્કો"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ટચ ટોન કીપેડનો ઉપયોગ કરો"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"કૉલ પર પાછા આવવું પ્રગતિ પર છે"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"કૉલ ઉમેરો"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ઇનકમિંગ કૉલ્સ"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"બલ્ક ક્રિયા મોડમાં દાખલ થઈ રહ્યાં છે"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"બલ્ક ક્રિયા મોડ છોડી દીધો"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> પસંદ કર્યો"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> પસંદગીમાંથી દૂર કર્યો"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"વૉઇસમેઇલ ચલાવો"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> સંપર્ક જુઓ"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ને કૉલ કરો"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"વૉઇસમેઇલ"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> સેકંડ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> મિ <xliff:g id="SECONDS">%s</xliff:g> સે"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"વૉઇસમેઇલ"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"વૉઇસમેઇલ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"હા"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"નહીં"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"બૅચ ક્રિયા મોડ રદ કરો"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"કાઢી નાખો"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"રદ કરો"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"પસંદ કરેલ <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>ને કાઢી નાખીએ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> પસંદ કરી"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"આ વૉઇસમેઇલ કાઢી નાખીએ? "</b>"</item>
+      <item quantity="other">"<b>"આ વૉઇસમેઇલ કાઢી નાખીએ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> નાં રોજ <xliff:g id="TIME">%2$s</xliff:g> વાગ્યે"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM કાર્ડમાંથી લોડ કરી રહ્યું છે…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM કાર્ડ સંપર્કો"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"કોઈ સંપર્કો ઍપ્લિકેશન ઉપલબ્ધ નથી"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"વૉઇસ શોધ ઉપલબ્ધ નથી"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ફોન કૉલ કરી શકાતો નથી કારણ કે ફોન ઍપ્લિકેશન અક્ષમ કરવામાં આવી છે."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"સંપર્કો શોધો"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> નવા છૂટેલા કૉલ્સ"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"તમારા ઝડપી ડાયલ પર હજી સુધી કોઇ નથી"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"એક મનપસંદ ઉમેરો"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"તમે હજી સુધી કોઇપણ સંપર્કો ધરાવતાં નથી"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"સંપર્ક ઉમેરો"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"બધા નંબર્સ જોવા માટે છબી ટચ કરો અથવા પુનઃક્રમાંકિત કરવા માટે ટચ કરો અને પકડી રાખો"</string>
     <string name="remove_contact" msgid="2353580570488923668">"દૂર કરો"</string>
+    <string name="select_all" msgid="408601760696146245">"તમામ પસંદ કરો"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"વિડિઓ કૉલ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"એક સંદેશ મોકલો"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"કૉલની વિગતો"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"અવરોધિત નંબરો"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ને પહેલેથી અવરોધિત કરવામાં આવ્યો છે."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"કૉલિંગ એકાઉન્ટ્સ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ચાલુ કરો"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"પરવાનગીઓ સેટ કરો"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ઝડપી ડાયલ સક્ષમ કરવા માટે, સંપર્કોની પરવાનગી ચાલુ કરો."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"તમારો કૉલ લૉગ જોવા માટે, ફોન પરવાનગી ચાલુ કરો."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"તમારા સંપર્કો જોવા માટે, સંપર્કોની પરવાનગી ચાલુ કરો."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"તમારી વૉઇસમેઇલને ઍક્સેસ કરવા માટે, ફોન પરવાનગી ચાલુ કરો."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"તમારા સંપર્કો શોધવા માટે, સંપર્કોની પરવાનગીઓ ચાલુ કરો."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"કૉલ કરવા માટે, ફોન પરવાનગી ચાલુ કરો."</string>
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 84d2d97..3bc9319 100644
--- a/java/com/android/dialer/app/res/values-hi/strings.xml
+++ b/java/com/android/dialer/app/res/values-hi/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"प्रतीक्षा का समय बढ़ाएं"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"सेटिंग"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"सिम्युलेटर"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"नया UI शॉर्टकट बनाएं"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"सभी संपर्क"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"टच टोन कीपैड का उपयोग करें"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"कॉल पर लौटना प्रगति पर है"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"कॉल जोड़ें"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"इनकमिंग कॉल"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"बल्क कार्रवाई मोड में प्रवेश कर रहे हैं"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"बल्क कार्रवाई मोड छोड़ा"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> को चुना गया"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> को नहीं चुना गया"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ध्‍वनिमेल चलाएं"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> संपर्क देखें"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> को कॉल करें"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"वॉयस मेल"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> सेकंड"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> मि. <xliff:g id="SECONDS">%s</xliff:g> से."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"वॉयसमेल"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"वॉयसमेल"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"हां"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"नहीं"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"बैच कार्रवाई मोड रद्द करें"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"हटाएं"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"रद्द करें"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"क्या चुने गए <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> हटाना चाहते हैं?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> चयनित"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"ये वॉइसमेल हटाएं? "</b>"</item>
+      <item quantity="other">"<b>"ये वॉइसमेल हटाएं? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> को <xliff:g id="TIME">%2$s</xliff:g> बजे"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"सिम कार्ड से लोड हो रहा है…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"सिम कार्ड के संपर्क"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"कोई भी संपर्क ऐप उपलब्‍ध नहीं है"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"बोलकर खोजना उपलब्‍ध नहीं है"</string>
     <string name="call_not_available" msgid="7850148370757361155">"फ़ोन कॉल नहीं किया जा सकता क्योंकि फ़ोन ऐप्लिकेशन अक्षम कर दिया गया है."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"संपर्क खोजें"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g>  छूटे हुए नए कॉल"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"आपके स्‍पीड डायल पर अभी तक कोई भी नहीं है"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"कोई पसंदीदा जोड़ें"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"आपके पास अभी कोई भी संपर्क नहीं है"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"कोई संपर्क जोड़ें"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"सभी नंबर देखने के लिए चित्र को स्‍पर्श करें या पुन: क्रमित करने के लिए स्‍पर्श करके रखें"</string>
     <string name="remove_contact" msgid="2353580570488923668">"निकालें"</string>
+    <string name="select_all" msgid="408601760696146245">"सभी चुनें"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"वीडियो कॉल"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"संदेश भेजें"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"कॉल विवरण"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"अवरोधित नंबर"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> पहले से अवरोधित है."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"कॉलिंग खाते"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"चालू करें"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"अनुमतियां सेट करें"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"स्पीड डायल सक्षम करने के लिए, संपर्क अनुमति चालू करें."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"अपना कॉल लॉग देखने के लिए, फ़ोन अनुमति चालू करें."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"अपने संपर्क देखने के लिए, संपर्क अनुमति चालू करें."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"अपना वॉइसमेल ऐक्सेस करने के लिए, फ़ोन अनुमति चालू करें."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"अपने संपर्कों की खोज करने के लिए, संपर्क अनुमतियों को चालू करें."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"कॉल करने के लिए, फ़ोन अनुमति चालू करें."</string>
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 cd35353..0d21470 100644
--- a/java/com/android/dialer/app/res/values-hr/strings.xml
+++ b/java/com/android/dialer/app/res/values-hr/strings.xml
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Dodaj čekanje"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Postavke"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Izrada prečaca novog sučelja"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Svi kontakti"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Koristi dodirnu zvučnu tipkovnicu"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Natrag na poziv u tijeku"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Dodaj poziv"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Dolazni pozivi"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Ulazak u način skupne radnje"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Napuštanje načina skupne radnje"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Odabrano: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Poništen odabir: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reprodukcija govorne pošte"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Prikaz kontakta <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Nazovi <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Govorna pošta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"poruka govorne pošte"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"poruke govorne pošte"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Da"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Otkaži način skupnih radnji"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Izbriši"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Odustani"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Želite li izbrisati odabranu poruku/e govorne pošte <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Odabrano: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Želite li izbrisati ove poruke govorne pošte? "</b>"</item>
+      <item quantity="few">"<b>"Želite li izbrisati ove poruke govorne pošte? "</b>"</item>
+      <item quantity="other">"<b>"Želite li izbrisati ove poruke govorne pošte? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> u <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>.<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Učitavanje sa SIM kartice..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakti SIM kartice"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nije dostupna nijedna aplikacija za kontakte"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Glasovno pretraživanje nije dostupno"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefoniranje nije moguće jer je aplikacija Telefon onemogućena."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Pretraži kontakte"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Broj novih propuštenih poziva: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Još nemate nikog na brzom biranju"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Dodaj omiljeni kontakt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Još nemate nijedan kontakt"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Dodajte kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Dodirnite sliku da biste vidjeli sve brojeve ili dodirnite i zadržite da biste promijenili redoslijed"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Ukloni"</string>
+    <string name="select_all" msgid="408601760696146245">"Odaberi sve"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videopoziv"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Pošalji poruku"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Pojedinosti poziva"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokirani brojevi"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Broj <xliff:g id="NUMBER">%1$s</xliff:g> već je blokiran."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Pozivanje računa"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Uključi"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Postavi dopuštenja"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Da biste omogućili brzo biranje, uključite dopuštenje za kontakte."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Da biste vidjeli zapisnik poziva, uključite dopuštenje za telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Da biste vidjeli svoje kontakte, uključite dopuštenje za kontakte."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Da biste pristupili govornoj pošti, uključite dopuštenje za telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Da biste pretraživali kontakte, uključite dopuštenja za kontakte."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Da biste nazvali nekog, uključite dopuštenje za telefon."</string>
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 2e64d74..9a373e6 100644
--- a/java/com/android/dialer/app/res/values-hu/strings.xml
+++ b/java/com/android/dialer/app/res/values-hu/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Várakozás hozzáadása"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Beállítások"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Szimulátor"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Új felh. felület-parancsikon"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Összes névjegy"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Hangkódos telefonbillentyűzet használata"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Vissza a folyamatban lévő híváshoz"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Hívás hozzáadása"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Bejövő hívások"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Belépés tömeges műveleti módba"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Kilépett a tömeges műveleti módból"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Kijelölés: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Kijelölés megszüntetve: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Hangposta lejátszása"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> névjegyének megtekintése"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> hívása"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Hangposta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> másodperc"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> perc <xliff:g id="SECONDS">%s</xliff:g> másodperc"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"hangpostaüzenetet"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"hangpostaüzeneteket"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Igen"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nem"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Köteges művelet mód leállítva"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Törlés"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Mégse"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Törli a kiválasztott <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> kiválasztva"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Törli ezeket a hangpostaüzeneteket? "</b>"</item>
+      <item quantity="one">"<b>"Törli ezt a hangpostaüzenetet? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Betöltés a SIM kártyáról..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Névjegyek a SIM kártyán"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nincs elérhető névjegyek alkalmazás"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"A hangalapú keresés nem érhető el"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nem lehet telefonhívást kezdeményezni, mert a Telefon alkalmazást letiltották."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Keresés a névjegyek között"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> új nem fogadott hívás"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Még semelyik telefonszám sincs gyorshívón"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Kedvenc hozzáadása"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Még nem rendelkezik egyetlen névjeggyel sem"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Névjegy hozzáadása"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Koppintson a képre az összes szám megjelenítéséhez, vagy tartsa nyomva az átrendezéshez"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eltávolítás"</string>
+    <string name="select_all" msgid="408601760696146245">"Az összes kijelölése"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videohívás"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Üzenet küldése"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Hívás adatai"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Letiltott számok"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"A következő szám már le van tiltva: <xliff:g id="NUMBER">%1$s</xliff:g>."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Telefonos fiókok"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Engedélyezés"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Engedélyek beállítása"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Gyorshívás engedélyezéséhez kapcsolja be a Névjegyek engedélyt."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"A hívásnapló megtekintéséhez kapcsolja be a Telefon engedélyt."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"A névjegyek megtekintéséhez kapcsolja be a Névjegyek engedélyt."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"A hangposta eléréséhez kapcsolja be a Telefon engedélyt."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"A névjegyek kereséséhez adja meg a Névjegyek engedélyeket."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Hívásindításhoz kapcsolja be a Telefon engedélyt."</string>
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 6f3931c..2b2fbf6 100644
--- a/java/com/android/dialer/app/res/values-hy/strings.xml
+++ b/java/com/android/dialer/app/res/values-hy/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Ավելացնել սպասում"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Կարգավորումներ"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Նմանակիչ"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Ստեղծել միջերեսի նոր դյուրանցում"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Բոլոր կոնտակտները"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Օգտագործել հնչերանգներով ստեղնաշարը"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Վերադառնալ ընթացիկ զանգին"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Ավելացնել զանգ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Մուտքային զանգեր"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Դուք մտել եք զանգվածային գործողության ռեժիմ"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Դուք դուրս եկաք զանգվածային գործողությունների ռեժիմից"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Ընտրվեց՝ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Ապընտրվեց՝ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Նվագարկել ձայնային փոստը"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Դիտել <xliff:g id="NAME">%1$s</xliff:g> կոնտակտը"</string>
     <string name="description_call" msgid="1532402285334775372">"Զանգել <xliff:g id="NAME">%1$s</xliff:g>-ին"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Ձայնային փոստ"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> վրկ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> րոպե <xliff:g id="SECONDS">%s</xliff:g> վայրկյան"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ձայնային հաղորդագրություն"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ձայնային հաղորդագրություններ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Այո"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ոչ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Չեղարկել փաթեթային գործողությունների ռեժիմը"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Ջնջել"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Չեղարկել"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Ջնջե՞լ նշված <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>ը"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Ընտրվել է՝ <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Delete these voicemails? "</b>"</item>
+      <item quantity="other">"<b>"Ջնջե՞լ այս ձայնային հաղորդագրությունները "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>-ին, ժամը <xliff:g id="TIME">%2$s</xliff:g>-ին"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM քարտը բեռնվում է..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM քարտի կոնտակտները"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Կոնտակտների հավելված չկա"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Ձայնային որոնումը հասանելի չէ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Հնարավոր չէ զանգահարել, քանի որ Հեռախոս հավելվածն անջատված է:"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Կոնտակտների որոնում"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> նոր բաց թողնված զանգ"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Արագ համարահավաքման ցանկը դատարկ է"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Ավելացնել կոնտակտ"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Դեռ կոնտակտներ չունեք"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Ավելացնել կոնտակտ"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Բոլոր համարները տեսնելու համար հպեք պատկերին: Վերադասավորելու համար հպեք և պահեք:"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Հեռացնել"</string>
+    <string name="select_all" msgid="408601760696146245">"Ընտրել բոլորը"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Տեսազանգ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Ուղարկել հաղորդագրություն"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Զանգի մանրամասները"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Արգելափակված համարներ"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> համարն արդեն արգելափակված է:"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Հաշիվներ զանգերի համար"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Միացնել"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Թույլտվությունների սահմանում"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Արագ համարահավաքը թույլատրելու համար միացրեք Կոնտակտների թույլտվությունը:"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Ձեր զանգերի մատյանը տեսնելու համար միացրեք Հեռախոսի թույլտվությունը:"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Ձեր կոնտակտները տեսնելու համար միացրեք Կոնտակտների թույլտվությունը:"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Ձայնային փոստն օգտագործելու համար միացրեք Հեռախոսի թույլտվությունը:"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Կոնտակտները որոնելու համար միացրեք Կոնտակտների թույլտվությունները:"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Զանգ կատարելու համար միացրեք Հեռախոսի թույլտվությունը:"</string>
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 c0de9b3..e72fd63 100644
--- a/java/com/android/dialer/app/res/values-in/strings.xml
+++ b/java/com/android/dialer/app/res/values-in/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Tambahkan tunggu"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Setelan"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Buat Pintasan UI Baru"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Semua kontak"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Gunakan keypad nada sentuh"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Kembali ke panggilan sedang berlangsung"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Tambahkan panggilan"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Panggilan masuk"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Masuk ke mode tindakan massal"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Keluar dari mode tindakan massal"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> dipilih"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> tidak dipilih"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Putar pesan suara"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Lihat kontak <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Telepon <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Kotak Pesan"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> dtk"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> mnt <xliff:g id="SECONDS">%s</xliff:g> dtk"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"pesan suara"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"pesan suara"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ya"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Tidak"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Membatalkan mode tindakan kelompok"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Hapus"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Batal"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Hapus <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> yang dipilih?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> dipilih"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Hapus pesan suara ini? "</b>"</item>
+      <item quantity="one">"<b>"Hapus pesan suara ini? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> pukul <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>.<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Memuat dari kartu SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontak pada kartu SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Aplikasi kontak tidak tersedia"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Penelusuran suara tidak tersedia"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Tidak dapat melakukan panggilan telepon karena aplikasi Telepon telah dinonaktifkan."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Telusuri kontak"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> panggilan tidak terjawab baru"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Daftar panggilan cepat masih kosong"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Tambahkan favorit"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Anda belum memiliki kontak"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Tambahkan kontak"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Sentuh foto untuk melihat semua nomor atau sentuh &amp; tahan untuk menyusun ulang"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Hapus"</string>
+    <string name="select_all" msgid="408601760696146245">"Pilih semua"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Panggilan video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Kirim pesan"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detail panggilan"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Nomor yang diblokir"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> sudah diblokir."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Akun panggilan"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktifkan"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Setel izin"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Untuk mengaktifkan panggilan cepat, aktifkan izin Kontak."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Untuk melihat log panggilan, aktifkan izin Telepon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Untuk melihat kontak, aktifkan izin Kontak."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Untuk mengakses pesan suara, aktifkan izin Telepon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Untuk menelusuri kontak, aktifkan izin Kontak."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Untuk melakukan panggilan, aktifkan izin Telepon."</string>
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 fdd6356..bd329be 100644
--- a/java/com/android/dialer/app/res/values-is/strings.xml
+++ b/java/com/android/dialer/app/res/values-is/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Bæta töf við"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Stillingar"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Hermir"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Stofna flýtileið í nýtt viðmót"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Allir tengiliðir"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Nota snertitónatakkaborð"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Fara aftur í símtal í gangi"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Bæta við símtali"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Móttekin símtöl"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Opnar fjöldaaðgerðastillingu"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Fjöldaaðgerðastillingu lokað"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Valdi <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Fjarlægði val á <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Spila talhólfsskilaboð"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Skoða tengiliðinn <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Hringja í <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Talhólf"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> mín. og <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"talhólfsskilaboð"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"talhólfsskilaboð"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Já"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nei"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Hætta við runuaðgerðastillingu"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Eyða"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Hætta við"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Eyða völdum <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> valin"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Eyða þessum talhólfsskilaboðum? "</b>"</item>
+      <item quantity="other">"<b>"Eyða þessum talhólfsskilaboðum? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kl. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Hleður af SIM-kortinu…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Tengiliðir á SIM-korti"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ekkert tengiliðaforrit í boði"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Raddleit er ekki í boði"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Ekki er hægt að hringja vegna þess að forritið Sími hefur verið gert óvirkt."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Leita í tengiliðum"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ný ósvöruð símtöl"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Þú ert ekki með neinn í hraðvali enn sem komið er"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Bæta uppáhaldi við"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Þú ert ekki með neina tengiliði enn sem komið er"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Bæta tengilið við"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Snertu myndina til að sjá öll númer eða haltu henni inni til að endurraða"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Fjarlægja"</string>
+    <string name="select_all" msgid="408601760696146245">"Velja allt"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Myndsímtal"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Senda skilaboð"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Símtalsupplýsingar"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Númer á bannlista"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> er nú þegar á bannlista."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Símtalareikningar"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Kveikja"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Stilla heimildir"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Kveiktu á tengiliðaheimildinni til að gera hraðval virkt."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Kveiktu á heimild símaforritsins til að sjá símtalaskrána þína."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kveiktu á tengiliðaheimildinni til að sjá tengiliðina þína."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Kveiktu á heimild símaforritsins til að fá aðgang að talhólfinu þínu."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kveiktu á heimildunum fyrir tengiliði til að leita að tengiliðum."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Kveiktu á heimild símaforritsins til að hringja símtal."</string>
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 9bd8cd3..356f5a6 100644
--- a/java/com/android/dialer/app/res/values-it/strings.xml
+++ b/java/com/android/dialer/app/res/values-it/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Aggiungi attesa"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Impostazioni"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulatore"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Crea nuova scorciatoia UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tutti i contatti"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usa tastierino per selezione a toni"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Torna alla chiamata in corso"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Aggiungi chiamata"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Chiamate in arrivo"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Attivazione della modalità di azione collettiva"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Disttivazione della modalità di azione collettiva"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> selezionato"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> deselezionato"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Riproduci messaggio vocale"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Visualizza <xliff:g id="NAME">%1$s</xliff:g> contatto"</string>
     <string name="description_call" msgid="1532402285334775372">"Chiama <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Segreteria"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> secondi"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"messaggio vocale"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"messaggi vocali"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sì"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Annulla modalità di azione collettiva"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Elimina"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Annulla"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Eliminare i <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> selezionati?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selezionate"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Eliminare questi messaggi vocali? "</b>"</item>
+      <item quantity="one">"<b>"Eliminare questo messaggio vocale? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> alle ore <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Caricamento da SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contatti SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nessuna app di contatti disponibile"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Ricerca vocale non disponibile"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Impossibile effettuare una telefonata perché l\'applicazione Telefono è stata disattivata."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Cerca contatti"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nuove chiamate perse"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Nessun preferito disponibile nella Composizione rapida"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Aggiungi un preferito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Nessun contatto disponibile"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Aggiungi un contatto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tocca l\'immagine per visualizzare tutti i numeri oppure tieni premuto per cambiare l\'ordine"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Rimuovi"</string>
+    <string name="select_all" msgid="408601760696146245">"Seleziona tutto"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videochiamata"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Invia un messaggio"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Dettagli chiamata"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Numeri bloccati"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> è già bloccato."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Account di chiamata"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Attiva"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Imposta autorizzazioni"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Per attivare la composizione rapida, attiva l\'autorizzazione Contatti."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Per accedere al registro chiamate, attiva l\'autorizzazione sul telefono."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Per accedere ai tuoi contatti, attiva l\'autorizzazione Contatti."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Per accedere alla segreteria, attiva l\'autorizzazione sul telefono."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Per cercare nei tuoi contatti, attiva le autorizzazioni Contatti."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Per fare una chiamata, attiva l\'autorizzazione sul telefono."</string>
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 bb115e2..230555a 100644
--- a/java/com/android/dialer/app/res/values-iw/strings.xml
+++ b/java/com/android/dialer/app/res/values-iw/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"הוסף המתנה"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"הגדרות"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"סימולטור"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"יצירת קיצור דרך לממשק החדש"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"כל אנשי הקשר"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"השתמש במקלדת עם חיוג צלילים"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"חזור לשיחה פעילה"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"הוסף שיחה"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"שיחות נכנסות"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"עברת למצב של ביצוע פעולות בכמות גדולה"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"עזבת את המצב של ביצוע פעולות בכמות גדולה"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"בחרת את <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"ביטלת את הבחירה של <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"הפעל דואר קולי"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"הצג את איש הקשר <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"התקשר אל <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"דואר קולי"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> שניות"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> דק\' <xliff:g id="SECONDS">%s</xliff:g> שנ\'"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ההודעה הקולית"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ההודעות הקוליות"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"כן"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"לא"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ביטול המצב של ביצוע פעולות בכמות גדולה"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"מחיקה"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ביטול"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"האם למחוק את <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> שבחרת?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> נבחרו"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="two">"<b>"האם למחוק את ההודעות הקוליות האלה? "</b>"</item>
+      <item quantity="many">"<b>"האם למחוק את ההודעות הקוליות האלה? "</b>"</item>
+      <item quantity="other">"<b>"האם למחוק את ההודעות הקוליות האלה? "</b>"</item>
+      <item quantity="one">"<b>"האם למחוק את ההודעה הקולית הזו? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ב-<xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"‏טוען מכרטיס SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"‏אנשי קשר בכרטיס SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"אין אפליקציה זמינה עבור אנשי קשר"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"חיפוש קולי אינו זמין"</string>
     <string name="call_not_available" msgid="7850148370757361155">"לא ניתן לבצע שיחת טלפון מפני שאפליקציית הטלפון הושבתה."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"חפש אנשי קשר"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> שיחות חדשות שלא נענו"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"עדיין לא הוגדר חיוג מהיר לאף איש קשר"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"הוסף פריט מועדף"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"עדיין אין לך אנשי קשר"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"הוסף איש קשר"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"גע בתמונה כדי להציג את כל המספרים או גע והחזק כדי לשנות את הסדר"</string>
     <string name="remove_contact" msgid="2353580570488923668">"הסר"</string>
+    <string name="select_all" msgid="408601760696146245">"בחירת הכל"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"שיחת וידאו"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"שלח הודעה"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"פרטי שיחה"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"מספרים חסומים"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> כבר חסום."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"חשבונות לביצוע שיחות"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"הפעל"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"הגדר הרשאות"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"כדי להפעיל חיוג מהיר, הפעל את ההרשאה \'אנשי קשר\'."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"כדי לראות את יומן השיחות, הפעל את ההרשאה \'טלפון\'."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"כדי להציג את אנשי הקשר, הפעל את ההרשאה \'אנשי קשר\'."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"כדי לגשת לדואר הקולי, הפעל את ההרשאה \'טלפון\'."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"כדי לחפש באנשי הקשר, הפעל את ההרשאה \'אנשי קשר\'."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"כדי להתקשר, הפעל את ההרשאה \'טלפון\'."</string>
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 63b15cb..71fca83 100644
--- a/java/com/android/dialer/app/res/values-ja/strings.xml
+++ b/java/com/android/dialer/app/res/values-ja/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"待機を追加"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"設定"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"シミュレーション"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"新しいUIのショートカットを作成"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"すべての連絡先"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"プッシュホン式キーパッドを使う"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"通話に戻る"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"別の通話を追加"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"着信"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"一括操作モードを開始します"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"一括操作モードを終了しました"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> を選択しました"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> を選択解除しました"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ボイスメールを再生"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g>の連絡先を表示"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g>に発信"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ボイスメール"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g>秒"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g>分<xliff:g id="SECONDS">%s</xliff:g>秒"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ボイスメール"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ボイスメール"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"はい"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"いいえ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"一括操作モードをキャンセルします"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"削除"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"キャンセル"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"選択した<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>を削除しますか？"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> 件選択済み"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"これらのボイスメールを削除しますか？"</b>"</item>
+      <item quantity="one">"<b>"このボイスメールを削除しますか？"</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>、<xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g> 分 <xliff:g id="SECONDS">%2$02d</xliff:g> 秒"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIMカードから読み取り中..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIMカードの連絡先"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"連絡先アプリがありません"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"音声検索を利用できません"</string>
     <string name="call_not_available" msgid="7850148370757361155">"電話アプリが無効になっているため発信できません。"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"連絡先を検索"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g>件の不在着信"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"クイックアクセスに登録済みの連絡先はまだありません"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"お気に入りを追加"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"連絡先はまだありません"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"連絡先を追加"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"画像をタップするとすべての番号が表示され、押し続けると番号を並べ替えることができます"</string>
     <string name="remove_contact" msgid="2353580570488923668">"削除"</string>
+    <string name="select_all" msgid="408601760696146245">"すべて選択"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ビデオハングアウト"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"メッセージを送信"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"通話の詳細"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ブロックした番号"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g>は既にブロックしています。"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"通話アカウント"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ONにする"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"権限を設定"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"クイックアクセスを有効にするには、連絡先権限をONにしてください。"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"通話履歴を表示するには、電話権限をONにしてください。"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"連絡先を表示するには、連絡先権限をONにしてください。"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ボイスメールにアクセスするには、電話権限をONにしてください。"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"連絡先を検索するには、連絡先権限をONにしてください。"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"電話をかけるには、電話権限をONにしてください。"</string>
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 ae89505..fd9351f 100644
--- a/java/com/android/dialer/app/res/values-ka/strings.xml
+++ b/java/com/android/dialer/app/res/values-ka/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"ლოდინის დამატება"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"პარამეტრები"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"სიმულატორი"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"ახალი UI მალსახმობის შექმნა"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ყველა კონტაქტი"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ტონალური კლავიატურის გამოყენება"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"მიმდინარე ზარზე დაბრუნება"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ზარის დამატება"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"შემომავალი ზარები"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"მიმდინარეობს ერთიანი ქმედების რეჟიმში შესვლა"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ერთიანი ქმედების რეჟიმიდან გამოხვედით"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"არჩეულია <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>-ის არჩევა გაუქმდა"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ხმოვანი ფოსტის ჩართვა"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"კონტაქტის <xliff:g id="NAME">%1$s</xliff:g> ნახვა"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g>-თან დარეკვა"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ხმოვანი ფოსტა"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> წმ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> მინ <xliff:g id="SECONDS">%s</xliff:g> წამ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ხმოვანი ფოსტა"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ხმოვანი ფოსტა"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"დიახ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"არა"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ერთიანი ქმედების რეჟიმის გაუქმება"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"წაშლა"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"გაუქმება"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"გსურთ, წაშალოთ არჩეული <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"არჩეულია <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"გსურთ ამ ხმოვანი შეტყობინებების წაშლა? "</b>"</item>
+      <item quantity="one">"<b>"გსურთ ამ ხმოვანი შეტყობინების წაშლა? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"იტვირთება SIM ბარათიდან…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM ბარათის კონტაქტები"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"კონტაქტების აპლიკაცია არ არის ხელმისაწვდომი"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ხმოვანი ძიება არ არის ხელმისაწვდომი"</string>
     <string name="call_not_available" msgid="7850148370757361155">"სატელეფონო ზარის განხორციელება ვერ ხერხდება, ვინაიდან ტელეფონის აპლიკაცია გაუქმებულია."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"კონტაქტებში ძიება"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ახალი გაცდენილი ზარი"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"სწრაფი აკრეფისთვის რჩეულები ჯერ არ გყავთ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"რჩეული კონტაქტის დამატება"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"კონტაქტები ჯერ არ გაქვთ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"კონტაქტის დამატება"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ყველა ნომრის სანახავად შეეხეთ სურათს ან შეეხეთ და დააყოვნეთ მიმდევრობის შესაცვლელად"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ამოშლა"</string>
+    <string name="select_all" msgid="408601760696146245">"ყველას არჩევა"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ვიდეო ზარი"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"შეტყობინების გაგზავნა"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ზარის მონაცემები"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"დაბლოკილი ნომრები"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> უკვე დაბლოკილია."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ანგარიშების გამოძახება"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ჩართვა"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ნებართვების დაყენება"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"სწრაფი აკრეფის გასააქტიურებლად, ჩართეთ კონტაქტების ნებართვა."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ზარების ჟურნალის სანახავად, ჩართეთ ტელეფონის ნებართვა."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"კონტაქტების სანახავად, ჩართეთ კონტაქტების ნებართვა."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ხმოვან ფოსტაზე წვდომისთვის, ჩართეთ ტელეფონის ნებართვა."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"თქვენი კონტაქტების მოსაძებნად ჩართეთ კონტაქტების ნებართვები."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ზარის განსახორციელებლად, ჩართეთ ტელეფონის ნებართვა."</string>
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 ba42386..f1763a2 100644
--- a/java/com/android/dialer/app/res/values-kk/strings.xml
+++ b/java/com/android/dialer/app/res/values-kk/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Күтуді қосу"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Параметрлер"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулятор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Жаңа пайдаланушы интерфейсінің пернелер тіркесімін жасау"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Барлық контактілер"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Сенсорлы әуенді пернетақта"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Қосылып тұрған қоңырауға оралу"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Қоңырау қосу"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Келген қоңыраулар"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Жаппай әрекет режиміне өту"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Жаппай әрекет режиімінен шығу"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> таңдалды"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> таңдауы алынды"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Дауыс-хабарды ойнату"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> контактісін көру"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> нөміріне қоңырау шалу"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Дауыстық пошта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мин <xliff:g id="SECONDS">%s</xliff:g> сек"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"дауыстық хабар"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"дауыстық хабарлар"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Иә"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Жоқ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Топтама әрекеттер режимін жабу"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Жою"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Жабу"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Таңдалған <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> хабарларын жою қажет пе?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> таңдалды"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Осы дауыстық хабарларды жою қажет пе? "</b>"</item>
+      <item quantity="one">"<b>"Осы дауыстық хабарды жою қажет пе? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID (ұялы жабдық анықтағыш)"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM картасынан жүктеу…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM картасының контактілері"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Контактілер қолданбасы қол жетімді емес"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Дауыс арқылы іздеу қол жетімді емес"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Телефон қоңырауын шалу мүмкін емес, өйткені «Телефон» қолданбасы өшірілген."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Контактілерді іздеу"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> жаңа қабылданбаған қоңыраулар"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Жылдам теруде әлі ешкім жоқ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Таңдаулыны қосу"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Әлі ешқандай контактілер жоқ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Контакт қосу"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Барлық нөмірлерді көру үшін кескінді түртіңіз, ал ретін өзгерту үшін түртіп, ұстап тұрыңыз"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Алып тастау"</string>
+    <string name="select_all" msgid="408601760696146245">"Барлығын таңдау"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Бейне қоңырау"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Хабар жіберу"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Қоңырау мәліметтері"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Бөгелген нөмірлер"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> бөгеліп қойылған."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Қоңырау шалу есептік жазбалары"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Қосу"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Рұқсаттар орнату"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Жылдам теруді қосу үшін \"Контактілер\" рұқсатын қосыңыз."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Қоңыраулар журналы көру үшін \"Телефон\" рұқсатын қосыңыз."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Контактілерді көру үшін \"Контактілер\" рұқсатын қосыңыз."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Дауыс поштасына қатынасу үшін \"Телефон\" рұқсатын қосыңыз."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Контактілерді іздеу үшін \"Контактілер\" рұқсаттарын қосыңыз."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Қоңырауды шалу үшін \"Телефон\" рұқсатын қосыңыз."</string>
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 bdc91cf..54f1a12 100644
--- a/java/com/android/dialer/app/res/values-km/strings.xml
+++ b/java/com/android/dialer/app/res/values-km/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"បញ្ចូល​ការ​រង់ចាំ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ការកំណត់"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"កម្មវិធីធ្វើ​ដូច​មែនទែន"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"បង្កើត​ផ្លូវកាត់ UI ថ្មី"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ទំនាក់ទំនង​ទាំងអស់"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ប្រើ​សំឡេង​ប៉ះ​បន្ទះ​លេខ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"កំពុង​ត្រឡប់​ទៅកាន់​ការ​ហៅ"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"បន្ថែម​ការ​ហៅ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ការ​ហៅ​ចូល"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ចូល​មុខងារ​សកម្មភាព​ច្រើន"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"បាន​ចាកចេញ​ពី​មុខងារ​សកម្មភាព​ច្រើន"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"បាន​ជ្រើសរើស <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"បាន​ដក​ការជ្រើសរើស <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ចាក់​សារ​ជា​សំឡេង"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"មើល​ទំ​នាក់ទំនង <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"ហៅ <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"សារ​ជា​សំឡេង"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> វិនាទី"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> នាទី <xliff:g id="SECONDS">%s</xliff:g> វិនាទី"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"សារ​ជា​សំឡេង"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"សារ​ជា​សំឡេង"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"បាទ/ចាស"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ទេ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"បោះបង់​មុខងារ​សកម្មភាព​ជា​ក្រុម"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"លុប"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"បោះបង់"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"លុប <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ដែល​បាន​ជ្រើសរើស?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"បាន​ជ្រើសរើស <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"លុប​សារ​ជា​សំឡេង​ទាំងនេះ? "</b>"</item>
+      <item quantity="one">"<b>"លុប​សារ​ជា​សំឡេង​នេះ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> នៅម៉ោង <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"កំពុង​ផ្ទុក​ពី​ស៊ីម​កាត..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"ទំនាក់ទំនង​នៅ​ក្នុង​ស៊ីម​កាត"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"មិនមានកម្មវិធីទំនាក់ទំនងទេ"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ការស្វែងរកជាសម្លេងមិនមានទេ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"មិន​អាច​ហៅ​បាន​ទេ​ ព្រោះ​កម្មវិធី​ទូរស័ព្ទ​ត្រូវ​បាន​បិទ។"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"រក​ទំនាក់ទំនង"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"ខកខាន​ទទួល​ថ្មី <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"គ្មាននរណាម្នាក់នៅក្នុងការហៅរហ័សរបស់អ្នកនៅឡើយទេ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"បញ្ចូលសំណព្វ"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"អ្នកមិនទាន់មានទំនាក់ទំនងនៅឡើយទេ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"បន្ថែមទំនាក់ទំនង"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ប៉ះរូបភាពដើម្បីមើលលេខទាំងអស់ ឬប៉ះ &amp; សង្កត់ឲ្យជាប់ដើម្បីតម្រៀបឡើងវិញ"</string>
     <string name="remove_contact" msgid="2353580570488923668">"លុបចេញ"</string>
+    <string name="select_all" msgid="408601760696146245">"ជ្រើសរើស​​ទាំងអស់"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ហៅជាវីដេអូ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ផ្ញើសារ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ព័ត៌មានលម្អិតអំពីការហៅ"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"លេខបានរារាំង"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ត្រូវបានទប់ស្កាត់រួចហើយ"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"គណនីហៅទូរសព្ទ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"បើក"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"កំណត់សិទ្ធិអនុញ្ញាត"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ដើម្បីបើកដំណើរការហៅរហ័ស សូមបើកសិទ្ធិអនុញ្ញាតកម្មវិធីទំនាក់ទំនង។"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ដើម្បីមើលកំណត់ហេតុហៅទូរស័ព្ទរបស់អ្នក សូមបើកសិទ្ធិអនុញ្ញាតកម្មវិធីហៅទូរស័ព្ទ។"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"ដើម្បីមើលទំនាក់ទំនងរបស់អ្នក សូមបើកសិទ្ធិអនុញ្ញាតកម្មវិធីទំនាក់ទំនង។"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ដើម្បីចូលដំណើរការសារជាសំឡេងរបស់អ្នក សូមបើកសិទ្ធិអនុញ្ញាតកម្មវិធីហៅទូរស័ព្ទ។"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"ដើម្បីស្វែងរកទំនាក់ទំនងរបស់អ្នក សូមបើកសិទ្ធិអនុញ្ញាតទំនាក់ទំនង។"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ដើម្បីធ្វើការហៅទូរស័ព្ទ សូមបើកសិទ្ធិអនុញ្ញាតកម្មវិធីហៅទូរស័ព្ទ។"</string>
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 dae544d..d7f3aab 100644
--- a/java/com/android/dialer/app/res/values-kn/strings.xml
+++ b/java/com/android/dialer/app/res/values-kn/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"ನಿರೀಕ್ಷೆಯನ್ನು ಸೇರಿಸಿ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"ಸಿಮ್ಯುಲೇಟರ್"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"ಹೊಸ UI ಶಾರ್ಟ್‌ಕಟ್ ರಚಿಸಿ"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ಎಲ್ಲಾ ಸಂಪರ್ಕಗಳು"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ಸ್ಪರ್ಶ ಟೋನ್ ಕೀಪ್ಯಾಡ್ ಬಳಸಿ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"ಪ್ರತ್ಯತ್ತರ ಕರೆಯು ಪ್ರಗತಿಯಲ್ಲಿದೆ"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ಕರೆಯನ್ನು ಸೇರಿಸಿ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ಒಳಬರುವ ಕರೆಗಳು"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ದೊಡ್ಡ ಪ್ರಮಾಣದ ಕ್ರಿಯೆಯ ಮೋಡ್‌ಗೆ ಪ್ರವೇಶಿಸಲಾಗುತ್ತಿದೆ"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ದೊಡ್ಡ ಪ್ರಮಾಣದ ಕ್ರಿಯೆಯ ಮೋಡ್ ತೊರೆಯಲಾಗಿದೆ"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ಆಯ್ಕೆಮಾಡಲಾಗಿದೆ"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ಆಯ್ಕೆಯನ್ನು ರದ್ದುಮಾಡಲಾಗಿದೆ"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ಧ್ವನಿಮೇಲ್‌ ಪ್ಲೇ ಮಾಡಿ"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> ಸಂಪರ್ಕ ವೀಕ್ಷಿಸಿ"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ಕರೆ ಮಾಡಿ"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ಧ್ವನಿಮೇಲ್"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ಸೆಕೆಂ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> ನಿಮಿ <xliff:g id="SECONDS">%s</xliff:g> ಸೆಕೆಂ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ಧ್ವನಿಮೇಲ್"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ಧ್ವನಿಮೇಲ್‌ಗಳು"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ಹೌದು"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ಇಲ್ಲ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ಬ್ಯಾಚ್ ಕ್ರಿಯೆಗಳ ಮೋಡ್ ಅನ್ನು ರದ್ದುಮಾಡಿ"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ಅಳಿಸಿ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ರದ್ದುಮಾಡಿ"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ಆಯ್ಕೆ ಮಾಡಲಾದ <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ಅನ್ನು ಅಳಿಸುವುದೇ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ಆಯ್ಕೆಮಾಡಲಾಗಿದೆ"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"ಈ ಧ್ವನಿಮೇಲ್‌ಗಳನ್ನು ಅಳಿಸುವುದೇ? "</b>"</item>
+      <item quantity="other">"<b>"ಈ ಧ್ವನಿಮೇಲ್‌ಗಳನ್ನು ಅಳಿಸುವುದೇ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ರಂದು <xliff:g id="TIME">%2$s</xliff:g> ಗಂಟೆಗೆ"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"ಸಿಮ್‌ ಕಾರ್ಡ್‌ನಿಂದ ಲೋಡ್‌ ಮಾಡಲಾಗುತ್ತಿದೆ…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"ಸಿಮ್‌ ಕಾರ್ಡ್‌ ಸಂಪರ್ಕಗಳು"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"ಯಾವುದೇ ಸಂಪರ್ಕಗಳ ಅಪ್ಲಿಕೇಶನ್‌ ಲಭ್ಯವಿಲ್ಲ"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ಧ್ವನಿ ಹುಡುಕಾಟ ಲಭ್ಯವಿಲ್ಲ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ಫೋನ್ ಅಪ್ಲಿಕೇಶನ್ ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗಿರುವುದರಿಂದ ಫೋನ್ ಕರೆ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"ಸಂಪರ್ಕಗಳನ್ನು ಹುಡುಕಿ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ಹೊಸ ಮಿಸ್ಡ್‌ ಕರೆಗಳು"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ನಿಮ್ಮ ತ್ವರಿತ ಡಯಲ್‌ನಲ್ಲಿ ಇದುವರೆಗೆ ಯಾರೂ ಇಲ್ಲ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ಮೆಚ್ಚಿನದನ್ನು ಸೇರಿಸಿ"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ನೀವು ಇನ್ನೂ ಯಾವುದೇ ಸಂಪರ್ಕಗಳನ್ನು ಹೊಂದಿಲ್ಲ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ಸಂಪರ್ಕ ಸೇರಿಸಿ"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ಎಲ್ಲಾ ಸಂಖ್ಯೆಗಳನ್ನು ನೋಡಲು ಚಿತ್ರವನ್ನು ಸ್ಪರ್ಶಿಸಿ ಅಥವಾ ಮರುಕ್ರಮಗೊಳಿಸಲು ಸ್ಪರ್ಶಿಸಿ ಮತ್ತು ಹೋಲ್ಡ್‌‌ ಮಾಡಿ"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ತೆಗೆದುಹಾಕು"</string>
+    <string name="select_all" msgid="408601760696146245">"ಎಲ್ಲವನ್ನೂ ಆಯ್ಕೆ ಮಾಡಿ"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ವೀಡಿಯೊ ಕರೆ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ಸಂದೇಶ ಕಳುಹಿಸಿ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ಕರೆಯ ವಿವರಗಳು"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ನಿರ್ಬಂಧಿಸಲಾದ ಸಂಖ್ಯೆಗಳು"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ಈಗಾಗಲೇ ನಿರ್ಬಂಧಿಸಲಾಗಿದೆ."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ಕರೆ ಮಾಡುವ ಖಾತೆಗಳು"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ಆನ್‌ ಮಾಡಿ"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ಅನುಮತಿಗಳನ್ನು ಹೊಂದಿಸು"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ವೇಗ ಡಯಲ್ ಸಕ್ರಿಯಗೊಳಿಸಲು, ಸಂಪರ್ಕಗಳ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ನಿಮ್ಮ ಕರೆಯ ಲಾಗ್ ಅನ್ನು ವೀಕ್ಷಿಸಲು, ಫೋನ್ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"ನಿಮ್ಮ ಸಂಪರ್ಕಗಳನ್ನು ವೀಕ್ಷಿಸಲು, ಸಂಪರ್ಕಗಳ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ನಿಮ್ಮ ಧ್ವನಿಮೇಲ್ ಪ್ರವೇಶಿಸಲು, ಫೋನ್ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"ನಿಮ್ಮ ಸಂಪರ್ಕಗಳನ್ನು ಹುಡುಕಲು, ಸಂಪರ್ಕಗಳ ಅನುಮತಿಗಳನ್ನು ಆನ್ ಮಾಡಿ."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ಕರೆ ಮಾಡಲು, ಫೋನ್ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
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 1850b6c..cb2e83c 100644
--- a/java/com/android/dialer/app/res/values-ko/strings.xml
+++ b/java/com/android/dialer/app/res/values-ko/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"대기 시간 추가"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"설정"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"시뮬레이터"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"새 UI 바로가기 만들기"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"모든 연락처"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"터치톤 키패드 사용"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"진행 중인 통화로 돌아가기"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"통화 추가"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"수신전화"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"일괄 작업 모드 시작 중"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"일괄 작업 모드 종료됨"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> 선택됨"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> 선택 취소됨"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"음성사서함 재생"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g>님의 연락처 보기"</string>
     <string name="description_call" msgid="1532402285334775372">"전화걸기: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"음성사서함"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g>초"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g>분 <xliff:g id="SECONDS">%s</xliff:g>초"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"음성사서함"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"음성사서함"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"예"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"아니요"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"일괄 작업 모드 취소"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"삭제"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"취소"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"선택한 <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>을(를) 삭제하시겠습니까?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g>개 선택됨"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"이 음성사서함을 삭제하시겠습니까? "</b>"</item>
+      <item quantity="one">"<b>"이 음성사서함을 삭제하시겠습니까? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>분 <xliff:g id="SECONDS">%2$02d</xliff:g>초"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM 카드에서 로딩 중..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM 카드 주소록"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"사용할 수 있는 주소록 앱이 없습니다."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"음성검색이 지원되지 않습니다."</string>
     <string name="call_not_available" msgid="7850148370757361155">"전화 애플리케이션을 사용 중지했으므로 전화를 걸 수 없습니다."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"주소록 검색"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"새로운 부재중 전화 <xliff:g id="NUMBER">%s</xliff:g>건"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"아직 단축 다이얼이 설정된 연락처가 없습니다."</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"단축 다이얼 추가"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"아직 연락처가 없습니다."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"연락처 추가"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"이미지를 터치하여 모든 번호를 확인하거나 길게 터치하여 재정렬합니다."</string>
     <string name="remove_contact" msgid="2353580570488923668">"삭제"</string>
+    <string name="select_all" msgid="408601760696146245">"모두 선택"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"화상 통화"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"메시지 보내기"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"통화 세부정보"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"차단된 번호"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g>번은 이미 차단되었습니다."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"통화 계정"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"사용"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"권한 설정"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"단축번호를 사용하려면 주소록 권한을 사용하도록 설정하세요."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"통화 기록을 보려면 전화 권한을 사용하도록 설정하세요."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"주소록을 보려면 주소록 권한을 사용하도록 설정하세요."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"음성사서함에 액세스하려면 전화 권한을 사용하도록 설정하세요."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"주소록을 검색하려면 주소록 권한을 사용하도록 설정하세요."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"전화를 걸려면 전화 권한을 사용하도록 설정하세요."</string>
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 9e80e29..0a0b3e6 100644
--- a/java/com/android/dialer/app/res/values-ky/strings.xml
+++ b/java/com/android/dialer/app/res/values-ky/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Тыныгуу кошуу"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Жөндөөлөр"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулятор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Жаңы интерфейс үчүн кыска жол түзүү"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Бардык байланыштар"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Тоналдык терүү тактасын колдонуу"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Токтотулган чалууга кайтуу"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Чалууну кошуу"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Кирүүчү чалуулар"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Жапырт аракет режимине кирдиңиз"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Жапырт аракет режиминен чыктыңыз"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> объект тандалды"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> объект тандоодон чыгарылды"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Үнкатты угуу"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Байланышты кароо <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Чалуу <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Үн почтасы"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мүн. <xliff:g id="SECONDS">%s</xliff:g> сек."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"үн почтасы"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"үн почталары"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ооба"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Жок"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Жапырт аракет режимин жокко чыгаруу"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Жок кылуу"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Жокко чыгаруу"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Тандалган <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> жок кылынсынбы?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> тандалды"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Бул үн почталар жок кылынсынбы? "</b>"</item>
+      <item quantity="one">"<b>"Бул үн почта жок кылынсынбы? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> саат <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM картадан жүктөлүүдө..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM картадагы байланыштар"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Жеткиликтүү байланыштар колдонмосу жок"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Үн менен издөө жеткиликтүү эмес"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Телефон колдонмосу өчүрүлгөндүктөн, чалуу мүмкүн болбой жатат."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Байланыштарды издөө"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> жаңы өткөзүлгөн чалуу"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Азырынча тез териле турган номерлер жок"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Сүйүктүү номер кошуу"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Азырынча бир дагы байланышыңыз жок"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Байланыш кошуу"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Бардык номерлерди көрүү үчүн, сүрөткө тийип коюңуз же коё бербей басып туруп иретин өзгөртсөңүз болот."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Алып салуу"</string>
+    <string name="select_all" msgid="408601760696146245">"Баарын тандоо"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видео чалуу"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Билдирүү жөнөтүү"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Чалуунун чоо-жайы"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Бөгөттөлгөн номерлер"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> мурунтан эле бөгөттөлгөн."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Чалуу каттоо эсептери"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Күйгүзүү"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Уруксаттарды берүү"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Тез терүүнү иштетүү үчүн, \"Байланыштар\" колдонмосуна уруксат бериңиз."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Чалуулар таржымалыңызды көрүү үчүн, \"Телефон\" колдонмосуна уруксат бериңиз."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Байланыштар тизмесин көрүү үчүн, \"Байланыштар\" колдонмосуна уруксат бериңиз."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Үн почтаңызга кирүү үчүн, \"Телефон\" колдонмосуна уруксат бериңиз."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Байланыштарыңызды издөө үчүн, Байланыштарга уруксатты күйгүзүңүз."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Чалуу үчүн, \"Телефон\" колдонмосуна уруксат бериңиз."</string>
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 8284e8d..267d1c6 100644
--- a/java/com/android/dialer/app/res/values-lo/strings.xml
+++ b/java/com/android/dialer/app/res/values-lo/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"ເພີ່ມການລໍຖ້າ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ການ​ຕັ້ງ​ຄ່າ"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"ຕົວຈຳລອງ"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"ສ້າງປຸ່ມລັດສ່ວນຕິດຕໍ່ຜູ້ໃຊ້ໃໝ່"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ລາຍຊື່ຜູ່ຕິດຕໍ່ທັງໝົດ"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ໃຊ້ປຸ່ມກົດສັນຍານສຽງ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"ກັບໄປການໂທທີ່ກຳລັງດຳເນີນຢູ່"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ເພີ່ມການໂທ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ສາຍໂທເຂົ້າ"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ກຳລັງເຂົ້າໂໝດຄຳສັ່ງຈຳນວນຫຼາຍ"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ອອກຈາກໂໝດຄຳສັ່ງຈຳນວນຫຼາຍແລ້ວ"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"ເລືອກ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ແລ້ວ"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"ເຊົາເລືອກ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ແລ້ວ"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ເປີດຂໍ້ຄວາມສຽງ"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"ເບິ່ງລາຍຊື່ຜູ່ຕິດຕໍ່ <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"ໂທຫາ <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ຂໍ້ຄວາມສຽງ"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ວິນາທີ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> ນ​ທ <xliff:g id="SECONDS">%s</xliff:g> ວິ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ຂໍ້ຄວາມສຽງ"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ຂໍ້ຄວາມສຽງ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ແມ່ນແລ້ວ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ບໍ່"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ຍົກເລີກໂໝດຄຳສັ່ງເປັນຊຸດ"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ລຶບ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ຍົກເລີກ"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ລຶບ <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ທີ່ເລືອກອອກໄປບໍ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"ເລືອກ <xliff:g id="NUMBER">%1$s</xliff:g> ລາຍການແລ້ວ"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ລຶບຂໍ້ຄວາມສຽງເຫຼົ່ານີ້ບໍ? "</b>"</item>
+      <item quantity="one">"<b>"ລຶບຂໍ້ຄວາມສຽງນີ້ບໍ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ເວລາ <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"ກຳລັງໂຫລດຈາກ SIM card..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"ລາຍຊື່ຜູ່ຕິດຕໍ່ SIM card"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"ບໍ່​ມີ​ແອັບຯ​ລາຍ​ຊື່​ຕິດ​ຕໍ່​ຢູ່"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ບໍ່​ມີ​ການ​ຊອກ​ຫາ​ດ້ວຍ​ສຽງ​ຢູ່"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ບໍ່​ສາ​ມາດ​ໂທ​ໄດ​້​ເນື່ອງ​ຈາກ​ແອັບ​ພ​ລິ​ເຄ​ຊັນ​ໂທ​ລະ​ສັບ​ຖືກ​ປິດ​ການ​ນຳ​ໃຊ້​ໄວ້."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"ຊອກຫາລາຍຊື່ຜູ່ຕິດຕໍ່"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ສາຍທີ່ບໍ່ໄດ້ຮັບໃໝ່"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ບໍ່​ມີ​ຜູ້​ໃດ​ຢູ່​ໃນ​ການ​ໂທ​ດ່ວນ​ຂອງ​ທ່ານ​ເທື່ອ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ເພີ່ມ​ລາຍ​ການ​ທີ່​ມັກ"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ທ່ານ​ບໍ່​ມີ​ລາຍ​ຊື່​ໃດ​ເທື່ອ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ເພີ່ມ​ລາຍ​ຊື່"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ແຕະຮູບເພື່ອເບິ່ງເບີໂທທັງໝົດ ຫຼື ແຕະຄ້າງໄວ້ເພື່ອຈັດລຳດັບໃໝ່"</string>
     <string name="remove_contact" msgid="2353580570488923668">"​ລຶບ​ອອກ"</string>
+    <string name="select_all" msgid="408601760696146245">"ເລືອກທັງໝົດ"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"​ໂທ​ດ້ວຍ​ວິ​ດີ​ໂອ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ສົ່ງຂໍ້ຄວາມ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ລາຍລະອຽດ​ການໂທ"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ເບີໂທລະສັບທີ່ບລັອກໄວ້"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ຖືກ​ບ​ລັອກ​ແລ້ວ."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ບັນ​ຊີ​ໂທ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ເປີດ​"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ຕັ້ງ​ການ​ອະ​ນຸ​ຍາດ"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ເພື່ອ​ເປີດ​ໃຊ້​ງານ​ການໂທດ່ວນ, ເປີດ​ການ​ອະ​ນຸ​ຍາດ​ລາຍ​ຊື່."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ເພື່ອ​ເບິ່ງ​ບັນ​ທຶກ​ການ​ໂທ​ຂອງ​ທ່ານ, ເປີດ​ການ​ອະ​ນຸ​ຍາດ​ໂທ​ລະ​ສັບ."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"ເພື່ອ​ເບິ່ງ​ລາຍ​ຊື່​ຂອງ​ທ່ານ, ເປີດ​ການ​ອະ​ນຸ​ຍາດ​ລາຍ​ຊື່"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ເພື່ອ​ເຂົ້າ​ຫາ​ຂໍ້​ຄວາມ​ສຽງ​ຂອງ​ທ່ານ, ເປີດ​ການ​ອະ​ນຸ​ຍາດ​ໂທ​ລະ​ສັບ."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"ເພື່ອຄົ້ນຫາລາຍາຊື່ຂອງທ່ານ, ໃຫ້ເປີດການອະນຸຍາດລາຍຊື່."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ເພື່ອ​ເຮັດການໂທ, ເປີດ​ການ​ອະ​ນຸ​ຍາດ​ໂທ​ລະ​ສັບ."</string>
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 a346d5d..e26a909 100644
--- a/java/com/android/dialer/app/res/values-lt/strings.xml
+++ b/java/com/android/dialer/app/res/values-lt/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Pridėti laukimą"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Nustatymai"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simuliatorius"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Sukurti naują NS spart. klav."</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Visi kontaktai"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Naudoti jutiklinę klaviatūrą"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Grįžti prie vykdomo skambučio"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Pridėti skambutį"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Gaunami skambučiai"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Įjungiamas masinių veiksmų režimas"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Masinių veiksmų režimas išjungtas"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Pasirinkta: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Pasirinkimas atšauktas: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Paleisti balso pašto pranešimus"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Žiūrėti kontaktą <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Skambinti <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Balso paštas"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"balso pašto praneš."</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"balso pašto praneš."</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Taip"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Atšaukti masinių veiksmų režimą"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Ištrinti"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Atšaukti"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Ištrinti pasir. <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Pasirinkta: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Ištrinti šiuos balso pašto pranešimus? "</b>"</item>
+      <item quantity="few">"<b>"Ištrinti šiuos balso pašto pranešimus? "</b>"</item>
+      <item quantity="many">"<b>"Ištrinti šiuos balso pašto pranešimus? "</b>"</item>
+      <item quantity="other">"<b>"Ištrinti šiuos balso pašto pranešimus? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Įkeliama iš SIM kortelės..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM kortelės adresatai"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nepasiekiama jokia kontaktų programa"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Paieška balsu nepasiekiama"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Negalima skambinti telefonu, nes Telefono programa išjungta."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Ieškoti adresatų"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Naujų praleistų skambučių: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Dar nieko neįtraukėte į sparčiojo rinkimo sąrašą"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Pridėti mėgstamiausią"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Dar neturite kontaktų"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Pridėti kontaktą"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Palieskite vaizdą, kad peržiūrėtumėte visus numerius, arba palieskite ir palaikykite, kad pertvarkytumėte"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Pašalinti"</string>
+    <string name="select_all" msgid="408601760696146245">"Pasirinkti viską"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Vaizdo skambutis"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Siųsti pranešimą"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Išsami skambučio informacija"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Užblokuoti numeriai"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> jau užblokuotas."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Skambinimo paskyros"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Įjungti"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Nustatyti leidimus"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Jei norite įgalinti spartųjį rinkimą, įjunkite Kontaktų programos leidimą."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Jei norite peržiūrėti skambučių žurnalą, įjunkite Telefono programos leidimą."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Jei norite peržiūrėti kontaktus, įjunkite Kontaktų programos leidimą."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Jei norite pasiekti balso paštą, įjunkite Telefono programos leidimą."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kad galėtumėte ieškoti kontaktų, įjunkite Kontaktų leidimus."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Jei norite paskambinti, įjunkite Telefono programos leidimą."</string>
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 808d7bf..8df2813 100644
--- a/java/com/android/dialer/app/res/values-lv/strings.xml
+++ b/java/com/android/dialer/app/res/values-lv/strings.xml
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Pievienot gaidīšanu"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Iestatījumi"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulators"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Jaunās liet. saskarnes saīsne"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Visas kontaktpersonas"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Izmantot skārientoņu tastatūru"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Atgriezties pie pašreizējā zvana"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Pievienot zvanu"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Ienākošie zvani"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Tiek atvērts lielapjoma darbību režīms"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Tika aizvērts lielapjoma darbību režīms"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Atlasīt: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Noņemt atlasi: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Atskaņot balss pasta ziņojumu"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Skatīt kontaktpersonu <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Zvanīt: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Balss pasts"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"balss pasta ziņojums"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"balss pasta ziņojumi"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Jā"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nē"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Iziet no grupas darbību režīma"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Dzēst"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Atcelt"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Vai dzēst atlasi: <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Atlasīti: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="zero">"<b>"Vai dzēst šos balss pasta ziņojumus? "</b>"</item>
+      <item quantity="one">"<b>"Vai dzēst šos balss pasta ziņojumus? "</b>"</item>
+      <item quantity="other">"<b>"Vai dzēst šos balss pasta ziņojumus? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> plkst. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Notiek ielāde no SIM kartes..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontaktpersonas SIM kartē"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nav pieejama neviena kontaktpersonu lietotne."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Meklēšana ar balsi nav pieejama."</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nevar veikt tālruņa zvanu, jo lietojumprogramma Tālrunis tika atspējota."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Meklēt kontaktpersonas"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Jauni neatbildēti zvani: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Ātro zvanu sarakstā vēl nav nevienas kontaktpersonas."</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Pievienot izlasei"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Jums vēl nav nevienas kontaktpersonas."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Pievienot kontaktpersonu"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Pieskarieties attēlam, lai skatītu visus numurus, vai pieskarieties attēlam un turiet to, lai veiktu pārkārtošanu."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Noņemt"</string>
+    <string name="select_all" msgid="408601760696146245">"Atlasīt visu"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videozvans"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Sūtīt ziņojumu"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Informācija par zvanu"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Bloķētie numuri"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> jau ir bloķēts."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Zvanu konti"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ieslēgt"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Iestatīt atļaujas"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Lai iespējotu ātros zvanus, ieslēdziet atļauju Kontaktpersonas."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Lai skatītu zvanu žurnālu, ieslēdziet atļauju Tālrunis."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Lai skatītu kontaktpersonas, ieslēdziet atļauju Kontaktpersonas."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Lai piekļūtu balss pastam, ieslēdziet atļauju Tālrunis."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Lai meklētu savas kontaktpersonas, ieslēdziet atļauju Kontaktpersonas."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Lai veiktu zvanu, ieslēdziet atļauju Tālrunis."</string>
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 6d2e533..953a055 100644
--- a/java/com/android/dialer/app/res/values-mk/strings.xml
+++ b/java/com/android/dialer/app/res/values-mk/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Додај почекај"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Поставки"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулатор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Создај крат. за нов интерфејс"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Сите контакти"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Користи тастатура со звуци на допир"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Врати се на повик во тек"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Додај повик"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Дојдовни повици"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Влегувате во режим на групно дејство"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Излеговте од режим на групно дејство"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Избрано е <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Поништен е изборот на <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Преслушај говорна пошта"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Прикажи контакт <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Повикај <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Говорна пошта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мин. <xliff:g id="SECONDS">%s</xliff:g> сек."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"говорна пошта"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"говорни пораки"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Да"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Не"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Откажи го режимот на групни дејства"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Избриши"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Откажи"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Да се избришат избраните <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Избрани се <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Да се избришат говорните пораки? "</b>"</item>
+      <item quantity="other">"<b>"Да се избришат говорните пораки? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> во <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Вчитување од SIM картичка..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Контакти од SIM картичка"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Не е достапна апликација за контакти"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Гласовното пребарување не е достапно"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Не може да се воспостави телефонски повик, бидејќи апликацијата Телефон е оневозможена."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Пребарај контакти"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> нови пропуштени повици"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Сè уште немате никого на брзо бирање"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Додај омилено"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Сè уште немате контакти"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Додај контакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Допрете ја сликата за да ги видите сите броеви или допрете и држете за промена на редоследот"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Отстрани"</string>
+    <string name="select_all" msgid="408601760696146245">"Изберете ги сите"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видеоповик"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Испрати порака"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Детали на повик"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Блокирани броеви"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> веќе е блокиран."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Сметки за повикување"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Вклучи"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Постави дозволи"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"За да овозможите брзо бирање, вклучете ја дозволата за контакти."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"За да ја видите евиденцијата на повици, вклучете ја дозволата за телефон."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"За да ги видите контактите, вклучете ја дозволата за контакти."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"За да пристапите кон говорната пошта, вклучете ја дозволата за телефон."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"За да ги пребарувате контактите, вклучете ги дозволите за контакти."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"За да воспоставите повик, вклучете ја дозволата за телефон."</string>
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 91accf4..0eef407 100644
--- a/java/com/android/dialer/app/res/values-ml/strings.xml
+++ b/java/com/android/dialer/app/res/values-ml/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"കാത്തിരിക്കൽ ചേർക്കുക"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ക്രമീകരണം"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"സിമുലേറ്റർ"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"പുതിയ UI കുറുക്കുവഴി സൃഷ്‌ടിക്കുക"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"എല്ലാ കോൺടാക്റ്റുകളും"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ടച്ച് ടോൺ കീപാഡ് ഉപയോഗിക്കുക"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"വിളിച്ചുകൊണ്ടിരിക്കുന്ന കോളിലേക്ക് മടങ്ങുക"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"കോൾ ചേർക്കുക"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ഇൻകമിംഗ് കോളുകൾ"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ബൾക്ക് പ്രവർത്തന മോഡിലേക്ക് പ്രവേശിക്കുന്നു"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ബൾക്ക് പ്രവർത്തന മോഡ് വിട്ടു"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> തിരഞ്ഞെടുത്തു"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> തിരഞ്ഞെടുത്തത് മാറ്റി"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"വോയ്‌സ്‌മെയിൽ പ്ലേ ചെയ്യുക"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> എന്ന കോൺടാക്റ്റ് കാണുക"</string>
     <string name="description_call" msgid="1532402285334775372">"വിളിക്കുക <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"വോയ്‌സ്‌മെയിൽ"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> സെക്കൻഡ്"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> മി. <xliff:g id="SECONDS">%s</xliff:g> സെ."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"വോയ്‌സ്‌മെയിൽ"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"വോയ്‌സ്മെയിലുകൾ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"അതെ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ഇല്ല"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"\'ബാച്ച് പ്രവർത്തനങ്ങൾ\' മോഡ് റദ്ദാക്കുക"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ഇല്ലാതാക്കുക"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"റദ്ദാക്കൂ"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"തിരഞ്ഞെടുത്ത <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ഇല്ലാതാക്കണോ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> എണ്ണം തിരഞ്ഞെടുത്തു"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ഈ വോയ്‌സ്‌മെയിലുകൾ ഇല്ലാതാക്കണോ? "</b>"</item>
+      <item quantity="one">"<b>"ഈ വോയ്‌സ്‌മെയിൽ ഇല്ലാതാക്കണോ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>-ന്"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"സിം കാർഡിൽ നിന്നും ലോഡുചെയ്യുന്നു…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"സിം കാർഡ് കോൺടാക്റ്റുകൾ"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"കോൺടാക്റ്റ് അപ്ലിക്കേഷനൊന്നും ലഭ്യമല്ല"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"വോയ്‌സ് തിരയൽ ലഭ്യമല്ല"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ഫോൺ അപ്ലിക്കേഷൻ പ്രവർത്തനരഹിതമാക്കിയിരിക്കുന്നതിനാൽ ഫോൺ കോൾ ചെയ്യാനാകില്ല."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"കോണ്‍‌ടാക്റ്റുകള്‍ തിരയുക"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> പുതിയ മിസ്‌ഡ് കോളുകൾ"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ഇതുവരെ ആരും നിങ്ങളുടെ സ്പീഡ് ഡയലിൽ ഇല്ല"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"പ്രിയപ്പെട്ടത് ചേർക്കുക"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"നിങ്ങൾക്ക് ഇതുവരെയും കോൺടാക്റ്റുകൾ ഒന്നുമില്ല."</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ഒരു കോണ്‍ടാക്റ്റ് ചേര്‍ക്കുക"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"എല്ലാ നമ്പറുകളും കാണാൻ ചിത്രം സ്‌പർശിക്കുക അല്ലെങ്കിൽ വീണ്ടും ക്രമീകരിക്കാൻ സ്‌പർശിച്ച് പിടിക്കുക"</string>
     <string name="remove_contact" msgid="2353580570488923668">"നീക്കംചെയ്യുക"</string>
+    <string name="select_all" msgid="408601760696146245">"എല്ലാം തിരഞ്ഞെടുക്കുക"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"വീഡിയോ കോള്‍"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ഒരു സന്ദേശം അയയ്‌ക്കുക"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"കോൾ വിശദാംശങ്ങൾ"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ബ്ലോക്കുചെയ്ത നമ്പറുകൾ"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"ഇതിനകം തന്നെ <xliff:g id="NUMBER">%1$s</xliff:g> ബ്ലോക്കുചെയ്തിരിക്കുന്നു"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"കോളിംഗ് അക്കൗണ്ട്"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ഓണാക്കുക"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"അനുമതികൾ സജ്ജമാക്കുക"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"സ്പീഡ് ഡയൽ പ്രവർത്തനക്ഷമാക്കുന്നതിന്, \'കോൺടാക്റ്റുകൾ\' അനുമതി ഓണാക്കുക."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"നിങ്ങളുടെ കോൾ ലോഗ് കാണുന്നതിന്, \'ഫോൺ\' അനുമതി ഓണാക്കുക."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"നിങ്ങളുടെ കോൺടാക്റ്റുകൾ കാണുന്നതിന്, \'കോൺടാക്റ്റുകൾ\' അനുമതി ഓണാക്കുക."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"നിങ്ങളുടെ വോയ്‌സ്‌മെയിൽ ആക്സസ് ചെയ്യുന്നതിന്, \'ഫോൺ\' അനുമതി ഓണാക്കുക."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"നിങ്ങളുടെ കോൺടാക്റ്റുകൾ തിരയുന്നതിന് കോൺടാക്റ്റുകൾക്കുള്ള അനുമതികൾ ഓണാക്കുക."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"കോൾ വിളിക്കുന്നതിന്, \'ഫോൺ\' അനുമതി ഓണാക്കുക."</string>
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 a07a826..e0cd987 100644
--- a/java/com/android/dialer/app/res/values-mn/strings.xml
+++ b/java/com/android/dialer/app/res/values-mn/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Хүлээлт нэмэх"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Тохиргоо"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулятор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Шинэ UI үүсгэх товчлол"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Бүх харилцагчид"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Хүрэлтээр дуугардаг гар ашиглах"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Үргэлжилж буй дуудлага руу буцах"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Дуудлага нэмэх"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Ирж буй дуудлага"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Багц үйлдлийн горимд орж байна"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Багц үйлдлийн горимоос гарсан"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> сонгосон"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> сонголтыг болиулсан"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Дуут шууданг тоглуулах"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> харилцагчийг харах"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> руу залгах"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Дуут шуудан"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> минут <xliff:g id="SECONDS">%s</xliff:g> секунд"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"дуут шуудан"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"дуут шуудан"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Тийм"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Үгүй"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Багц үйлдлийн горимыг цуцлах"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Устгах"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Цуцлах"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Сонгосон <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>-г устгах уу?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> сонгосон"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Эдгээр дуут шууданг устгах уу? "</b>"</item>
+      <item quantity="one">"<b>"Энэ дуут шууданг устгах уу? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> <xliff:g id="TIME">%2$s</xliff:g>-д"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM картаас уншиж байна…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM картны харилцагчид"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ямар ч харилцагчдын апликейшн байхгүй байна."</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Дуут хайлт хийх боломжгүй байна"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Утас аппликешныг идэвхгүйжүүлсэн тул утасны дуудлага хийх боломжгүй."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Харилцагчдаас хайх"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> шинэ аваагүй дуудлага"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Таны яаралтай залгах тохиргоон дээр одоогоор харилцагч байхгүй байна"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Таалагдсан хэсэгт нэмэх"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Танд одоогоор харилцагч байхгүй байна"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Харилцагч нэмэх"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Бүх дугаарыг харахын тулд зурганд хүрнэ үү эсвэл жагсаалтыг өөрчлөхийн тулд удаан дарна уу."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Хасах"</string>
+    <string name="select_all" msgid="408601760696146245">"Бүгдийг сонгох"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видео дуудлага"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Зурвас илгээх"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Дуудлагын мэдээлэл"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Блоклосон дугаар"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g>-г аль хэдийн блоклосон байна."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Дуудах бүртгэл"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Идэвхжүүлэх"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Зөвшөөрөл тохируулах"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Яаралтай дуудлагыг идэвхжүүлэхийн тулд Харилцагчдын зөвшөөрлийг идэвхжүүлнэ үү."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Дуудлагын жагсаалтыг харахын тулд утасны зөвшөөрлийг идэвхжүүлнэ үү."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Харилцагчдаа харахын тулд Харилцагчдын зөвшөөрлийг идэвхжүүлнэ үү."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Дуут шууданд хандахын тулд Утасны зөвшөөрлийг идэвхжүүлнэ үү."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Харилцагчаа хайхын тулд, Харилцагчийн жагсаалтын зөвшөөрлийг идэвхжүүлнэ үү."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Залгахын тулд Утасны зөвшөөрлийг идэвхжүүлнэ үү."</string>
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 5aca7a5..70e6d41 100644
--- a/java/com/android/dialer/app/res/values-mr/strings.xml
+++ b/java/com/android/dialer/app/res/values-mr/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"प्रतीक्षा करा जोडा"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"सेटिंग्ज"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"सिम्युलेटर"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"नवीन UI शॉर्टकट तयार करा"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"सर्व संपर्क"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"स्‍पर्श टोन कीपॅडचा वापर करा"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"चालू असलेल्या कॉलवर परत जा"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"कॉल जोडा"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"येणारे कॉल"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"मोठ्या प्रमाणात क्रिया मोडमध्ये प्रवेश करीत आहे"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"मोठ्या प्रमाणात क्रिया मोड सोडत आहे"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> निवडले"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ची निवड रद्द केली"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"व्हॉइसमेल प्ले करा"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> संपर्क पहा"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ला कॉल  करा"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"व्हॉइसमेल"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> सेकंद"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> मिनिट <xliff:g id="SECONDS">%s</xliff:g> सेकंद"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"व्हॉइसमेल"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"व्हॉइसमेल"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"होय"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"नाही"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"बॅच क्रिया मोड रद्द करा"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"हटवा"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"रद्द करा"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"निवडलेले <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> हटवायचेे?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> निवडले"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"हा व्हॉइसमेल हटवायचा? "</b>"</item>
+      <item quantity="other">"<b>"हे व्हॉइसमेल हटवायचे? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> रोजी <xliff:g id="TIME">%2$s</xliff:g> वाजता"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"सिम कार्ड मधून लोड करीत आहे..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"सिम कार्ड संपर्क"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"कोणताही संपर्क अॅप उपलब्ध नाही"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"व्हॉइस शोध उपलब्ध नाही"</string>
     <string name="call_not_available" msgid="7850148370757361155">"फोन अनुप्रयोग अक्षम केला गेला असल्याने फोन कॉल करणे शक्य नाही."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"संपर्क शोधा"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> नवीन सुटलेले कॉल"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"अद्याप आपल्‍या स्पीड डायलवर कोणीही नाही"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"एक आवडते जोडा"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"आपल्‍याकडे अद्याप कोणतेही संपर्क नाहीत"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"एक संपर्क जोडा"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"सर्व नंबर पाहण्यासाठी प्रतिमेस स्पर्श करा किंवा पुन्हा क्रम लावण्यासाठी स्पर्श करा आणि धरून ठेवा"</string>
     <string name="remove_contact" msgid="2353580570488923668">"काढा"</string>
+    <string name="select_all" msgid="408601760696146245">"सर्व निवडा"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"व्हिडिओ कॉल"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"एक संदेश पाठवा"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"कॉल तपशील"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"अवरोधित केलेले नंबर"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> आधीच अवरोधित केलेला आहे."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"कॉल करण्याची खाती"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"चालू करा"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"परवानग्या सेट करा"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"स्पीड डायल सक्षम करण्‍यासाठी, संपर्क परवानगी चालू करा."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"आपला कॉल लॉग पाहण्‍यासाठी, फोन परवानगी चालू करा."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"आपले संपर्क पाहण्‍यासाठी, संपर्क परवानगी चालू करा."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"आपल्‍या व्हॉइसमेलमध्‍ये प्रवेश करण्‍यासाठी, फोन परवानगी चालू करा."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"आपले संपर्क शोधण्‍यासाठी, संपर्क परवानग्या चालू करा."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"कॉल करण्यासाठी, फोन परवानगी चालू करा."</string>
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 9dbe541..f58f08f 100644
--- a/java/com/android/dialer/app/res/values-ms/strings.xml
+++ b/java/com/android/dialer/app/res/values-ms/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Tambah penungguan"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Tetapan"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Buat Pintasan UI Baharu"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Semua kenalan"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Gunakan pad kekunci nada sentuh"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Kembali ke panggilan yang sedang berlangsung"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Tambah panggilan"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Panggilan masuk"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Memasuki mod tindakan pukal"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Meninggalkan mod tindakan pukal"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> dipilih"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> dinyahpilih"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Mainkan mel suara"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Lihat kenalan <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Panggil <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Mel suara"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> saat"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> saat"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"mel suara"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"mel suara"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ya"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Tidak"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Batalkan mod tindakan kelompok"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Padam"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Batal"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Padam <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> yang dipilih?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> dipilih"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Padamkan mel suara ini? "</b>"</item>
+      <item quantity="one">"<b>"Padamkan mel suara ini? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> pada <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Memuatkan dari kad SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kenalan kad SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Tiada apl kenalan tersedia"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Carian suara tidak tersedia"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Tidak boleh membuat panggilan telefon kerana aplikasi Telefon telah dilumpuhkan."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Cari dalam kenalan"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> panggilan terlepas baharu"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Belum ada sesiapa pada dail pantas anda"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Tambahkan kegemaran"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Anda belum mempunyai sebarang kenalan"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Tambahkan kenalan"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Sentuh imej untuk melihat semua nombor atau sentuh &amp; tahan untuk menyusun semula"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Alih keluar"</string>
+    <string name="select_all" msgid="408601760696146245">"Pilih semua"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Panggilan video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Hantar mesej"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Butiran panggilan"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Nombor yang disekat"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> sudah disekat."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Akaun panggilan"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Hidupkan"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Tetapkan kebenaran"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Untuk mendayakan dail laju, hidupkan kebenaran Kenalan."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Untuk melihat log panggilan anda, hidupkan kebenaran Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Untuk melihat kenalan anda, hidupkan kebenaran Kenalan."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Untuk mengakses mel suara anda, hidupkan kebenaran Telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Untuk mencari kenalan anda, hidupkan kebenaran Kenalan."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Untuk membuat panggilan, hidupkan kebenaran Telefon."</string>
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 2b51b20..60c3271 100644
--- a/java/com/android/dialer/app/res/values-my/strings.xml
+++ b/java/com/android/dialer/app/res/values-my/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"စောင့်ဆိုင်းခြင်း ထည့်ပါ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ဆက်တင်များ"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"အသစ်ကဲ့သို့ တုပသည့်စနစ်"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"UI ဖြတ်လမ်းလင့်ခ်အသစ် လုပ်ရန်"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"လိပ်စာများအားလုံး"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"touch tone ကီးခလုတ် ကိုအသုံးပြုပါ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"ဖုန်းပြန်ခေါ်မှု ပြုလုပ်နေစဉ်"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ဖုန်းခေါ်မှု ထပ်ထည့်ပါ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"အဝင်ခေါ်ဆိုမှုများ"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"တပြိုင်နက်တည်း စုပြုံလုပ်ဆောင်ချက်မုဒ်ကို ထည့်သွင်းခြင်း"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"တပြိုင်နက်တည်း စုပြုံလုပ်ဆောင်ချက်မုဒ်မှ ထွက်လိုက်သည်"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"ရွေးချယ်ထားသော <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"မရွေးချယ်ထားသော <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"အသံပို့စာ နားထောင်ရန်"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> လိပ်စာကြည့်ရန်"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ကိုခေါ်ပါ"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"အသံစာပို့စနစ်"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> စက္ကန့်"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> မိနစ် <xliff:g id="SECONDS">%s</xliff:g> စက္ကန့်"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"အသံမေးလ်"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"အသံမေးလ်များ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Yes"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"No"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"တပြိုင်နက်တည်း စုပြုံလုပ်ဆောင်ချက်များမုဒ်ကိ ပယ်ဖျက်ရန်"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ဖျက်ပါ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"မလုပ်တော့"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ရွေးထားသော <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ကို ဖျက်လိုပါသလား။"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ကို ရွေးချယ်ထားသည်"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ဤအသံမေးလ်များကို ဖျက်မလား။ "</b>"</item>
+      <item quantity="one">"<b>"ဤအသံမေးလ်ကို ဖျက်မလား။ "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> <xliff:g id="TIME">%2$s</xliff:g> ၌"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEIDနံပါတ်"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"ဆင်းမ်ကဒ်မှ ဖွင့်နေပါသည်..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"ဆင်းမ်ကဒ်မှ အဆက်အသွယ်များ"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"အဆက်အသွယ်များ app မရှိ"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"အသံဖြင့် ရှာဖွေမှု မရှိ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ဖုန်း အပလီကေးရှင်းကို ပိတ်ထား၍ ဖုန်း ခေါ်ဆိုမှု မပြုလုပ်နိုင်ခဲ့ပါ။"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"အဆက်အသွယ်များရှာပါ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"လွတ်သွားသောဖုန်း <xliff:g id="NUMBER">%s</xliff:g> ခါ"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"သင်၏အမြန်ခေါ်စာရင်းတွင် မည်သူမျှ မရှိသေးပါ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"အနှစ်သက်ဆုံးတစ်ခု ထည့်ရန်"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"သင့်တွင် မည်သည့်အဆက်အသွယ်မျှ မရှိသေးပါ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"အဆက်အသွယ်တစ်ယောက် ထည့်မည်"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"နံပါတ်အားလုံးကိုကြည့်ရန် ပုံကိုထိပါ (သို့) ပြန်စီရန် ထိပြီးဖိထားပါ"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ဖယ်ရှာခြင်း"</string>
+    <string name="select_all" msgid="408601760696146245">"အားလုံးကို ရွေးချယ်ပါ"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ဗီဒီယို ခေါ်ဆိုမှု"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"စာ တစ်စောင် ပို့ပါ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ဖုန်းခေါ်မှု အသေးစိတ်အချက်အလက်"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ပိတ်ထားသည့် နံပါတ်များ"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> အားပိတ်ဆို့ထားပြီးပါပြီ။"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ခေါ်ဆိုသော အကောင့်များ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ဖွင့်ထားရန်"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ခွင့်ပြုချက်များ သတ်မှတ်မည်"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"မြန်နှုန်းမြင့်ဖုန်းခေါ်ဆိုမှုကို ဖွင့်ရန်၊ အဆက်အသွယ်ခွင့်ပြုချက်ကို ဖွင့်ပါ။"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ခေါ်ဆိုမှုမှတ်တမ်းကို ကြည့်ရန်၊ ဖုန်းခွင့်ပြုချက်ကို ဖွင့်ပါ။"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"အဆက်အသွယ်များကိုကြည့်ရန်၊ အဆက်အသွယ်ခွင့်ပြုချက်ကို ဖွင့်ပါ။"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"အသံမေးလ်ကိုအသုံးပြုရန်၊ ဖုန်းခွင့်ပြုချက်ကိုဖွင့်ပါ။"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"သင့်အဆက်အသွယ်များကို ရှာဖွေရန်၊ အဆက်အသွယ်ခွင့်ပြုချက်များကို ဖွင့်ပါ။"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ဖုန်းခေါ်ဆိုရန်၊ ဖုန်းခွင့်ပြုချက်ကိုဖွင့်ပါ။"</string>
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 d92edc6..344a26a 100644
--- a/java/com/android/dialer/app/res/values-nb/strings.xml
+++ b/java/com/android/dialer/app/res/values-nb/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Legg til Vent"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Innstillinger"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Nytt grensesnitt – lag snarvei"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle kontakter"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Bruk tonetastatur"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Gå tilbake til aktiv samtale"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Legg til en samtale"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Innkommende samtaler"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Starter massehandlingsmodus"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Massehandlingsmodus er avsluttet"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Du har valgt <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Du har valgt bort <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Spill av talemelding"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Se kontakten <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ring <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Telefonsvarer"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sek"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"talepost"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"talepost"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nei"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Avbryt massehandlinsmodus"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Slett"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Avbryt"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Slett markert <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> er valgt"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Vil du slette disse talemeldingene? "</b>"</item>
+      <item quantity="one">"<b>"Vil du slette denne talemeldingen? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kl. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Henter fra SIM-kort…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakter på SIM-kort"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ingen kontaktapper er tilgjengelige"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Talesøk er ikke tilgjengelig"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Kan ikke ringe fordi Telefon-appen er deaktivert."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Søk i kontakter"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nye tapte anrop"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Du har ingen på hurtigoppringning ennå"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Legg til en favoritt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Du har ingen kontakter ennå"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Legg til en kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Trykk på bildet for å se alle numrene, eller trykk og hold for å omorganisere"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Fjern"</string>
+    <string name="select_all" msgid="408601760696146245">"Velg alle"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videoanrop"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send en melding"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Samtaleinformasjon"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokkerte numre"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> er allerede blokkert."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Ringekontoer"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Slå på"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Angi tillatelser"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"For å slå på hurtigoppringning, slå på Kontakter-tillatelsen."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"For å se samtaleloggen din, slå på Telefon-tillatelsen."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"For å se kontaktene dine, slå på Kontakter-tillatelsen."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"For å få tilgang til talepostkassen, slå på Telefon-tillatelsen."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"For å søke i kontaktene dine, slå på tillatelser for Kontakter."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"For å ringe, slå på Telefon-tillatelsen."</string>
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 90a3016..5e70c40 100644
--- a/java/com/android/dialer/app/res/values-ne/strings.xml
+++ b/java/com/android/dialer/app/res/values-ne/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"पर्खाइ थप्नुहोस्"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"सेटिङ्हरू"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"सिम्युलेटर"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"नयाँ UI सर्टकट सिर्जना गर्ने"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"सबै सम्पर्कहरू"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"स्पर्श टोन किप्याडको प्रयोग गर्नुहोस्"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"हुदै गरेको कलमा फर्कनुहोस्"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"कल थप्नुहोस्"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"आगमन कलहरू"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"बल्क कारबाही सम्बन्धी मोडमा प्रवेश गर्दै"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"बल्क कारबाही सम्बन्धी मोड छोडियो"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> चयन गरियो"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> चयन हटाइयो"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"भ्वाइसमेल बजाउनुहोस्"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> सम्पर्क हेर्नुहोस्"</string>
     <string name="description_call" msgid="1532402285334775372">"कल <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"भ्वाइसमेल"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> सेकेन्ड"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> मिनेट <xliff:g id="SECONDS">%s</xliff:g> सकेन्ड"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"भ्वाइस मेल"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"भ्वाइस मेलहरू"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"हो"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"होइन"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ब्याच सम्बन्धी कारबाहीको मोडलाई रद्द गर्नुहोस्"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"मेट्नुहोस्"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"रद्द गर्नुहोस्"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"चयन गरिएका <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> लाई मेटाउने हो?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> चयन गरियो"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"यी भ्वाइस मेलहरू मेट्ने हो? "</b>"</item>
+      <item quantity="one">"<b>"यो भ्वाइस मेल मेट्ने हो? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> मा <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM कार्डबाट लोड हुँदै"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM कार्ड सम्पर्कहरू"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"कुनै पनि सम्पर्क अनुप्रयोग उपलब्ध छैन"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"आवाज खोजी उपलब्ध छैन"</string>
     <string name="call_not_available" msgid="7850148370757361155">"फोन अनुप्रयोग असक्षम गरिएकोले फोन गर्न सकिँदैन।"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"सम्पर्कहरू खोज्नुहोस्"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> नयाँ छुटेका कलहरु"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"तपाईँको स्पिड डायलमा अझसम्म कोही छैन"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"एक मनपर्ने थप्नुहोस्"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"तपाईँसँग अझसम्म कुनै सम्पर्कहरू छैनन्"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"एउटा सम्पर्क थप्नुहोस्"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"सबै नम्बरहरू हेर्न छविलाई छुनुहोस् वा पुन:क्रमबद्ध गर्न छोइराख्नुहोस्"</string>
     <string name="remove_contact" msgid="2353580570488923668">"हटाउँनुहोस्"</string>
+    <string name="select_all" msgid="408601760696146245">"सबैलाई चयन गर्नुहोस्"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"भिडियो कल"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"सन्देश पठाउनुहोस्"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"कल विवरणहरु"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"रोकिएका नम्बरहरू"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> पहिले नै रोकिएको छ।"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"खाता कलिङ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"सक्रिय पार्नुहोस्"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"अनुमतिहरू सेट गर्नुहोस्"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"तीव्र डायल सक्षम गर्न, सम्पर्क अनुमति सक्षम गर्नुहोस्।"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"आफ्नो कल लग हेर्न, फोन अनुमति सक्रिय गर्नुहोस्।"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"आफ्नो सम्पर्क हेर्न सम्पर्क अनुमति सक्रिय गर्नुहोस्।"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"आफ्नो भ्वाइस मेल पहुँच गर्न, फोन अनुमति सक्रिय गर्नुहोस्"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"तपाईँको सम्पर्कहरू खोज गर्न सम्पर्क अनुमतिहरू सक्रिय गर्नुहोस्।"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"कल गर्न फोन अनुमति सक्रिय गर्नुहोस्।"</string>
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 5f41b80..dbd29bc 100644
--- a/java/com/android/dialer/app/res/values-nl/strings.xml
+++ b/java/com/android/dialer/app/res/values-nl/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Wachten toevoegen"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Instellingen"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Snelkoppeling voor nieuwe UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle contacten"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Toetsen voor toonkiezen gebruiken"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Terug naar actief gesprek"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Oproep toevoegen"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Inkomende oproepen"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Modus voor bulkacties openen"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Modus voor bulkacties verlaten"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> geselecteerd"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Selectie van <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> opgeheven"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Voicemail afspelen"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Contact <xliff:g id="NAME">%1$s</xliff:g> bekijken"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> bellen"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Voicemail"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sec."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sec."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"voicemail"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"voicemails"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nee"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Modus voor batchacties annuleren"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Verwijderen"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Annuleren"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Geselecteerde <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> verwijderen?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> geselecteerd"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Deze voicemails verwijderen? "</b>"</item>
+      <item quantity="one">"<b>"Deze voicemail verwijderen? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> om <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Laden vanaf SIM-kaart..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contacten op SIM-kaart"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Geen app voor contacten beschikbaar"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Gesproken zoekopdracht niet beschikbaar"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Kan niet bellen omdat de Telefoon-app is uitgeschakeld."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Contacten zoeken"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nieuwe gemiste oproepen"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Er staat nog niemand in je snelkeuzelijst"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Een favoriet toevoegen"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Je hebt nog geen contacten"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Contact toevoegen"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tik op de afbeelding om alle nummers te bekijken of tik op de afbeelding en houd vast om opnieuw te rangschikken"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Verwijderen"</string>
+    <string name="select_all" msgid="408601760696146245">"Alles selecteren"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videogesprek"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Een bericht verzenden"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Oproepdetails"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Geblokkeerde nummers"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> is al geblokkeerd."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Oproepaccounts"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Inschakelen"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Toestemmingen instellen"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Als je de snelkeuzefunctie wilt inschakelen, schakel je de machtiging voor Contacten in."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Als je je gesprekkenlijst wilt bekijken, schakel je de machtiging voor Telefoon in."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Als je je contacten wilt bekijken, schakel je de machtiging voor Contacten in."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Als je je voicemail wilt beluisteren, schakel je de machtiging voor Telefoon in."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Als je naar contacten wilt zoeken, schakel je de contacttoestemming in."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Als je iemand wilt bellen, schakel je de machtiging voor Telefoon in."</string>
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 d92edc6..344a26a 100644
--- a/java/com/android/dialer/app/res/values-no/strings.xml
+++ b/java/com/android/dialer/app/res/values-no/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Legg til Vent"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Innstillinger"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Nytt grensesnitt – lag snarvei"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alle kontakter"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Bruk tonetastatur"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Gå tilbake til aktiv samtale"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Legg til en samtale"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Innkommende samtaler"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Starter massehandlingsmodus"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Massehandlingsmodus er avsluttet"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Du har valgt <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Du har valgt bort <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Spill av talemelding"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Se kontakten <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ring <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Telefonsvarer"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sek"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sek"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"talepost"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"talepost"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nei"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Avbryt massehandlinsmodus"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Slett"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Avbryt"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Slett markert <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> er valgt"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Vil du slette disse talemeldingene? "</b>"</item>
+      <item quantity="one">"<b>"Vil du slette denne talemeldingen? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kl. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Henter fra SIM-kort…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakter på SIM-kort"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ingen kontaktapper er tilgjengelige"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Talesøk er ikke tilgjengelig"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Kan ikke ringe fordi Telefon-appen er deaktivert."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Søk i kontakter"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nye tapte anrop"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Du har ingen på hurtigoppringning ennå"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Legg til en favoritt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Du har ingen kontakter ennå"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Legg til en kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Trykk på bildet for å se alle numrene, eller trykk og hold for å omorganisere"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Fjern"</string>
+    <string name="select_all" msgid="408601760696146245">"Velg alle"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videoanrop"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Send en melding"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Samtaleinformasjon"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokkerte numre"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> er allerede blokkert."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Ringekontoer"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Slå på"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Angi tillatelser"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"For å slå på hurtigoppringning, slå på Kontakter-tillatelsen."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"For å se samtaleloggen din, slå på Telefon-tillatelsen."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"For å se kontaktene dine, slå på Kontakter-tillatelsen."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"For å få tilgang til talepostkassen, slå på Telefon-tillatelsen."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"For å søke i kontaktene dine, slå på tillatelser for Kontakter."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"For å ringe, slå på Telefon-tillatelsen."</string>
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 76d4b9b..33afd58 100644
--- a/java/com/android/dialer/app/res/values-pa/strings.xml
+++ b/java/com/android/dialer/app/res/values-pa/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"ਉਡੀਕ ਜੋੜੋ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ਸੈਟਿੰਗਾਂ"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"ਸਿਮੁਲੇਟਰ"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"ਨਵਾਂ UI ਸ਼ਾਰਟਕੱਟ ਬਣਾਓ"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"ਸਾਰੇ ਸੰਪਰਕ"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ਟਚ ਟੋਨ ਕੀਪੈਡ ਵਰਤੋ"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"ਪ੍ਰਗਤੀ ਵਿੱਚ ਕਾਲ ਤੇ ਵਾਪਸ ਜਾਓ"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ਕਾਲ ਜੋੜੋ"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ਇਨਕਮਿੰਗ ਕਾਲਾਂ"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"ਬਲਕ ਕਾਰਵਾਈ ਮੋਡ ਵਿੱਚ ਦਾਖਲ ਹੋਇਆ ਜਾ ਰਿਹਾ ਹੈ"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ਬਲਕ ਕਾਰਵਾਈ ਮੋਡ ਨੂੰ ਛੱਡਿਆ"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ਨੂੰ ਚੁਣਿਆ ਗਿਆ"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ਨੂੰ ਅਣ-ਚੁਣਿਆ ਕੀਤਾ ਗਿਆ"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"ਵੌਇਸਮੇਲ ਪਲੇ ਕਰੋ"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"ਸੰਪਰਕ <xliff:g id="NAME">%1$s</xliff:g> ਦੇਖੋ"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ਨੂੰ ਕਾਲ ਕਰੋ"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ਵੌਇਸਮੇਲ"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> ਸਕਿੰਟ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> ਮਿੰਟ <xliff:g id="SECONDS">%s</xliff:g> ਸਕਿੰਟ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ਵੌਇਸਮੇਲ"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ਵੌਇਸਮੇਲਾਂ"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ਹਾਂ"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ਨਹੀਂ"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ਬੈਚ ਕਾਰਵਾਈਆਂ ਮੋਡ ਨੂੰ ਰੱਦ ਕਰੋ"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ਮਿਟਾਓ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ਰੱਦ ਕਰੋ"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ਕੀ ਚੁਣੀ(ਆਂ) ਹੋਈ(ਆਂ) <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> ਨੂੰ ਮਿਟਾਉਣਾ ਹੈ?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ਨੂੰ ਚੁਣਿਆ ਗਿਆ"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"ਕੀ ਇਸ ਵੌਇਸਮੇਲ ਨੂੰ ਮਿਟਾਉਣਾ ਹੈ? "</b>"</item>
+      <item quantity="other">"<b>"ਕੀ ਇਹਨਾਂ ਵੌਇਸਮੇਲਾਂ ਨੂੰ ਮਿਟਾਉਣਾ ਹੈ? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ਨੂੰ <xliff:g id="TIME">%2$s</xliff:g> ਵਜੇ"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM ਕਾਰਡ ਵਿੱਚੋਂ ਲੋਡ ਕਰ ਰਿਹਾ ਹੈ…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM ਕਾਰਡ ਸੰਪਰਕ"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"ਕੋਈ ਸੰਪਰਕ ਐਪ ਉਪਲਬਧ ਨਹੀਂ"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"ਵੌਇਸ ਖੋਜ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ਇੱਕ ਫੋਨ ਕਾਲ ਨਹੀਂ ਕਰ ਸਕਦਾ ਕਿਉਂਕਿ ਫੋਨ ਐਪਲੀਕੇਸ਼ਨ ਨੂੰ ਅਯੋਗ ਬਣਾਇਆ ਗਿਆ ਹੈ।"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"ਸੰਪਰਕ ਖੋਜੋ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ਨਵੀਆਂ ਮਿਸਡ ਕਾਲਾਂ"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ਅਜੇ ਤੁਹਾਡੇ ਸਪੀਡ ਡਾਇਲ \'ਤੇ ਕੋਈ ਵੀ ਵਿਅਕਤੀ ਨਹੀਂ ਹੈ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ਕੋਈ ਮਨਪਸੰਦ ਸ਼ਾਮਲ ਕਰੋ"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ਤੁਹਾਡੇ ਕੋਲ ਅਜੇ ਕੋਈ ਸੰਪਰਕ ਨਹੀਂ ਹਨ।"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ਕੋਈ ਸੰਪਰਕ ਸ਼ਾਮਲ ਕਰੋ"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"ਸਾਰੇ ਨੰਬਰਾਂ ਨੂੰ ਵੇਖਣ ਲਈ ਚਿਤਰ ਨੂੰ ਸਪਰਸ਼ ਕਰੋ ਜਾਂ ਦੁਬਾਰਾ ਕ੍ਰਮਬੱਧ ਕਰਨ ਲਈ ਸਪਰਸ਼ ਕਰੋ ਅਤੇ ਦਬਾਈ ਰੱਖੋ"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ਹਟਾਓ"</string>
+    <string name="select_all" msgid="408601760696146245">"ਸਭ ਚੁਣੋ"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ਵੀਡੀਓ ਕਾਲ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ਇੱਕ ਸੁਨੇਹਾ ਭੇਜੋ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ਕਾਲ ਵੇਰਵੇ"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"ਬਲੌਕ ਕੀਤੇ ਗਏ ਨੰਬਰ"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ਪਹਿਲਾਂ ਹੀ ਬਲੌਕ ਕੀਤਾ ਹੋਇਆ ਹੈ।"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ਕਾਲਿੰਗ ਖਾਤੇ"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ਚਾਲੂ ਕਰੋ"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ਅਨੁਮਤੀਆਂ ਸੈੱਟ ਕਰੋ"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"ਸਪੀਡ ਡਾਇਲ ਨੂੰ ਸਮਰੱਥ ਕਰਨ ਲਈ, ਸੰਪਰਕ ਅਨੁਮਤੀ ਚਾਲੂ ਕਰੋ।"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ਆਪਣਾ ਕਾਲ ਲੌਗ ਵੇਖਣ ਲਈ, ਫ਼ੋਨ ਅਨੁਮਤੀ ਚਾਲੂ ਕਰੋ।"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"ਆਪਣੇ ਸੰਪਰਕਾਂ ਨੂੰ ਵੇਖਣ ਲਈ, ਸੰਪਰਕ ਅਨੁਮਤੀ ਚਾਲੂ ਕਰੋ।"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ਆਪਣੀ ਵੌਇਸਮੇਲ ਐਕਸੈਸ ਕਰਨ ਲਈ, ਫ਼ੋਨ ਅਨੁਮਤੀ ਚਾਲੂ ਕਰੋ।"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"ਆਪਣੇ ਸੰਪਰਕਾਂ ਦੀ ਖੋਜ ਕਰਨ ਲਈ,, ਸੰਪਰਕ ਅਨੁਮਤੀਆਂ ਨੂੰ ਚਾਲੂ ਕਰੋ।"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ਕਾਲ ਕਰਨ ਲਈ, ਫ਼ੋਨ ਅਨੁਮਤੀ ਚਾਲੂ ਕਰੋ।"</string>
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 76adfe5..7f6027c 100644
--- a/java/com/android/dialer/app/res/values-pl/strings.xml
+++ b/java/com/android/dialer/app/res/values-pl/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Dodaj oczekiwanie"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ustawienia"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Symulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Utwórz skrót do nowego interfejsu"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Wszystkie kontakty"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Użyj klawiatury tonowej"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Wróć do aktywnego połączenia"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Dodaj połączenie"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Połączenia przychodzące"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Włączono tryb działań zbiorczych"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Wyłączono tryb działań zbiorczych"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Wybrano: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Anulowano wybór: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Odtwórz pocztę głosową"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Wyświetl kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Zadzwoń do: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Poczta głosowa"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"wiadomości głosowe"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"wiadomości głosowe"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Tak"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nie"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Anuluj tryb działań zbiorczych"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Usuń"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Anuluj"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Usunąć wybrane <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Wybrane: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="few">"<b>"Usunąć te wiadomości głosowe? "</b>"</item>
+      <item quantity="many">"<b>"Usunąć te wiadomości głosowe? "</b>"</item>
+      <item quantity="other">"<b>"Usunąć te wiadomości głosowe? "</b>"</item>
+      <item quantity="one">"<b>"Usunąć tę wiadomość głosową? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> o <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"Numer MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Wczytuję z karty SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakty z karty SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nie jest dostępna aplikacja do obsługi kontaktów"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Wyszukiwanie głosowe jest niedostępne"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nie można zadzwonić, ponieważ aplikacja Telefon została wyłączona."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Przeszukuj kontakty"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Nowe nieodebrane połączenia: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Lista szybkiego wybierania jest pusta"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Dodaj do ulubionych"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Nie masz jeszcze żadnych kontaktów"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Dodaj kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Kliknij obraz, by zobaczyć wszystkie numery, lub kliknij go i przytrzymaj, by zmienić kolejność"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Usuń"</string>
+    <string name="select_all" msgid="408601760696146245">"Zaznacz wszystkie"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Rozmowa wideo"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Wyślij wiadomość"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Szczegóły połączenia"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Zablokowane numery"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Numer <xliff:g id="NUMBER">%1$s</xliff:g> jest już zablokowany."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Konta telefoniczne"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Włącz"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Ustaw uprawnienia"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Aby włączyć szybkie wybieranie, włącz uprawnienie Kontakty."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Aby zobaczyć swój rejestr połączeń, włącz uprawnienie Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Aby zobaczyć swoje kontakty, włącz uprawnienie Kontakty."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Aby uzyskać dostęp do poczty głosowej, włącz uprawnienie Telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Aby wyszukać kontakty, włącz uprawnienia Kontakty."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Aby nawiązać połączenie, włącz uprawnienie Telefon."</string>
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 780ca07..768ce57 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
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Adicionar espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Configurações"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Criar atalho para a nova IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos os contatos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usar teclado multifrequencial"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Retornar para a chamada em espera"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Ad. cham."</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Chamadas recebidas"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrando no modo de ação em massa"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Saindo do modo de ação em massa"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> selecionado"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> não selecionado"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproduzir mensagem de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Visualizar contato <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ligar para <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Correio de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> seg"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> m <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"correio de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"correios de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sim"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Não"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancelar modo de ações em lote"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Excluir"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Excluir a seleção de <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Itens selecionados: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Excluir este correio de voz? "</b>"</item>
+      <item quantity="other">"<b>"Excluir estes correios de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> às <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Carregando do cartão SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contatos do cartão SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nenhum app de contatos disponível"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"A pesquisa por voz não está disponível"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Não é possível fazer uma chamada porque o app Telefone foi desativado."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Pesquisar contatos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> novas chamadas perdidas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Ainda não há ninguém na sua discagem rápida"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Adicionar favorito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Você ainda não tem contatos"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Adicionar um contato"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toque na imagem para ver todos os números ou toque e segure para reordenar"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remover"</string>
+    <string name="select_all" msgid="408601760696146245">"Selecionar tudo"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videochamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar uma mensagem"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalhes da chamada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"O número <xliff:g id="NUMBER">%1$s</xliff:g> já está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Contas de chamadas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ativar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Definir permissões"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para ativar a discagem rápida, ative a permissão para o app Contatos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver seu registro de chamadas, ative a permissão para o app Telefone."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver seus contatos, ative a permissão para o app Contatos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para acessar seu correio de voz, ative a permissão para o app Telefone."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para pesquisar seus contatos, ative as permissões para \"Contatos\"."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para fazer uma chamada, ative a permissão para o app Telefone."</string>
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 95fa75c..3c636e1 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
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Adicionar espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Definições"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Criar novo atalho de IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos os contactos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Utilizar teclado numérico com tons de toque"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Voltar à chamada em curso"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Adicionar chamada"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Chamadas recebidas"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"A entrar no modo de ação em massa…"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Saiu do modo de ação em massa"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> selecionado"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> não selecionado"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproduzir mensagem de correio de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ver o contacto <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ligar a <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Correio de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> seg"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> seg."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"mensagem de correio de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"mensagens de correio de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sim"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Não"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancelar modo de ações em lote"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Eliminar"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Pretende eliminar a(s) <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> selecionada(s)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selecionada(s)"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Pretende eliminar esta(s) mensagem(ns) de correio de voz? "</b>"</item>
+      <item quantity="other">"<b>"Pretende eliminar estas mensagens de correio de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> às <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"A carregar a partir do cartão SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contactos no cartão SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Não existe nenhuma aplicação de contactos disponível"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Pesquisa por voz não disponível"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Não é possível efetuar uma chamada porque a aplicação Telefone foi desativada."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Pesquisar contactos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> chamadas não atendidas novas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Ainda não tem ninguém na marcação rápida"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Adicionar um favorito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Ainda não tem nenhum contacto"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Adicionar um contacto"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toque na imagem para ver todos os números ou toque sem soltar para reordenar"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remover"</string>
+    <string name="select_all" msgid="408601760696146245">"Selecionar tudo"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videochamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar uma mensagem"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalhes da chamada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> já está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Contas de chamadas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ativar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Definir autorizações"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para ativar a marcação rápida, ative a autorização Contactos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver o registo de chamadas, ative a autorização Telemóvel."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver os seus contactos, ative a autorização Contactos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para aceder ao correio de voz, ative a autorização Telemóvel."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para pesquisar os seus contactos, ative as autorizações Contactos."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para efetuar uma chamada, ative a autorização Telemóvel."</string>
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 780ca07..768ce57 100644
--- a/java/com/android/dialer/app/res/values-pt/strings.xml
+++ b/java/com/android/dialer/app/res/values-pt/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Adicionar espera"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Configurações"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulador"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Criar atalho para a nova IU"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Todos os contatos"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Usar teclado multifrequencial"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Retornar para a chamada em espera"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Ad. cham."</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Chamadas recebidas"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Entrando no modo de ação em massa"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Saindo do modo de ação em massa"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> selecionado"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> não selecionado"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Reproduzir mensagem de voz"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Visualizar contato <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ligar para <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Correio de voz"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> seg"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> m <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"correio de voz"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"correios de voz"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Sim"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Não"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Cancelar modo de ações em lote"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Excluir"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Cancelar"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Excluir a seleção de <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Itens selecionados: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Excluir este correio de voz? "</b>"</item>
+      <item quantity="other">"<b>"Excluir estes correios de voz? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> às <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Carregando do cartão SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Contatos do cartão SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nenhum app de contatos disponível"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"A pesquisa por voz não está disponível"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Não é possível fazer uma chamada porque o app Telefone foi desativado."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Pesquisar contatos"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> novas chamadas perdidas"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Ainda não há ninguém na sua discagem rápida"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Adicionar favorito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Você ainda não tem contatos"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Adicionar um contato"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Toque na imagem para ver todos os números ou toque e segure para reordenar"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Remover"</string>
+    <string name="select_all" msgid="408601760696146245">"Selecionar tudo"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videochamada"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Enviar uma mensagem"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detalhes da chamada"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Números bloqueados"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"O número <xliff:g id="NUMBER">%1$s</xliff:g> já está bloqueado."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Contas de chamadas"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Ativar"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Definir permissões"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Para ativar a discagem rápida, ative a permissão para o app Contatos."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Para ver seu registro de chamadas, ative a permissão para o app Telefone."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Para ver seus contatos, ative a permissão para o app Contatos."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Para acessar seu correio de voz, ative a permissão para o app Telefone."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Para pesquisar seus contatos, ative as permissões para \"Contatos\"."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Para fazer uma chamada, ative a permissão para o app Telefone."</string>
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 725ff4a..b85f849 100644
--- a/java/com/android/dialer/app/res/values-ro/strings.xml
+++ b/java/com/android/dialer/app/res/values-ro/strings.xml
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Adăugați interval de așteptare"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Setări"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Creați comandă rapidă IU nouă"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Toată agenda"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Tastatura tactilă cu sunet"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Reveniți la apelul în curs"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Adăugați un apel"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Apeluri de intrare"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Se intră în modul acțiune în bloc"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Ați ieșit din modul acțiune în bloc"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"S-a selectat <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"S-a deselectat <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Redați mesajul vocal"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Afișați persoana din agendă <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Apelați <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Mesagerie vocală"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> secunde"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> sec."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"mesagerie vocală"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"mesaje vocale"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Da"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nu"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Anulați modul de acțiuni în lot"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Ștergeți"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Anulați"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Ștergeți cele <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> selectate?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> selectate"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="few">"<b>"Ștergeți aceste mesaje vocale? "</b>"</item>
+      <item quantity="other">"<b>"Ștergeți aceste mesaje vocale? "</b>"</item>
+      <item quantity="one">"<b>"Ștergeți acest mesaj vocal? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> la <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Se încarcă de pe cardul SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Persoanele din agendă de pe cardul SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nu este disponibilă nicio aplicație pentru agendă"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Căutarea vocală nu este disponibilă"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nu se poate efectua un apel telefonic, deoarece aplicația Telefon a fost dezactivată."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Căutați în Agendă"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> apeluri nepreluate noi"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Nicio persoană de contact setată pentru apelarea rapidă"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Adăugați o persoană de contact preferată"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Nu aveți încă persoane de contact"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Adăugați o persoană de contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Atingeți imaginea pentru a vedea toate numerele sau atingeți lung pentru reordonare"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Eliminați"</string>
+    <string name="select_all" msgid="408601760696146245">"Selectați tot"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Apel video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Trimiteți un mesaj"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detaliile apelului"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Numere blocate"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> este deja blocat."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Conturi pentru apelare"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Activați"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Setați permisiunile"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Pentru a activa apelarea rapidă, activați permisiunea Agendă."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Pentru a vedea jurnalul de apeluri, activați permisiunea Telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Pentru a vedea persoanele de contact, activați permisiunea Agendă."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Pentru a accesa mesageria vocală, activați permisiunea Telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Pentru a căuta în persoanele de contact, activați permisiunea Agendă."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Pentru a apela, activați permisiunea Telefon."</string>
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 557832b..91441cc 100644
--- a/java/com/android/dialer/app/res/values-ru/strings.xml
+++ b/java/com/android/dialer/app/res/values-ru/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Добавить паузу"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Настройки"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулятор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Создать ярлык для нового интерфейса"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Все контакты"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Панель тонального набора"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Вернуться к текущему вызову"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Добавить вызов"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Входящие вызовы"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Вы вошли в режим массового действия"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Вы вышли из режима массового действия"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Выбран объект <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Выбор объекта <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> отменен"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Прослушать голосовую почту"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Просмотреть данные: <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Вызов: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Голосовая почта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мин. <xliff:g id="SECONDS">%s</xliff:g> сек."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"голосовое сообщение"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"голосовые сообщения"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Да"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Нет"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Отмена режима массового действия"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Удалить"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Отмена"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Удалить <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Выбрано: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Удалить эти голосовые сообщения? "</b>"</item>
+      <item quantity="few">"<b>"Удалить эти голосовые сообщения? "</b>"</item>
+      <item quantity="many">"<b>"Удалить эти голосовые сообщения? "</b>"</item>
+      <item quantity="other">"<b>"Удалить эти голосовые сообщения? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> в <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Загрузка с SIM-карты…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Контакты на SIM-карте"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Нет приложения для работы с контактами"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Голосовой поиск недоступен"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Нельзя совершать телефонные звонки, поскольку приложение \"Телефон\" отключено."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Поиск в контактах"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Пропущенных вызовов: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Нет номеров для быстрого набора"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Настроить быстрый набор"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Нет контактов"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Добавить контакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Коснитесь изображения, чтобы увидеть все номера, или нажмите и удерживайте, чтобы изменить порядок"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Удалить"</string>
+    <string name="select_all" msgid="408601760696146245">"Выбрать все"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видеовстреча"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Отправить сообщение"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Сведения о вызове"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Заблокированные номера"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> уже заблокирован."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Аккаунты для звонков"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Включить"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Задать разрешения"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Чтобы настроить быстрый набор, предоставьте приложению разрешение \"Контакты\"."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Чтобы открыть список вызовов, предоставьте приложению разрешение \"Телефон\"."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Чтобы открыть список контактов, предоставьте приложению разрешение \"Контакты\"."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Чтобы получить доступ к голосовой почте, предоставьте приложению разрешение \"Телефон\"."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Для поиска контактов включите разрешение \"Контакты\"."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Чтобы позвонить, предоставьте приложению разрешение \"Телефон\"."</string>
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 329d89e..8a748d5 100644
--- a/java/com/android/dialer/app/res/values-si/strings.xml
+++ b/java/com/android/dialer/app/res/values-si/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"රැඳී සිටීම එක් කරන්න"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"සැකසීම්"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"සමාකෘතිය"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"නව UI කෙටිමග තනන්න"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"සියලුම සම්බන්ධතා"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ස්පර්ශ නාද යතුරුපෑඩය භාවිතා කරන්න"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"පවතින ඇමතුමට නැවත යන්න"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"ඇමතුමක් එක් කරන්න"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"එන ඇමතුම්"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"තොග ක්‍රියා ප්‍රකාරය ඇතුළු කරමින්"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"තොග ක්‍රියා ප්‍රකාරය හැර යන ලදී"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> තෝරා ගන්නා ලදී"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> තෝරා ගැනීම ඉවත් කරන ලදී"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"හඬ තැපෑල ධාවනය කිරීම"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> සම්බන්ධතාවය බලන්න"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> අමතන්න"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"හඬ තැපෑල"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"තත් <xliff:g id="SECONDS">%s</xliff:g>"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"මිනි <xliff:g id="MINUTES">%s</xliff:g> තත් <xliff:g id="SECONDS">%s</xliff:g>"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"හඬ තැපෑල"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"හඬ තැපැල්"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ඔව්"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"නැත"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"කාණ්ඩ ක්‍රියා ප්‍රකාරය අවලංගු කරන්න"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"මකන්න"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"අවලංගු කරන්න"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"තෝරා ගත් <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> මකන්නද?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> තෝරා ගන්නා ලදි"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"මෙම හඬ තැපැල් මකන්නද? "</b>"</item>
+      <item quantity="other">"<b>"මෙම හඬ තැපැල් මකන්නද? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> දින <xliff:g id="TIME">%2$s</xliff:g>ට"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM පතෙන් පූරණය කරමින්…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM පත් සම්බන්ධතා"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"සබඳතා යෙදුමක් ලබාගත නොහැකිය"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"හඬ සෙවුම ලබාගත නොහැකිය"</string>
     <string name="call_not_available" msgid="7850148370757361155">"දුරකථන යෙදුම අබල කර ඇති නිසා දුරකථන ඇමතුම ලබාගැනීම කළ නොහැක."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"සම්බන්ධතා සෙවීම"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"නව මඟ හැරුණු ඇමතුම් <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ඔබගේ වේග ඩයල් එකේ තවමත් කවුරුවත් නැහැ"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ප්‍රියතම ලෙස එක් කරන්න"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"ඔබ තවමත් සම්බන්ධතා නැහැ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"සම්බන්ධතාවයක් එක් කරන්න"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"සියලු අංක බැලීමට රූපය ස්පර්ශ කරන්න නැතහොත් නැවත අනුපිළිවෙළට සැකසීමට ස්පර්ශ කර අල්ලාගෙන සිටින්න"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ඉවත් කරන්න"</string>
+    <string name="select_all" msgid="408601760696146245">"සියල්ල තෝරන්න"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"වීඩියෝ ඇමතුම"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"පණිවිඩයක් යවන්න"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"ඇමතුම් විස්තර"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"අවහිර කළ අංක"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> දැනටමත් අවහිර කර ඇත."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"ගිණුම් ඇමතීම"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ක්‍රියාත්මක කරන්න"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"අවසර සකසන්න"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"වේග ඩයල් කිරීම සබල කිරීමට, සම්බන්ධතා අවසරය ක්‍රියාත්මක කරන්න."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"ඔබේ ඇමතුම් ලොගය බැලීමට, දුරකථන අවසරය ක්‍රියාත්මක කරන්න."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"ඔබේ සම්බන්ධතා බැලීමට, සම්බන්ධතා අවසරය ක්‍රියාත්මක කරන්න."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"ඔබේ හඬ තැපෑල වෙත ප්‍රවේශ වීමට, දුරකථන අවසරය ක්‍රියාත්මක කරන්න."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"ඔබේ සම්බන්ධතා සෙවීමට, සම්බන්ධතා අවසර ක්‍රියාත්මක කරන්න."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"ඇමතුමක් ලබා ගැනීමට, දුරකථන අවසරය ක්‍රියාත්මක කරන්න."</string>
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 60b63d5..e84febb 100644
--- a/java/com/android/dialer/app/res/values-sk/strings.xml
+++ b/java/com/android/dialer/app/res/values-sk/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Pridať čakanie"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Nastavenia"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulátor"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Vyt. skratku na nové rozhranie"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Všetky kontakty"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Použiť dotykovú tónovú klávesnicu"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Návrat k prebiehajúcemu hovoru"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Pridať hovor"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Prichádzajúce hovory"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Vstupuje sa do režimu hromadných akcií"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Odišli ste z režimu hromadných akcií"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Položka <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> bola vybraná"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Výber položky <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> bol zrušený"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Prehrať hlasovú správu"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Zobraziť kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Zavolať kontakt <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Hlasová schránka"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"hlasová správa"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"hlasové správy"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Áno"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nie"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Zrušiť režim hromadných akcií"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Odstrániť"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Zrušiť"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Chcete odstrániť vybraté položky (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Vybraté: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="few">"<b>"Chcete odstrániť tieto hlasové správy? "</b>"</item>
+      <item quantity="many">"<b>"Chcete odstrániť tieto hlasové správy? "</b>"</item>
+      <item quantity="other">"<b>"Chcete odstrániť tieto hlasové správy? "</b>"</item>
+      <item quantity="one">"<b>"Chcete odstrániť túto hlasovú správu? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> o <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Prebieha načítavanie z SIM karty..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakty na SIM karte"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nie je k dispozícii žiadna aplikácia na kontakty"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Hlasové vyhľadávanie nie je k dispozícii"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Nie je možné volať, pretože aplikácia Telefón bola deaktivovaná."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Hľadať v kontaktoch"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Nové zmeškané hovory: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"V rýchlej voľbe zatiaľ nemáte žiadny kontakt"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Pridať obľúbený kontakt"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Zatiaľ nemáte žiadne kontakty"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Pridať kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Klepnutím na obrázok môžete zobraziť všetky čísla. Pridržaním obrázka môžete zmeniť poradie."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Odstrániť"</string>
+    <string name="select_all" msgid="408601760696146245">"Vybrať všetko"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videohovor"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Odoslať správu"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Podrobnosti hovoru"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokované čísla"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Číslo <xliff:g id="NUMBER">%1$s</xliff:g> je už blokované."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Telefónne účty"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Zapnúť"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Nastaviť povolenia"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Ak chcete aktivovať rýchlu voľbu, zapnite povolenie Kontakty."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Ak si chcete zobraziť denník hovorov, zapnite povolenie Telefón."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Ak si chcete zobraziť kontakty, zapnite povolenie Kontakty."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Ak chcete používať hlasovú schránku, zapnite povolenie Telefón."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Ak chcete hľadať kontakty, zapnite povolenie Kontakty."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Ak chcete volať, zapnite povolenie Telefón."</string>
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 b46b99a..495b6e8 100644
--- a/java/com/android/dialer/app/res/values-sl/strings.xml
+++ b/java/com/android/dialer/app/res/values-sl/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Dodaj premor"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Nastavitve"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Ustvari bliž. za novi up. vm."</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Vsi stiki"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Uporabi številčnico za tonsko klicanje"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Nazaj na klic, ki poteka"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Dodaj klic"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Dohodni klici"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Prehod v način množičnega dejanja"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Prehod iz načina množičnega dejanja"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Izbrano: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Preklican izbor: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Predvajanje sporočil glasovne pošte"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Ogled stika <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Pokliči <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Glasovna pošta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> s"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> s"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"sporočilo v odzivniku"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"sporočila v odzivniku"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Da"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ne"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Prekliči način množičnega dejanja"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Izbriši"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Prekliči"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Želite izbrisati <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Št. izbranih: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Želite izbrisati ta sporočila v odzivniku? "</b>"</item>
+      <item quantity="two">"<b>"Želite izbrisati ta sporočila v odzivniku? "</b>"</item>
+      <item quantity="few">"<b>"Želite izbrisati ta sporočila v odzivniku? "</b>"</item>
+      <item quantity="other">"<b>"Želite izbrisati ta sporočila v odzivniku? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ob <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Nalaganje s kartice SIM ..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Stiki na kartici SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Ni aplikacije za stike"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Glasovno iskanje ni na voljo"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Ni mogoče opraviti telefonskega klica, ker je aplikacija Telefon onemogočena."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Iskanje stikov"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Št. novih zgrešenih klicev: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Na seznamu za hitro klicanje nimate še nikogar"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Dodajte priljubljenega"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Nimate še stikov"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Dodajte stik"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Dotaknite se slike, da prikažete vse številke, ali pa se je dotaknite in pridržite, da spremenite vrstni red."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Odstrani"</string>
+    <string name="select_all" msgid="408601760696146245">"Izberi vse"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videoklic"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Pošljite sporočilo"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Podrobnosti klica"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blokirane številke"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Telefonska številka <xliff:g id="NUMBER">%1$s</xliff:g> je že blokirana."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Računi za klicanje"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Vklop"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Nastavi dovoljenja"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Če želite omogočiti hitro klicanje, vklopite dovoljenje za stike."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Če si želite ogledati dnevnik klicev, vklopite dovoljenje za telefon."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Če si želite ogledati stike, vklopite dovoljenje za stike."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Če želite dostopati do sporočil v odzivniku, vklopite dovoljenje za telefon."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Če želite iskati po stikih, vklopite dovoljenje za stike."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Če želite klicati, vklopite dovoljenje za telefon."</string>
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 6a274fc..809fd8a 100644
--- a/java/com/android/dialer/app/res/values-sq/strings.xml
+++ b/java/com/android/dialer/app/res/values-sq/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Shto një pritje"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Cilësimet"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simuluesi"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Krijo një shkurtore për ndërfaqen e re të përdoruesit"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Të gjitha kontaktet"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Përdor bllokun e tasteve"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Kthehu te telefonata"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Shto një telefonatë"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Telefonatat hyrëse"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Po hyn në modalitetin e veprimit në masë"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"U largove nga modaliteti i veprimit në masë"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"U zgjodh <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Zgjedhja e <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> u anulua"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Luaj postën zanore"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Shiko kontaktin <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Telefono <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Posta zanore"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sekonda"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min. e <xliff:g id="SECONDS">%s</xliff:g> sek."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"posta zanore"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"postat zanore"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Po"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Jo"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Anulo modalitetin e veprimeve në grup"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Fshi"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Anulo"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Të fshihen <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> të zgjedhura?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> të zgjedhura"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Të fshihen këto posta zanore? "</b>"</item>
+      <item quantity="one">"<b>"Të fshihet kjo postë zanore? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> në <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Po ngarkon nga karta SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontaktet e kartës SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Nuk mund të përdoret asnjë aplikacion për kontaktet"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Kërkimi me zë nuk mundësohet"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefonata nuk mund të bëhet sepse aplikacioni \"Telefoni\" është i çaktivizuar."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Kërko për kontakte"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> telefonata të reja të humbura"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Askush nuk është ende në thirrjen tënde të shpejtuar"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Shto një të preferuar"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Nuk ke ende kontakte"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Shto një kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Prek imazhin për të parë të gjithë numrat ose mbaje të shtypur për ta pozicionuar përsëri"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Hiq"</string>
+    <string name="select_all" msgid="408601760696146245">"Zgjidh të gjitha"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Telefonatë me video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Dërgo një mesazh"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Detajet e telefonatës"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Numrat e bllokuar"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> është i bllokuar tashmë."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Llogaritë e telefonatave"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktivizo"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Cakto lejet"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Për të aktivizuar thirrjen e shpejtuar, aktivizo lejen e Kontakteve."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Për të parë evidencën e telefonatave, aktivizo lejen e Telefonit."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Për të parë kontaktet, aktivizo lejen e Kontakteve."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Për të pasur qasje në postën zanore, aktivizo lejen e Telefonit."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Për të kërkuar kontaktet, aktivizo lejet e Kontakteve"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Për të kryer një telefonatë, aktivizo lejen e Telefonit."</string>
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 0def958..6f85c0b 100644
--- a/java/com/android/dialer/app/res/values-sr/strings.xml
+++ b/java/com/android/dialer/app/res/values-sr/strings.xml
@@ -81,11 +81,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Додај чекање"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Подешавања"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулатор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Направите пречицу за нови UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Сви контакти"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Употребите бројчаник за тонско бирање"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Врати се на позив који је у току"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Додај позив"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Долазни позиви"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Улазите у режим групних радњи"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Изашли сте из режима групних радњи"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Изабрано је <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Опозван је избор <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Пуштање говорне поште"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Прикажи контакт <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Позови <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -100,11 +105,16 @@
     <string name="voicemail" msgid="8899540969000957954">"Говорна пошта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> сек"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> мин <xliff:g id="SECONDS">%s</xliff:g> сек"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"говорну поруку"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"говорне поруке"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Да"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Не"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Откажите режим групних радњи"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Избриши"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Откажи"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Желите ли да избришете изабрану(е) <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Изабраних: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Желите ли да избришете ове говорне поруке? "</b>"</item>
+      <item quantity="few">"<b>"Желите ли да избришете ове говорне поруке? "</b>"</item>
+      <item quantity="other">"<b>"Желите ли да избришете ове говорне поруке? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> у <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -117,7 +127,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Учитава се са SIM картице…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Контакти на SIM картици"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Нема доступне апликације за контакте"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Гласовна претрага није доступна"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Није могуће упутити телефонски позив јер је апликација Телефон онемогућена."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Претражи контакте"</string>
@@ -146,10 +155,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Нових пропуштених позива: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Немате ниједан контакт на брзом бирању"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Додај омиљен контакт"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Још увек немате ниједан контакт"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Додај контакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Додирните слику да бисте видели све бројеве или додирните и задржите да бисте им променили распоред"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Уклони"</string>
+    <string name="select_all" msgid="408601760696146245">"Изабери све"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Видео позив"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Пошаљи поруку"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Детаљи позива"</string>
@@ -215,11 +223,9 @@
     <string name="block_list" msgid="4701585783411870782">"Блокирани бројеви"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> је већ блокиран."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Налози за позивање"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Укључи"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Подеси дозволе"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Да бисте омогућили брзо бирање, укључите дозволу за Контакте."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Да бисте видели евиденцију позива, укључите дозволу за Телефон."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Да бисте видели контакте, укључите дозволу за Контакте."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Да бисте приступили говорној пошти, укључите дозволу за Телефон."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Да бисте претражили контакте, укључите дозволе за Контакте."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Да бисте упутили позив, укључите дозволу за Телефон."</string>
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 75aa731..e8446ca 100644
--- a/java/com/android/dialer/app/res/values-sv/strings.xml
+++ b/java/com/android/dialer/app/res/values-sv/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Lägg till väntetid"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Inställningar"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Skapa genväg till anv.gränssn."</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Alla kontakter"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Använd tonvalstelefon"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Återvänd till pågående samtal"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Lägg t. samt."</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Inkommande samtal"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Öppnar läget för massåtgärd"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Stängde läget för massåtgärd"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Markerade <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Avmarkerade <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Spela upp röstmeddelande"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Visa kontakten <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ring <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Röstbrevlåda"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sekund"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sek"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"röstbrevlåda"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"röstmeddelanden"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ja"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Nej"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Avbryt läget för massåtgärd"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Radera"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Avbryt"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Vill du radera markerade <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> har markerats"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Vill du ta bort dessa röstmeddelanden? "</b>"</item>
+      <item quantity="one">"<b>"Vill du ta bort det här röstmeddelandet? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> kl. <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Läser in från SIM-kort…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Kontakter från SIM-kort"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Det finns inga appar för kontakter"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Röstsökning är inte tillgänglig"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Det går inte att ringa eftersom appen Telefon har inaktiverats."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Sök efter kontakter"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> nya missade samtal"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Du har ingen kontakt som snabbval ännu"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Lägg till en favorit"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Du har inga kontakter ännu"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Lägg till en kontakt"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tryck på bilden för att visa alla nummer eller tryck länge för att ändra ordningen"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Ta bort"</string>
+    <string name="select_all" msgid="408601760696146245">"Markera alla"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Videosamtal"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Skicka ett meddelande"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Samtalsinfo"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Blockerade nummer"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> är redan blockerat."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Konton för samtal"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aktivera"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Ange behörigheter"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Du måste aktivera behörigheten Kontakter för att kunna använda snabbuppringning."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Du måste aktivera behörigheten Telefon för att kunna visa samtalsloggen."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Du måste aktivera behörigheten Kontakter för att kunna visa kontakterna."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Du måste aktivera behörigheten Telefon för att kunna komma åt röstmeddelanden."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Aktivera behörigheter för Kontakter om du vill söka bland kontakterna."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Du måste aktivera behörigheten Telefon för att kunna ringa."</string>
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 d3b8392..142aaf0 100644
--- a/java/com/android/dialer/app/res/values-sw/strings.xml
+++ b/java/com/android/dialer/app/res/values-sw/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Ongeza kusubiri"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Mipangilio"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Kielelezo"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Unda Mkato Mpya wa Kiolesura"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Anwani zote"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Tumia kibao cha kuchapa cha sauti na kugusa"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Rudi kwa simu inayoendelea"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Ongeza simu"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Simu zinazoingia"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Unaingia katika hali ya kutekeleza vitendo vingi"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Umeondoka katika hali ya kutekeleza vitendo vingi"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Umeteua <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Umebatilisha uteuzi wa <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Sikiliza ujumbe wa sauti"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Angalia anwani <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Pigia <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Ujumbe wa sauti"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"Sekunde <xliff:g id="SECONDS">%s</xliff:g>"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"Dak <xliff:g id="MINUTES">%s</xliff:g> sek <xliff:g id="SECONDS">%s</xliff:g>"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ujumbe wa sauti"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ujumbe wa sauti"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ndiyo"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Hapana"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Ghairi hali ya kutekeleza vitendo vingi"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Futa"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Ghairi"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Je, ungependa kufuta <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> uliochagua?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> zimechaguliwa"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Je, unataka kufuta kila ujumbe wa sauti ulioonyeshwa? "</b>"</item>
+      <item quantity="one">"<b>"Je, unataka kufuta ujumbe huu wa sauti? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> saa <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Inapakia kutoka SIM kadi..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Anwani za SIM kadi"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Hakuna programu za mawasiliano zinazopatikana"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Kutafuta kwa kutamka hakupatikani"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Haiwezi kupiga simu kwa sababu programu ya Simu imezimwa."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Tafuta anwani"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Simu <xliff:g id="NUMBER">%s</xliff:g> za karibuni ambazo hazikujibiwa"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Hakuna mtu aliye katika orodha yako ya watu unaowasiliana nao zaidi"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Ongeza anwani unazopenda zaidi"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Bado huna anwani zozote"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Ongeza anwani"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Gusa picha ili uone nambari zote ama uguse na kushikilia ili upange upya"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Ondoa"</string>
+    <string name="select_all" msgid="408601760696146245">"Chagua zote"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Hangout ya Video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Tuma SMS"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Maelezo ya simu"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Nambari zilizozuiwa"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> tayari imezuiwa."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Akaunti za simu"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Washa"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Weka ruhusa"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Ili kuwasha kipengele cha unaowasiliana nao zaidi, washa ruhusa ya Anwani."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Ili uone rekodi yako ya nambari za simu, washa ruhusa ya Simu."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Ili uone anwani zako, washa ruhusa ya Anwani."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Ili ufikie ujumbe wako wa sauti, washa ruhusa ya Simu."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Ili utafute anwani zako, washa ruhusa za Anwani."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Ili upige simu, washa ruhusa ya Simu."</string>
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 afb852b..e270a3c 100644
--- a/java/com/android/dialer/app/res/values-ta/strings.xml
+++ b/java/com/android/dialer/app/res/values-ta/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"காத்திருப்பைச் சேர்"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"அமைப்பு"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"சிமுலேட்டர்"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"புதிய UI குறுக்குவழியை உருவாக்கு"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"எல்லா தொடர்புகளும்"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"டச் டோன் விசைப்பலகையைப் பயன்படுத்தவும்"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"செயலிலுள்ள அழைப்பிற்குத் திரும்பு"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"அழைப்பைச் சேர்"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"உள்வரும் அழைப்புகள்"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"மொத்தச் செயல் பயன்முறையில் நுழைகிறீர்கள்"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"மொத்தச் செயல் பயன்முறையிலிருந்து வெளியேறிவிட்டீர்கள்"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"தேர்ந்தெடுத்த <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"தேர்வுநீக்கிய <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"குரலஞ்சலை இயக்கு"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> தொடர்பைக் காட்டு"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> ஐ அழை"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"குரலஞ்சல்"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> வி"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> நிமிடம் <xliff:g id="SECONDS">%s</xliff:g> வினாடி"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"குரலஞ்சல்"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"குரலஞ்சல்கள்"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ஆம்"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"வேண்டாம்"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"தொகுப்புச் செயல்கள் பயன்முறையை ரத்துசெய்யும்"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"நீக்கு"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ரத்துசெய்"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"தேர்ந்தெடுத்த <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>ஐ நீக்கவா?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> தேர்ந்தெடுக்கப்பட்டன"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"இந்தக் குரலஞ்சல்களை நீக்கவா? "</b>"</item>
+      <item quantity="one">"<b>"இந்தக் குரலஞ்சலை நீக்கவா? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> அன்று <xliff:g id="TIME">%2$s</xliff:g> மணிக்கு"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"சிம் கார்டிலிருந்து ஏற்றுகிறது…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"சிம் கார்டின் தொடர்புகள்"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"தொடர்புகள் பயன்பாடு எதுவுமில்லை"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"குரல் தேடல் இல்லை"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Phone பயன்பாடு முடக்கப்பட்டுள்ளதால், ஃபோன் அழைப்பைச் செய்ய முடியாது."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"தொடர்புகளைத் தேடு"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> புதிய தவறிய அழைப்புகள்"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"இன்னும் விரைவு டயலில் யாரையும் சேர்க்கவில்லை"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"முக்கியமானவர்களைச் சேர்"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"இதுவரை எந்தத் தொடர்புகளும் இல்லை"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ஒரு தொடர்பைச் சேர்க்கவும்"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"எல்லா எண்களையும் பார்க்க, படத்தைத் தொடவும் அல்லது மறுவரிசைப்படுத்த, தொட்டுப் பிடித்திருக்கவும்"</string>
     <string name="remove_contact" msgid="2353580570488923668">"அகற்று"</string>
+    <string name="select_all" msgid="408601760696146245">"அனைத்தையும் தேர்ந்தெடு"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"வீடியோ அழைப்பு"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"செய்தி அனுப்பவும்"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"அழைப்பு விவரங்கள்"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"தடுக்கப்பட்ட எண்கள்"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ஏற்கனவே தடுக்கப்பட்டுள்ளது."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"அழைப்பு கணக்குகள்"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"இயக்கு"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"அனுமதிகளை அமை"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"விரைவு டயலை இயக்க, தொடர்புகள் அனுமதியை இயக்கவும்."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"அழைப்புப் பதிவைப் பார்க்க, ஃபோன் அனுமதியை இயக்கவும்."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"தொடர்புகளைப் பார்க்க, தொடர்புகள் அனுமதியை இயக்கவும்."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"குரலஞ்சலை அணுக, ஃபோன் அனுமதியை இயக்கவும்."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"தொடர்புகளைத் தேட, தொடர்புகள் அனுமதிகளை இயக்கவும்."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"அழைக்க, ஃபோன் அனுமதியை இயக்கவும்."</string>
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 ffc046f..8d2c667 100644
--- a/java/com/android/dialer/app/res/values-te/strings.xml
+++ b/java/com/android/dialer/app/res/values-te/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"నిరీక్షణ సమయాన్ని జోడించు"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"సెట్టింగ్‌లు"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"సిములేటర్"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"కొత్త UI సత్వరమార్గం సృష్టించు"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"అన్ని పరిచయాలు"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"టచ్ టోన్ కీప్యాడ్‌ను ఉపయోగించండి"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"ప్రోగ్రెస్‌లో ఉన్న కాల్‌కు వెళ్లు"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"కాల్‌ను జోడించు"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"ఇన్‌కమింగ్ కాల్‌లు"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"బల్క్ చర్య మోడ్‌లోకి ప్రవేశిస్తున్నారు"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"బల్క్ చర్య మోడ్ నుండి నిష్క్రమించారు"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ఎంచుకోబడింది"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ఎంపిక తీసివేయబడింది"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"వాయిస్ మెయిల్ ప్లే చేయండి"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> పరిచయాన్ని వీక్షించండి"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g>కు కాల్ చేయి"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"వాయిస్ మెయిల్"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> సెక"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> నిమి <xliff:g id="SECONDS">%s</xliff:g> సెక"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"వాయిస్ మెయిల్"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"వాయిస్ మెయిల్‌లు"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"అవును"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"వద్దు"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"సమూహ చర్యల మోడ్‌ను రద్దు చేస్తుంది"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"తొలగించు"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"రద్దు చేయి"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ఎంచుకున్న <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>ను తొలగించాలా?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ఎంచుకోబడ్డాయి"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ఈ వాయిస్ మెయిల్‌లను తొలగించాలా? "</b>"</item>
+      <item quantity="one">"<b>"ఈ వాయిస్ మెయిల్‌ను తొలగించాలా? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> <xliff:g id="TIME">%2$s</xliff:g>కి"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"సిమ్ కార్డు నుండి లోడ్ చేస్తోంది…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"సిమ్ కార్డు పరిచయాలు"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"పరిచయాల అనువర్తనం ఏదీ అందుబాటులో లేదు"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"వాయిస్ శోధన అందుబాటులో లేదు"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ఫోన్ అనువర్తనం నిలిపివేయబడినందున ఫోన్ కాల్ చేయలేరు."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"పరిచయాలను శోధించు"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> కొత్త సమాధానం ఇవ్వని కాల్‌లు"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"మీ స్పీడ్ డయల్‌లో ఇంకా ఎవరూ లేరు"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ఇష్టమైన వారిని జోడించండి"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"మీకు ఇప్పటికీ పరిచయాలేవీ లేవు"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"పరిచయాన్ని జోడించండి"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"అన్ని నంబర్‌లను చూడటానికి చిత్రాన్ని తాకండి లేదా క్రమం మార్చడానికి తాకి, కాసేపు అలాగే ఉంచండి"</string>
     <string name="remove_contact" msgid="2353580570488923668">"తీసివేయి"</string>
+    <string name="select_all" msgid="408601760696146245">"అన్నీ ఎంచుకోండి"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"వీడియో కాల్"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"సందేశాన్ని పంపు"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"కాల్ వివరాలు"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"బ్లాక్ చేయబడిన నంబర్‌లు"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ఇప్పటికే బ్లాక్ చేయబడింది."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"కాల్ చేసే ఖాతాలు"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"ఆన్ చేయి"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"అనుమతులను సెట్ చేయి"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"స్పీడ్ డయల్‌ను ప్రారంభించడానికి, పరిచయాల అనుమతిని ఆన్ చేయండి."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"మీ కాల్ లాగ్‌ను చూడటానికి, ఫోన్ అనుమతిని ఆన్ చేయండి."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"మీ పరిచయాలను చూడటానికి, పరిచయాల అనుమతిని ఆన్ చేయండి."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"మీ వాయిస్ మెయిల్‌ను ప్రాప్యత చేయడానికి, ఫోన్ అనుమతిని ఆన్ చేయండి."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"మీ పరిచయాలను శోధించడానికి, పరిచయాల అనుమతులను ఆన్ చేయండి."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"కాల్ చేయడానికి, ఫోన్ అనుమతిని ఆన్ చేయండి."</string>
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 13916a5..76a66e2 100644
--- a/java/com/android/dialer/app/res/values-th/strings.xml
+++ b/java/com/android/dialer/app/res/values-th/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"เพิ่มการรอ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"การตั้งค่า"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"เครื่องมือจำลอง"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"สร้างทางลัด UI ใหม่"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"รายชื่อติดต่อทั้งหมด"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ใช้ปุ่มกดสัญญาณเสียง"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"กลับไปคุยสายต่อ"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"เพิ่มการโทร"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"สายโทรเข้า"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"กำลังเข้าสู่โหมดการดำเนินการแบบกลุ่ม"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"ออกจากโหมดการทำงานแบบกลุ่มแล้ว"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"เลือก <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> แล้ว"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"ยกเลิกการเลือก <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> แล้ว"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"เล่นข้อความเสียง"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"ดูรายชื่อติดต่อ <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"โทรหา <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"ข้อความเสียง"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> วินาที"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> นาที <xliff:g id="SECONDS">%s</xliff:g> วินาที"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ข้อความเสียง"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ข้อความเสียง"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ใช่"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"ไม่"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"ยกเลิกโหมดการทำงานแบบกลุ่ม"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"ลบ"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"ยกเลิก"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"ลบ<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>ที่เลือกหรือไม่"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"เลือกไว้ <xliff:g id="NUMBER">%1$s</xliff:g> รายการ"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ลบข้อความเสียงเหล่านี้ไหม "</b>"</item>
+      <item quantity="one">"<b>"ลบข้อความเสียงนี้ไหม "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"วันที่ <xliff:g id="DATE">%1$s</xliff:g> เวลา <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"กำลังโหลดจากซิมการ์ด…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"รายชื่อบนซิมการ์ด"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"ไม่มีแอปรายชื่อติดต่อที่พร้อมใช้งาน"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"การค้นหาด้วยเสียงไม่พร้อมใช้งาน"</string>
     <string name="call_not_available" msgid="7850148370757361155">"ไม่สามารถโทรศัพท์ได้เนื่องจากแอปพลิเคชันโทรศัพท์ถูกปิดใช้งาน"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"ค้นหารายชื่อติดต่อ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"สายที่ไม่ได้รับใหม่ <xliff:g id="NUMBER">%s</xliff:g> สาย"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"ยังไม่ได้กำหนดผู้ใดในการโทรด่วน"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"เพิ่มรายการโปรด"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"คุณยังไม่มีรายชื่อติดต่อ"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"เพิ่มรายชื่อติดต่อ"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"แตะรูปภาพเพื่อดูหมายเลขทั้งหมด หรือแตะค้างไว้เพื่อจัดเรียงใหม่"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ลบ"</string>
+    <string name="select_all" msgid="408601760696146245">"เลือกทั้งหมด"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"แฮงเอาท์วิดีโอ"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"ส่งข้อความ"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"รายละเอียดการโทร"</string>
@@ -201,7 +208,7 @@
     <string name="voicemail_settings_label" msgid="4594299554519920570">"ข้อความเสียง"</string>
     <string name="voicemail_settings_select_sim_title" msgid="129296966967476845">"เลือกซิมสำหรับการตั้งค่าข้อความเสียง"</string>
     <string name="blocked_numbers_disabled_emergency_header_label" msgid="6936696532562923971">"การบล็อกสายเรียกเข้าปิดชั่วคราว"</string>
-    <string name="blocked_numbers_disabled_emergency_desc" msgid="5484785225285297040">"ระบบปิดใช้การบล็อกสายเรียกเข้าเนื่องจากคุณติดต่อบริการฉุกเฉินจากโทรศัพท์เครื่องนี้ภายใน 48 ชั่วโมงที่ผ่านมา ระบบจะเปิดใช้คุณลักษณะนี้อีกครั้งโดยอัตโนมัติเมื่อครบ 48 ชั่วโมง"</string>
+    <string name="blocked_numbers_disabled_emergency_desc" msgid="5484785225285297040">"ระบบปิดใช้การบล็อกสายเรียกเข้าเนื่องจากคุณติดต่อบริการฉุกเฉินจากโทรศัพท์เครื่องนี้ภายใน 48 ชั่วโมงที่ผ่านมา ระบบจะเปิดใช้ฟีเจอร์นี้อีกครั้งโดยอัตโนมัติเมื่อครบ 48 ชั่วโมง"</string>
     <string name="import_send_to_voicemail_numbers_label" msgid="7821890095264297681">"นำเข้าหมายเลข"</string>
     <string name="blocked_call_settings_import_description" msgid="1819412052545228965">"ก่อนหน้านี้คุณได้ทำเครื่องหมายว่าให้ส่งผู้โทรบางคนไปยังข้อความเสียงโดยอัตโนมัติผ่านแอปอื่นๆ"</string>
     <string name="blocked_call_settings_view_numbers_button" msgid="3332727948554356704">"ดูหมายเลข"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"หมายเลขที่ถูกบล็อก"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> ถูกบล็อกอยู่แล้ว"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"บัญชีการโทร"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"เปิด"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"ตั้งค่าสิทธิ์"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"หากต้องการเปิดใช้การโทรด่วน ให้เปิดสิทธิ์เข้าถึงรายชื่อติดต่อ"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"หากต้องการดูประวัติการโทร ให้เปิดสิทธิ์เข้าถึงโทรศัพท์"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"หากต้องการดูรายชื่อติดต่อ ให้เปิดสิทธิ์เข้าถึงรายชื่อติดต่อ"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"หากต้องการเข้าถึงข้อความเสียง ให้เปิดสิทธิ์เข้าถึงโทรศัพท์"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"หากต้องการค้นหารายชื่อติดต่อ ให้เปิดสิทธิ์เข้าถึงรายชื่อติดต่อ"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"หากต้องการโทรออก ให้เปิดสิทธิ์เข้าถึงโทรศัพท์"</string>
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 cc44cb5..51e7a66 100644
--- a/java/com/android/dialer/app/res/values-tl/strings.xml
+++ b/java/com/android/dialer/app/res/values-tl/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Magdagdag ng paghihintay"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Mga Setting"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Gawa ng Shortcut ng Bagong UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Lahat ng mga contact"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Gumamit ng touch tone na keypad"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Bumalik sa kasalukuyang tawag"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Mag-add: tawag"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Mga paparating na tawag"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Pumapasok sa bulk action mode"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Umalis sa bulk action mode"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Napili <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Inalis sa pagkakapili <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"I-play ang voicemail"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Tingnan ang contact na si <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Tawagan si <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Voicemail"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sec"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> min <xliff:g id="SECONDS">%s</xliff:g> sec"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"voicemail"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"mga voicemail"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Oo"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Hindi"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Kanselahin ang batch actions mode"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"I-delete"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Kanselahin"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"I-delete ang napiling <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> ang napili"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"I-delete ang mga voicemail na ito? "</b>"</item>
+      <item quantity="other">"<b>"I-delete ang mga voicemail na ito? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ng <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Naglo-load mula sa SIM card…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Mga contact sa SIM card"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Walang available na app ng mga contact"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Hindi available ang paghahanap gamit ang boses"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Hindi makagawa ng tawag sa telepono dahil naka-disable ang application na Telepono."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Maghanap ng mga contact"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> (na) bagong hindi nasagot na tawag"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Wala pang tao sa iyong speed dial"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Magdagdag ng paborito"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Wala ka pang sinumang mga contact"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Magdagdag ng contact"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Pindutin ang larawan upang makita ang lahat ng numero o pindutin nang matagal upang ayusing muli"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Alisin"</string>
+    <string name="select_all" msgid="408601760696146245">"Piliin lahat"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Mag-video call"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Magpadala ng mensahe"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Mga detalye ng tawag"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Mga naka-block na numero"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Naka-block na ang <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Account sa pagtawag"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"I-on"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Magtakda ng mga pahintulot"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Upang i-enable ang speed dial, i-on ang pahintulot ng Mga Contact."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Upang makita ang iyong log ng tawag, i-on ang pahintulot ng Telepono."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Upang makita ang iyong mga contact, i-on ang pahintulot ng Mga Contact."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Upang ma-access ang iyong voicemail, i-on ang pahintulot ng Telepono."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Upang hanapin ang iyong mga contact, i-on ang mga pahintulot sa Mga Contact."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Upang tumawag, i-on ang pahintulot ng Telepono."</string>
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 2f6f704..1ff0128 100644
--- a/java/com/android/dialer/app/res/values-tr/strings.xml
+++ b/java/com/android/dialer/app/res/values-tr/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Bekleme ekle"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Ayarlar"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simülatör"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Kull. Arayüzü Kısayolu Oluştur"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tüm kişiler"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Telefon tuş takımını kullan"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Çağrıya dön"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Çağrı ekle"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Gelen çağrılar"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Toplu işlem moduna giriliyor"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Toplu işlem modundan çıkıldı"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Seçildi: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Seçimi kaldırıldı: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Sesli mesajı oynat"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Kişiyi görüntüle: <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Ara: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Sesli Mesaj"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> sn."</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> dk. <xliff:g id="SECONDS">%s</xliff:g> sn."</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"sesli mesaj"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"sesli mesajlar"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Evet"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Hayır"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Toplu işlemler modu iptal edilir"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Sil"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"İptal"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Seçili <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> silinsin mi?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> öğe seçildi"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Bu sesli mesajlar silinsin mi? "</b>"</item>
+      <item quantity="one">"<b>"Bu sesli mesaj silinsin mi? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM karttan yükleniyor..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM kart kişileri"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Kullanılabilir rehber uygulaması yok"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Sesli arama kullanılamaz"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefon uygulaması devre dışı bırakıldığından telefon edilemiyor."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Kişilerde ara"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> yeni cevapsız çağrı"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Hızlı arama listenizde henüz kimse yok"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Favori ekle"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Henüz kayıtlı kişi yok"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Kişi ekle"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Tüm numaraları görmek için resme dokunun veya yeniden sıralamak için dokunup basılı tutun"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Kaldır"</string>
+    <string name="select_all" msgid="408601760696146245">"Tümünü seç"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video görüşmesi"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"İleti gönder"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Çağrı ayrıntıları"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Engellenen numaralar"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> numaralı telefon zaten engellendi."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Çağrı hesapları"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Aç"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"İzinleri ayarla"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Hızlı aramayı etkinleştirmek için Kişiler iznini açın."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Çağrı günlüğünüzü görmek için Telefon iznini açın."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kişilerinizi görmek için Kişiler iznini açın."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Sesli mesajınıza erişmek için Telefon iznini açın."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kişilerinizde arama yapmak için Kişiler izinlerini açın."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Telefon etmek için Telefon iznini açın."</string>
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 9a79012..b92970d 100644
--- a/java/com/android/dialer/app/res/values-uk/strings.xml
+++ b/java/com/android/dialer/app/res/values-uk/strings.xml
@@ -82,11 +82,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Додати паузу"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Налаштування"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Симулятор"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Створити ярлик для нової дії"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Усі контакти"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Використовувати тональний набір"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Повернутися до поточного виклику"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Додати виклик"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Вхідні виклики"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Перехід у режим масових дій"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Ви вийшли з режиму масових дій"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Вибрано користувача <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Скасовано вибір користувача <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Відтворити голосову пошту"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Переглянути контакт <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Набрати <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -101,11 +106,17 @@
     <string name="voicemail" msgid="8899540969000957954">"Голосова пошта"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> с"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> хв <xliff:g id="SECONDS">%s</xliff:g> с"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"голосова пошта"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"голосова пошта"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Так"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Ні"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Скасувати режим масових дій"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Видалити"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Скасувати"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Видалити вибране (<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>)?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Вибрано <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Видалити ці повідомлення голосової пошти? "</b>"</item>
+      <item quantity="few">"<b>"Видалити ці повідомлення голосової пошти? "</b>"</item>
+      <item quantity="many">"<b>"Видалити ці повідомлення голосової пошти? "</b>"</item>
+      <item quantity="other">"<b>"Видалити ці повідомлення голосової пошти? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> о <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -118,7 +129,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Завантаж. із SIM-карти…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Контакти SIM-карти"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Немає додатка з контактами"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Голосовий пошук недоступний"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Не вдається здійснити дзвінок, оскільки додаток Телефон вимкнено."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Пошук контактів"</string>
@@ -147,10 +157,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"Нових пропущених дзвінків: <xliff:g id="NUMBER">%s</xliff:g>"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Немає номерів для швидкого набору"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Додати номер"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Ще немає контактів"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Додати контакт"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Торкніться зображення, щоб побачити всі номери, або натисніть і утримуйте, щоб змінити порядок."</string>
     <string name="remove_contact" msgid="2353580570488923668">"Видалити"</string>
+    <string name="select_all" msgid="408601760696146245">"Вибрати все"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Відеодзвінок"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Надіслати повідомлення"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Деталі виклику"</string>
@@ -217,11 +226,9 @@
     <string name="block_list" msgid="4701585783411870782">"Заблоковані номери"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"Номер <xliff:g id="NUMBER">%1$s</xliff:g> уже заблоковано."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Обл. записи для дзвінків"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Увімкнути"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Налаштувати дозволи"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Щоб активувати швидкий набір, увімкніть дозвіл \"Контакти\"."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Щоб переглянути журнал викликів, увімкніть дозвіл \"Телефон\"."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Щоб переглянути контакти, увімкніть дозвіл \"Контакти\"."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Щоб користуватися голосовою поштою, увімкніть дозвіл \"Телефон\"."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Щоб шукати контакти, увімкніть дозвіл \"Контакти\"."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Щоб зателефонувати, увімкніть дозвіл \"Телефон\"."</string>
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 2519871..cb2eb9e 100644
--- a/java/com/android/dialer/app/res/values-ur/strings.xml
+++ b/java/com/android/dialer/app/res/values-ur/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"انتظار شامل کریں"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"ترتیبات"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"‏نیا UI شارٹ کٹ تخلیق کریں"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"سبھی رابطے"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"ٹچ ٹون کی پیڈ کا استعمال کریں"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"جاری کال پر واپس لوٹیں"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"کال شامل کریں"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"آنے والی کالیں"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"بلک کاروائی موڈ میں داخل ہو رہا ہے"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"بلک کاروائی موڈ چھوڑ دیا"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"منتخب کردہ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"غیر منتخب کردہ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"صوتی میل چلائیں"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"رابطہ <xliff:g id="NAME">%1$s</xliff:g> دیکھیں"</string>
     <string name="description_call" msgid="1532402285334775372">"<xliff:g id="NAME">%1$s</xliff:g> کو کال کریں"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"صوتی میل"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> سیکنڈ"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> منٹ <xliff:g id="SECONDS">%s</xliff:g> سیکنڈ"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"صوتی میل"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"صوتی میلز"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"ہاں"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"نہیں"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"بیچ کاروائی موڈ منسوخ کریں"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"حذف کریں"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"منسوخ کریں"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"منتخب کردہ <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> حذف کریں؟"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"<xliff:g id="NUMBER">%1$s</xliff:g> منتخب کردہ"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"ان صوتی میلز کو حذف کریں؟ "</b>"</item>
+      <item quantity="one">"<b>"اس صوتی میل کو حذف کریں؟ "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> بوقت <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"‏SIM کارڈ سے لوڈ ہو رہا ہے…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"‏SIM کارڈ کے رابطے"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"رابطوں کی کوئی ایپ دستیاب نہیں ہے"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"صوتی تلاش دستیاب نہیں ہے"</string>
     <string name="call_not_available" msgid="7850148370757361155">"فون کال نہیں کی جا سکتی ہے کیونکہ فون ایپلیکیشن کو غیر فعال کر دیا گیا ہے۔"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"رابطے تلاش کریں"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> نئی چھوٹی ہوئی کالیں"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"آپ کے اسپیڈ ڈائل پر ابھی تک کوئی نہیں ہے"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"ایک پسندیدہ شامل کریں"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"آپ کے پاس ابھی تک کوئی رابطے نہیں ہیں"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"ایک رابطہ شامل کریں"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"سبھی نمبرز دیکھنے کیلئے تصویر ٹچ کریں یا دوبارہ ترتیب دینے کیلئے ٹچ کریں اور پکڑے رہیں"</string>
     <string name="remove_contact" msgid="2353580570488923668">"ہٹائیں"</string>
+    <string name="select_all" msgid="408601760696146245">"سبھی کو منتخب کریں"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"ویڈیو کال"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"پیغام بھیجیں"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"کال کی تفصیلات"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"مسدود کردہ نمبرز"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> پہلے ہی مسدود ہے۔"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"کالنگ اکاؤنٹس"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"آن کریں"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"اجازتیں طے کریں"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"اسپیڈ ڈائل کو فعال کرنے کیلئے رابطوں کی اجازت آن کریں۔"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"اپنا کال لاگ دیکھنے کیلئے فون کی اجازت آن کریں۔"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"اپنے رابطے دیکھنے کیلئے رابطوں کی اجازت آن کریں۔"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"اپنی صوتی میل تک رسائی کیلئے فون کی اجازت آن کریں۔"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"اپنے رابطوں کو تلاش کرنے کیلئے رابطوں کی اجازتیں آن کریں۔"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"کال کرنے کیلئے فون کی اجازت آن کریں۔"</string>
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 705cae7..c7d08f3 100644
--- a/java/com/android/dialer/app/res/values-uz/strings.xml
+++ b/java/com/android/dialer/app/res/values-uz/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Kutishni qo‘shish"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Sozlamalar"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Simulyator"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Yangi interfeys uchun yorliq"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Barcha kontaktlar"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Tovushli raqam tergich"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Amaldagi chaqiruvga qaytish"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Chaqiruv qo‘shish"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Kiruvchi qo‘ng‘iroqlar"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Yoppasiga bajariladigan amallar rejimiga o‘tilmoqda"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Yoppasiga bajariladigan amallar rejimidan chiqib ketildi"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> tanlandi"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> tanlovi bekor qilindi"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Ovozli xabarni eshitish"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"<xliff:g id="NAME">%1$s</xliff:g> kontaktini ko‘rish"</string>
     <string name="description_call" msgid="1532402285334775372">"Qo‘ng‘iroq: <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Ovozli pochta"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> soniya"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> daq <xliff:g id="SECONDS">%s</xliff:g> son"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ovozli xabar"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ovozli xabarlar"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Ha"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Yo‘q"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Yoppasiga bajariladigan amallar rejimini bekor qilish"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"O‘chirish"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Bekor qilish"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Tanlangan <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> o‘chirib tashlansinmi?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Tanlandi: <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Bu ovozli xabarlar o‘chirib tashlansinmi? "</b>"</item>
+      <item quantity="one">"<b>"Bu ovozli xabar o‘chirib tashlansinmi? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g>, <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"SIM kartadan yuklanmoqda…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM karta kontaktlari"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Hech qanday kontakt ilovasi yo‘q"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Ovozli qidiruv mavjud emas"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Telefon ilovasi o‘chirib qo‘yilgani sababli telefon qo‘ng‘iroqlarini amalga oshirib bo‘lmaydi."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Kontaktlar ichidan qidirish"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> ta javobsiz chaqiruv"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Tezkor terish uchun hech kim yo‘q"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Tezkor raqam terishni sozlang"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Sizda hali hech qanday kontakt yo‘q"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Yangi kontakt qo‘shing"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Barcha raqamlarni ko‘rish uchun rasm ustiga bosing yoki joyini o‘zgartirish uchun rasmni bosib turing."</string>
     <string name="remove_contact" msgid="2353580570488923668">"O‘chirish"</string>
+    <string name="select_all" msgid="408601760696146245">"Hammasini tanlash"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Video qo‘ng‘iroq"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Xabar yuborish"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Chaqiruv tafsilotlari"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Bloklangan raqamlar"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> raqami allaqachon bloklangan."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Chaqiruv uchun hisoblar"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Yoqish"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Ruxsatnomalarni sozlash"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Tezkor raqam terish uchun “Kontaktlar” ruxsatnomasini yoqing."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Qo‘ng‘iroqlaringiz ro‘yxatini ko‘rish uchun “Telefon” ruxsatnomasini yoqing."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Kontaktlaringizni ko‘rish uchun “Kontaktlar” ruxsatnomasini yoqing."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Ovozli pochtaga kirish uchun “Telefon” ruxsatnomasini yoqing."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Kontaktlarni qidirish uchun “Kontaktlar” ruxsatnomasini yoqing."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Qo‘ng‘iroq qilish uchun “Telefon” ruxsatnomasini yoqing."</string>
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 5a60e0a..c79e1ed 100644
--- a/java/com/android/dialer/app/res/values-vi/strings.xml
+++ b/java/com/android/dialer/app/res/values-vi/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Thêm chờ"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Cài đặt"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Trình mô phỏng"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Tạo phím tắt giao diện người dùng mới"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Tất cả liên hệ"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Sử dụng bàn phím số cảm ứng có âm"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Quay lại cuộc gọi đang thực hiện"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Thêm cuộc gọi"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Cuộc gọi đến"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Truy cập chế độ tác vụ hàng loạt"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Đã rời khỏi chế độ tác vụ hàng loạt"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Đã chọn <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Đã bỏ chọn <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Phát thư thoại"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Xem thông tin liên hệ của <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Gọi <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Thư thoại"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> giây"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> phút <xliff:g id="SECONDS">%s</xliff:g> giây"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"thư thoại"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"thư thoại"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Có"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Không"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Hủy chế độ tác vụ hàng loạt"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Xóa"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Hủy"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Xóa <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g> đã chọn?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Đã chọn <xliff:g id="NUMBER">%1$s</xliff:g>"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"Xóa các thư thoại này? "</b>"</item>
+      <item quantity="one">"<b>"Xóa thư thoại này? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> lúc <xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Đang tải từ thẻ SIM…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Danh bạ trên thẻ SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Không có ứng dụng danh bạ"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Không có tính năng tìm kiếm bằng giọng nói"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Không thể thực hiện cuộc gọi điện thoại vì ứng dụng Điện thoại đã bị tắt."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Tìm kiếm trong danh bạ"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> cuộc gọi nhỡ mới"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Chưa có ai trong danh bạ quay số nhanh của bạn"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Thêm liên hệ quay số nhanh yêu thích"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Bạn chưa có bất kỳ liên hệ nào"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Thêm liên hệ"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Chạm vào hình ảnh để xem tất cả các số hoặc chạm và giữ để sắp xếp lại"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Xóa"</string>
+    <string name="select_all" msgid="408601760696146245">"Chọn tất cả"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Cuộc gọi điện video"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Gửi tin nhắn"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Chi tiết cuộc gọi"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Số bị chặn"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> đã bị chặn."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Tài khoản gọi"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Bật"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Đặt quyền"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Để bật quay số nhanh, bật quyền đối với Danh bạ."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Để xem nhật ký cuộc gọi của bạn, bật quyền đối với Điện thoại."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Để xem danh bạ của bạn, bật quyền đối với Danh bạ."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Để truy cập thư thoại của bạn, bật quyền đối với Điện thoại."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Để tìm kiếm liên hệ của bạn, hãy bật quyền đối với Danh bạ."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Để thực hiện cuộc gọi, bật quyền đối với Điện thoại."</string>
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 98abc39..3262c1a 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
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"延长等待时间"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"设置"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"模拟器"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"创建可在新界面中使用的快捷键"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"所有联系人"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"使用按键式键盘"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"返回正在进行的通话"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"添加通话"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"来电"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"正在进入批量操作模式"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"已退出批量操作模式"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"已选择 <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"已取消选择 <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"播放语音邮件"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"查看联系人<xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"呼叫<xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"语音信箱"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> 分钟 <xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"语音邮件"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"语音邮件"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"是"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"否"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"取消批量操作模式"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"删除"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"取消"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"要删除所选的<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>吗？"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"已选择 <xliff:g id="NUMBER">%1$s</xliff:g> 封"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"要删除这些语音邮件吗？"</b>"</item>
+      <item quantity="one">"<b>"要删除这封语音邮件吗？"</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g><xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"正从 SIM 卡中加载..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM卡联系人"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"没有可用的通讯录应用"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"无法使用语音搜索"</string>
     <string name="call_not_available" msgid="7850148370757361155">"“电话”应用已被停用，因此无法拨打电话。"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"搜索联系人"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g>个新的未接电话"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"尚未给任何联系人设定快速拨号"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"添加常用联系人"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"您还没有任何联系人"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"添加联系人"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"触摸图片可查看所有号码，触摸并按住可重新排序"</string>
     <string name="remove_contact" msgid="2353580570488923668">"移除"</string>
+    <string name="select_all" msgid="408601760696146245">"全选"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"视频通话"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"发送短信"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"通话详情"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"已屏蔽的号码"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> 已被屏蔽。"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"通话帐号"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"开启"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"设置权限"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"要启用快速拨号功能，请开启“通讯录”权限。"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"要查看您的通话记录，请开启“电话”权限。"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"要查看您的联系人，请开启“通讯录”权限。"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"要使用您的语音信箱，请开启“电话”权限。"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"要搜索您的联系人，请开启“通讯录”权限。"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"要拨打电话，请开启“电话”权限。"</string>
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 2a96ce0..71e62ed 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
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"新增插播功能"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"設定"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"模擬器"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"建立新使用者介面捷徑"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"所有聯絡人"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"使用觸控音頻按鍵"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"返回進行中的通話"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"新增通話"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"來電"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"正在進入大量操作模式"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"已離開大量操作模式"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"已選取<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"已取消選取<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"播放語音留言"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"查看聯絡人<xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"打電話給<xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"留言"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> 分 <xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"留言"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"留言"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"是"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"否"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"取消批量操作模式"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"刪除"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"取消"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"要刪除所選的<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>嗎？"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"已選取 <xliff:g id="NUMBER">%1$s</xliff:g> 個"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"要刪除這些留言嗎？"</b>"</item>
+      <item quantity="one">"<b>"要刪除此留言嗎？"</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g><xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"正在從 SIM 卡載入..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM 卡聯絡人"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"沒有可用的聯絡人應用程式"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"無法使用語音搜尋"</string>
     <string name="call_not_available" msgid="7850148370757361155">"由於「電話」應用程式已停用，因此無法打電話。"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"搜尋聯絡人"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> 個新的未接來電"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"快速撥號名單中沒有聯絡人"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"新增常用聯絡人"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"暫時沒有聯絡人"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"新增聯絡人"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"輕觸圖片以查看所有電話號碼，或輕觸並按住圖片以重新排序"</string>
     <string name="remove_contact" msgid="2353580570488923668">"移除"</string>
+    <string name="select_all" msgid="408601760696146245">"全選"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"視像通話"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"傳送訊息"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"通話詳情"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"已封鎖的號碼"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"已封鎖 <xliff:g id="NUMBER">%1$s</xliff:g>。"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"通話帳戶"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"開放權限"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"設定權限"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"如要啟用快速撥號功能，請開放「通訊錄」權限。"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"如要查看通話記錄，請開放「手機」權限。"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"如要查看聯絡人，請開放「通訊錄」權限。"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"如要存取留言信箱，請開放「手機」權限。"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"如要搜尋聯絡人，請開啟「通訊錄」權限。"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"如要撥打電話，請開放「手機」權限。"</string>
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 9174521..9178dcf 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
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"延長等待時間"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"設定"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"模擬工具"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"建立新版 UI 捷徑"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"所有聯絡人"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"使用觸控音按鍵"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"返回進行中的通話"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"新增通話"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"來電"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"已進入大量操作模式"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"已離開大量操作模式"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"已選取：<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"已取消選取：<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"播放語音留言"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"查看聯絡人<xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"撥電話給<xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"語音留言"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> 分 <xliff:g id="SECONDS">%s</xliff:g> 秒"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"語音留言"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"語音留言"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"是"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"否"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"取消批次操作模式"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"刪除"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"取消"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"要刪除選取的<xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>嗎？"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"已選取 <xliff:g id="NUMBER">%1$s</xliff:g> 個"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="other">"<b>"要刪除這些語音留言嗎？"</b>"</item>
+      <item quantity="one">"<b>"要刪除這則語音留言嗎？"</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g><xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"從  SIM 卡讀取中…"</string>
     <string name="simContacts_title" msgid="7961069730386378887">"SIM 卡聯絡人"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"沒有可用的聯絡人應用程式"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"無法使用語音搜尋"</string>
     <string name="call_not_available" msgid="7850148370757361155">"「電話」應用程式已遭停用，因此無法撥打電話。"</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"搜尋聯絡人"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> 通新的未接來電"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"您的快速撥號功能尚未設定任何聯絡人"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"新增常用聯絡人"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"您尚未加入任何聯絡人"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"新增聯絡人"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"輕觸圖片即可查看所有號碼，按住則可重新排序"</string>
     <string name="remove_contact" msgid="2353580570488923668">"移除"</string>
+    <string name="select_all" msgid="408601760696146245">"全選"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"視訊通話"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"傳送簡訊"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"通話詳細資料"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"已封鎖的號碼"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> 已在封鎖清單中。"</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"通話帳戶"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"開啟"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"設定權限"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"如要啟用快速撥號，請開啟「聯絡人」存取權限。"</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"如要查看您的通話紀錄，請開啟「電話」存取權限。"</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"如要查看您的聯絡人，請開啟「聯絡人」存取權限。"</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"如要存取您的語音信箱，請開啟「電話」存取權限。"</string>
     <string name="permission_no_search" msgid="2424710404207193826">"如要搜尋您的聯絡人，請開啟「聯絡人」存取權限。"</string>
     <string name="permission_place_call" msgid="8686908130349369423">"如要撥打電話，請開啟「電話」存取權限。"</string>
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 9c8a6b8..f52f597 100644
--- a/java/com/android/dialer/app/res/values-zu/strings.xml
+++ b/java/com/android/dialer/app/res/values-zu/strings.xml
@@ -80,11 +80,16 @@
     <string name="add_wait" msgid="1177723010768282578">"Yengeza ukulinda"</string>
     <string name="dialer_settings_label" msgid="4980176284150290175">"Izilungiselelo"</string>
     <string name="simulator_submenu_label" msgid="186156287346615267">"Isilingisi"</string>
+    <string name="new_ui_launcher_shortcut_label" msgid="7195823535703686736">"Dala isinqamuleli esisha se-UI"</string>
     <string name="menu_allContacts" msgid="8544950176866640863">"Bonke othintana nabo"</string>
     <string name="dialer_useDtmfDialpad" msgid="3919115408138798484">"Sebenzisa ikhiphedi yethoni yokuthinta"</string>
     <string name="dialer_returnToInCallScreen" msgid="3487191628252824117">"Buyela kukholi eqhubekayo"</string>
     <string name="dialer_addAnotherCall" msgid="3132945651710234674">"Yengeza ikholi"</string>
     <string name="actionIncomingCall" msgid="891346596090030558">"Amakholi angenayo"</string>
+    <string name="description_entering_bulk_action_mode" msgid="6134916000015585401">"Kungenwa kumodi yesenzo senqwaba"</string>
+    <string name="description_leaving_bulk_action_mode" msgid="4355853387639765529">"Ishiye imodi yesenzo senqwaba"</string>
+    <string name="description_selecting_bulk_action_mode" msgid="7228565941043117618">"Kukhethwe i-<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="description_unselecting_bulk_action_mode" msgid="6450971299622386060">"Akukhethiwe i-<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
     <string name="description_call_log_play_button" msgid="2349845005022431438">"Dlala i-imeyli yezwi"</string>
     <string name="description_view_contact" msgid="3940984937384372665">"Bheka oxhumana naye <xliff:g id="NAME">%1$s</xliff:g>"</string>
     <string name="description_call" msgid="1532402285334775372">"Shayela <xliff:g id="NAME">%1$s</xliff:g>"</string>
@@ -99,11 +104,15 @@
     <string name="voicemail" msgid="8899540969000957954">"Ivoyisimeyili"</string>
     <string name="callDetailsShortDurationFormat" msgid="8517030531054801588">"<xliff:g id="SECONDS">%s</xliff:g> isekhondi"</string>
     <string name="callDetailsDurationFormat" msgid="6826204822350034578">"<xliff:g id="MINUTES">%s</xliff:g> amaminithi <xliff:g id="SECONDS">%s</xliff:g> amasekhondi"</string>
-    <string name="voicemailMultiSelectVoicemail" msgid="7792569522692927527">"ivoyisimeyili"</string>
-    <string name="voicemailMultiSelectVoicemails" msgid="3901723179158415509">"ama-meyli ezwi"</string>
-    <string name="voicemailMultiSelectDeleteConfirm" msgid="5904880853422397390">"Yebo"</string>
-    <string name="voicemailMultiSelectDeleteCancel" msgid="7340110543555172665">"Cha"</string>
+    <string name="description_cancel_multi_select" msgid="3930475950253360461">"Khansela imodi lezenzo zeqoqo"</string>
+    <string name="voicemailMultiSelectDeleteConfirm" msgid="5110048580165845200">"Susa"</string>
+    <string name="voicemailMultiSelectDeleteCancel" msgid="4574287102479485528">"Khansela"</string>
     <string name="voicemailMultiSelectDialogTitle" msgid="150612124416146690">"Susa okukhethiwe <xliff:g id="VOICEMAILORVOICEMAILS">%1$s</xliff:g>?"</string>
+    <string name="voicemailMultiSelectActionBarTitle" msgid="5840745438559612431">"Engu-<xliff:g id="NUMBER">%1$s</xliff:g> ekhethiwe"</string>
+    <plurals name="delete_voicemails_confirmation_dialog_title" formatted="false" msgid="2452264208706783960">
+      <item quantity="one">"<b>"Sula lawa mavoyisimeyili? "</b>"</item>
+      <item quantity="other">"<b>"Sula lawa mavoyisimeyili? "</b>"</item>
+    </plurals>
     <string name="voicemailCallLogToday" msgid="709034597866788854">@string/call_log_header_today</string>
     <string name="voicemailCallLogDateTimeFormat" msgid="4998985002074131268">"<xliff:g id="DATE">%1$s</xliff:g> ngo-<xliff:g id="TIME">%2$s</xliff:g>"</string>
     <string name="voicemailDurationFormat" msgid="5649961568550898382">"<xliff:g id="MINUTES">%1$02d</xliff:g>:<xliff:g id="SECONDS">%2$02d</xliff:g>"</string>
@@ -116,7 +125,6 @@
     <string name="meid" msgid="3333779521535224028">"I-MEID"</string>
     <string name="simContacts_emptyLoading" msgid="6205424276735652071">"Ilayisha kusuka ekhadini le-SIM..."</string>
     <string name="simContacts_title" msgid="7961069730386378887">"Othintana nabo bekhadi le-SIM"</string>
-    <string name="add_contact_not_available" msgid="7065884447935173347">"Alukho uhlelo lokusebenza loxhumana nabo olutholakalayo"</string>
     <string name="voice_search_not_available" msgid="6546240433719732905">"Usesho lwezwi alutholakali"</string>
     <string name="call_not_available" msgid="7850148370757361155">"Ayikwazi ukwenza ikholi yefoni ngoba uhlelo lokusebenza lwefoni likhutshaziwe."</string>
     <string name="dialer_hint_find_contact" msgid="2023214799381149808">"Sesha othintana nabo"</string>
@@ -145,10 +153,9 @@
     <string name="num_missed_calls" msgid="5171791753696317082">"<xliff:g id="NUMBER">%s</xliff:g> amakholi amasha owaphuthelwe"</string>
     <string name="speed_dial_empty" msgid="3346406399966039505">"Akekho umuntu osekudayeleni kwakho okusheshayo okwamanje"</string>
     <string name="speed_dial_empty_add_favorite_action" msgid="3470360584638103033">"Engeza intandokazi"</string>
-    <string name="all_contacts_empty" msgid="243071567853617177">"Awunabo oxhumana nabo okwamanje"</string>
-    <string name="all_contacts_empty_add_contact_action" msgid="2907328217206743952">"Engeza oxhumana naye"</string>
     <string name="contact_tooltip" msgid="8871614660967439999">"Thinta isithombe ukuze ubone zonke izinombolo noma thinta bese ubambe ukuze uhlele kabusha"</string>
     <string name="remove_contact" msgid="2353580570488923668">"Susa"</string>
+    <string name="select_all" msgid="408601760696146245">"Khetha konke"</string>
     <string name="call_log_action_video_call" msgid="7565549950343850819">"Ikholi yevidiyo"</string>
     <string name="call_log_action_send_message" msgid="6948727362660115554">"Thumela umlayezo"</string>
     <string name="call_log_action_details" msgid="2091370737371449501">"Imininingwane yekholi"</string>
@@ -213,11 +220,9 @@
     <string name="block_list" msgid="4701585783411870782">"Izinombolo ezivinjiwe"</string>
     <string name="alreadyBlocked" msgid="5483253180532475653">"<xliff:g id="NUMBER">%1$s</xliff:g> isivinjiwe kakade."</string>
     <string name="phone_account_settings_label" msgid="8372485478006965920">"Ama-akhawunti wokushaya"</string>
-    <string name="permission_single_turn_on" msgid="8014796118294187894">"Vula"</string>
     <string name="permission_multiple_turn_on" msgid="5679888820253829400">"Setha izimvume"</string>
     <string name="permission_no_speeddial" msgid="8487215628510596753">"Nika amandla ukudayela okusheshayo, vula imvume yoxhumana nabo."</string>
     <string name="permission_no_calllog" msgid="4053705651238775784">"Ukuze ubone irekhodi lakho lamakholi, vuma imvume yefoni."</string>
-    <string name="permission_no_contacts" msgid="8995025765862026771">"Ukuze ubone oxhumana nabo, vula imvume yoxhumana nabo."</string>
     <string name="permission_no_voicemail" msgid="1908142679289209291">"Ukuze ufinyelele ivoyisimeyili, vula imvume yefoni."</string>
     <string name="permission_no_search" msgid="2424710404207193826">"Ukuze useshe oxhumana nabo, vula izimvume zoxhumana nabo."</string>
     <string name="permission_place_call" msgid="8686908130349369423">"Ukuze ubeke ikholi, vula imvume yefoni."</string>
diff --git a/java/com/android/dialer/app/res/values/colors.xml b/java/com/android/dialer/app/res/values/colors.xml
index cf6b926..2f6d87b 100644
--- a/java/com/android/dialer/app/res/values/colors.xml
+++ b/java/com/android/dialer/app/res/values/colors.xml
@@ -52,8 +52,6 @@
   <!-- Colour of voicemail progress bar to the left of position indicator. -->
   <color name="voicemail_playback_seek_bar_already_played">@color/dialer_theme_color</color>
 
-  <!-- Background color of new dialer activity -->
-  <color name="background_dialer_light">#fafafa</color>
   <!-- Background color for search results and call details -->
   <color name="background_dialer_results">#f9f9f9</color>
   <color name="background_dialer_call_log">@color/background_dialer_light</color>
@@ -69,8 +67,6 @@
   <!-- Undo dialogue color -->
   <color name="undo_dialogue_text_color">#4d4d4d</color>
 
-  <color name="empty_list_text_color">#b2b2b2</color>
-
   <color name="remove_text_color">#ffffff</color>
 
   <!-- Text color for the "Remove" text when a contact is dragged on top of the remove view -->
diff --git a/java/com/android/dialer/app/res/values/dimens.xml b/java/com/android/dialer/app/res/values/dimens.xml
index 7da29c7..90a8bb8 100644
--- a/java/com/android/dialer/app/res/values/dimens.xml
+++ b/java/com/android/dialer/app/res/values/dimens.xml
@@ -24,6 +24,11 @@
   -->
   <dimen name="remove_text_size">16dp</dimen>
 
+  <!-- Select All/Multi Select -->
+  <dimen name="select_all_text_size">14sp</dimen>
+  <dimen name="select_all_icon_padding">16dp</dimen>
+  <dimen name="select_all_text_left_padding">18dp</dimen>
+
   <!-- Call Log -->
   <dimen name="call_log_horizontal_margin">8dp</dimen>
   <dimen name="call_log_call_action_size">32dp</dimen>
@@ -105,9 +110,6 @@
   <!-- Length of dialpad's shadows in dialer. -->
   <dimen name="shadow_length">10dp</dimen>
 
-  <dimen name="empty_list_message_top_padding">20dp</dimen>
-  <dimen name="empty_list_message_text_size">16sp</dimen>
-
   <!-- Dimensions for individual preference cards -->
   <dimen name="preference_padding_top">16dp</dimen>
   <dimen name="preference_padding_bottom">16dp</dimen>
diff --git a/java/com/android/dialer/app/res/values/strings.xml b/java/com/android/dialer/app/res/values/strings.xml
index 9e1fdeb..e02c6fb 100644
--- a/java/com/android/dialer/app/res/values/strings.xml
+++ b/java/com/android/dialer/app/res/values/strings.xml
@@ -114,7 +114,7 @@
   <!-- Title of the notification of new voicemails. [CHAR LIMIT=30] -->
   <plurals name="notification_voicemail_title">
     <item quantity="one">Voicemail</item>
-        <item quantity="other">
+    <item quantity="other">
             <xliff:g id="count">%1$d</xliff:g>
             Voicemails
         </item>
@@ -131,12 +131,12 @@
 
        [CHAR LIMIT=10]
    -->
-    <string name="notification_voicemail_callers_list"><xliff:g id="newer_callers">%1$s</xliff:g>,
+  <string name="notification_voicemail_callers_list"><xliff:g id="newer_callers">%1$s</xliff:g>,
         <xliff:g id="older_caller">%2$s</xliff:g>
     </string>
 
   <!-- Text used in the ticker to notify the user of the latest voicemail. [CHAR LIMIT=30] -->
-    <string name="notification_new_voicemail_ticker">New voicemail from
+  <string name="notification_new_voicemail_ticker">New voicemail from
         <xliff:g id="caller">%1$s</xliff:g>
     </string>
 
@@ -165,7 +165,7 @@
   <string name="call_log_missed_header">Missed calls only</string>
 
   <!-- The counter for calls in a group and the date of the latest call as shown in the call log [CHAR LIMIT=15] -->
-    <string name="call_log_item_count_and_date">(<xliff:g id="count">%1$d</xliff:g>)
+  <string name="call_log_item_count_and_date">(<xliff:g id="count">%1$d</xliff:g>)
         <xliff:g id="date">%2$s</xliff:g>
     </string>
 
@@ -258,6 +258,9 @@
        and testing. [CHAR LIMIT=30]-->
   <string name="simulator_submenu_label">Simulator</string>
 
+  <!-- Label for the menu item that installs a shortcut for the new UI. [CHAR LIMIT=30] -->
+  <string name="new_ui_launcher_shortcut_label">Create New UI Shortcut</string>
+
   <!-- Menu item to display all contacts [CHAR LIMIT=30] -->
   <string name="menu_allContacts">All contacts</string>
 
@@ -279,6 +282,34 @@
   <!-- Description for incoming calls going to voice mail vs. not -->
   <string name="actionIncomingCall">Incoming calls</string>
 
+  <!-- String describing the user entering bulk action mode.
+
+    Note: AccessibilityServices use this attribute to announce what the view represents.
+          This is especially valuable for views without textual representation like ImageView.
+-->
+  <string name="description_entering_bulk_action_mode">Entering bulk action mode</string>
+
+  <!-- String describing the user leaving bulk action mode.
+
+    Note: AccessibilityServices use this attribute to announce what the view represents.
+          This is especially valuable for views without textual representation like ImageView.
+-->
+  <string name="description_leaving_bulk_action_mode">Left bulk action mode</string>
+
+  <!-- String describing the button to select an entry for bulk action.
+
+      Note: AccessibilityServices use this attribute to announce what the view represents.
+            This is especially valuable for views without textual representation like ImageView.
+  -->
+  <string name="description_selecting_bulk_action_mode">Selected <xliff:g id="nameOrNumber">%1$s</xliff:g></string>
+
+  <!-- String describing the button to unselect an entry for bulk action.
+
+      Note: AccessibilityServices use this attribute to announce what the view represents.
+            This is especially valuable for views without textual representation like ImageView.
+  -->
+  <string name="description_unselecting_bulk_action_mode">Unselected <xliff:g id="nameOrNumber">%1$s</xliff:g></string>
+
   <!-- String describing the icon in the call log used to play a voicemail.
 
       Note: AccessibilityServices use this attribute to announce what the view represents.
@@ -362,12 +393,23 @@
   <!-- A nicely formatted call duration displayed when viewing call details. For example "42 min 28 sec" -->
   <string name="callDetailsDurationFormat"><xliff:g example="42" id="minutes">%s</xliff:g> min <xliff:g example="28" id="seconds">%s</xliff:g> sec</string>
 
-  <string name="voicemailMultiSelectVoicemail">voicemail</string>
-  <string name="voicemailMultiSelectVoicemails">voicemails</string>
-  <string name="voicemailMultiSelectDeleteConfirm">Yes</string>
-  <string name="voicemailMultiSelectDeleteCancel">No</string>
+  <!-- String describing the cancel button in multi select.
+       Note: AccessibilityServices uses this attribute to announce what the view represents.
+       [CHAR LIMIT=NONE] -->
+  <string name="description_cancel_multi_select">Cancel batch actions mode</string>
+
+  <string name="voicemailMultiSelectDeleteConfirm">Delete</string>
+  <string name="voicemailMultiSelectDeleteCancel">Cancel</string>
   <string name="voicemailMultiSelectDialogTitle">Delete selected <xliff:g id="voicemailorvoicemails">%1$s</xliff:g>?</string>
 
+  <string name="voicemailMultiSelectActionBarTitle"><xliff:g id="number">%1$s</xliff:g> selected</string>
+
+  <!-- Alert dialog title to accept or decline deleting voicemail(s). -->
+  <plurals name="delete_voicemails_confirmation_dialog_title">
+    <item quantity="one"><b>Delete this voicemail? </b></item>
+    <item quantity="other"><b>Delete these voicemails? </b></item>
+  </plurals>
+
   <!-- The string 'Today'. This value is used in the voicemailCallLogDateTimeFormat rather than an
        explicit date string, e.g. Jul 25, 2014, in the event that a voicemail was created on the
        current day -->
@@ -411,9 +453,6 @@
   <!-- Dialog title displayed when loading a phone number from the SIM card for speed dial -->
   <string name="simContacts_title">SIM card contacts</string>
 
-  <!-- Message displayed when there is no application available to handle the add contact menu option. [CHAR LIMIT=NONE] -->
-  <string name="add_contact_not_available">No contacts app available</string>
-
   <!-- Message displayed when there is no application available to handle voice search. [CHAR LIMIT=NONE] -->
   <string name="voice_search_not_available">Voice search not available</string>
 
@@ -484,7 +523,7 @@
   <string name="favorite_hidden_undo">Undo</string>
 
   <!-- Shortcut item used to call a number directly from search -->
-    <string name="search_shortcut_call_number">Call
+  <string name="search_shortcut_call_number">Call
         <xliff:g id="number">%s</xliff:g>
     </string>
 
@@ -514,12 +553,6 @@
   <!-- Shown as an action when there are no speed dial favorites -->
   <string name="speed_dial_empty_add_favorite_action">Add a favorite</string>
 
-  <!-- Shown when there are no contacts in the all contacts list. -->
-  <string name="all_contacts_empty">You don\'t have any contacts yet</string>
-
-  <!-- Shown as an action when the all contacts list is empty -->
-  <string name="all_contacts_empty_add_contact_action">Add a contact</string>
-
   <!-- Shows up as a tooltip to provide a hint to the user that the profile pic in a contact
        card can be tapped to bring up a list of all numbers, or long pressed to start reordering
        [CHAR LIMIT=NONE]
@@ -529,6 +562,9 @@
   <!-- Remove button that shows up when contact is long-pressed. [CHAR LIMIT=NONE] -->
   <string name="remove_contact">Remove</string>
 
+  <!-- Select all text that shows up when in multi select mode. [CHAR LIMIT=NONE] -->
+  <string name="select_all">Select all</string>
+
   <!-- Button text for the "video call" displayed underneath an entry in the call log.
        Tapping causes a video call to be placed to the caller represented by the call log entry.
        [CHAR LIMIT=30] -->
@@ -550,13 +586,13 @@
 
   <!-- Button text for the button displayed underneath an entry in the call log, which when
        tapped triggers a return call to the named user. [CHAR LIMIT=30] -->
-    <string name="call_log_action_call">
+  <string name="call_log_action_call">
         Call <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
   <!-- String describing an incoming missed call entry in the call log.
-       Note: AccessibilityServices uses this attribute to announce what the view represents.
-       [CHAR LIMIT=NONE] -->
+     Note: AccessibilityServices uses this attribute to announce what the view represents.
+     [CHAR LIMIT=NONE] -->
   <string name="description_incoming_missed_call">Missed call from <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>, <xliff:g example="Mobile" id="typeOrLocation">^2</xliff:g>, <xliff:g example="2 min ago" id="timeOfCall">^3</xliff:g>, <xliff:g example="on SIM 1" id="phoneAccount">^4</xliff:g>.</string>
 
   <!-- String describing an incoming answered call entry in the call log.
@@ -592,7 +628,7 @@
        action triggers a return call to the named user.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_call_action">
+  <string name="description_call_action">
         Call <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
@@ -600,7 +636,7 @@
        action triggers a return video call to the named person/number.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_video_call_action">
+  <string name="description_video_call_action">
         Video call <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>.
     </string>
 
@@ -609,21 +645,21 @@
        triggers playing back the voicemail.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_voicemail_action">
+  <string name="description_voicemail_action">
         Listen to voicemail from <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
   <!-- String describing the "play voicemail" action for an entry in the call log.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_voicemail_play">
+  <string name="description_voicemail_play">
         Play voicemail from <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
   <!-- String describing the "pause voicemail" action for an entry in the call log.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_voicemail_pause">
+  <string name="description_voicemail_pause">
         Pause voicemail from <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
@@ -631,7 +667,7 @@
   <!-- String describing the "delete voicemail" action for an entry in the call log.
        Note: AccessibilityServices uses this attribute to announce the purpose of the button.
        [CHAR LIMIT=NONE] -->
-    <string name="description_voicemail_delete">
+  <string name="description_voicemail_delete">
         Delete voicemail from <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
@@ -645,14 +681,14 @@
 
   <!-- Description for the "create new contact" action for an entry in the call log. This action
        opens a screen for creating a new contact for this name or number. [CHAR LIMIT=NONE] -->
-    <string name="description_create_new_contact_action">
+  <string name="description_create_new_contact_action">
         Create contact for <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
   <!-- Description for the "add to existing contact" action for an entry in the call log. This
        action opens a screen for adding this name or number to an existing contact.
        [CHAR LIMIT=NONE] -->
-    <string name="description_add_to_existing_contact_action">
+  <string name="description_add_to_existing_contact_action">
         Add <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g> to existing contact
     </string>
 
@@ -660,7 +696,7 @@
        displays the call details screen for an entry in the call log.  This shows the calls to
        and from the specified number associated with the call log entry.
        [CHAR LIMIT=NONE] -->
-    <string name="description_details_action">
+  <string name="description_details_action">
         Call details for <xliff:g example="John Smith" id="nameOrNumber">^1</xliff:g>
     </string>
 
@@ -769,14 +805,14 @@
 
   <!-- Label for a section describing that call blocking is temporarily disabled because an
        emergency call was made. [CHAR LIMIT=50] -->
-    <string name="blocked_numbers_disabled_emergency_header_label">
+  <string name="blocked_numbers_disabled_emergency_header_label">
         Call blocking temporarily off
     </string>
 
   <!-- Description that call blocking is temporarily disabled because the user called an
        emergency number, and explains that call blocking will be re-enabled after a buffer
        period has passed. [CHAR LIMIT=NONE] -->
-    <string name="blocked_numbers_disabled_emergency_desc">
+  <string name="blocked_numbers_disabled_emergency_desc">
         Call blocking has been disabled because you contacted emergency services from this phone
         within the last 48 hours. It will be automatically reenabled once the 48 hour period
         expires.
@@ -789,7 +825,7 @@
   <!-- Text informing the user they have previously marked contacts to be sent to voicemail.
        This will be followed by two buttons, 1) to view who is marked to be sent to voicemail
        and 2) importing these settings to Dialer's block list. [CHAR LIMIT=NONE] -->
-    <string name="blocked_call_settings_import_description">
+  <string name="blocked_call_settings_import_description">
         You previously marked some callers to be automatically sent to voicemail via other apps.
     </string>
 
@@ -811,13 +847,13 @@
 
   <!-- Footer message of number blocking screen with visual voicemail active.
       [CHAR LIMIT=NONE] -->
-    <string name="block_number_footer_message_vvm">
+  <string name="block_number_footer_message_vvm">
         Calls from these numbers will be blocked and voicemails will be automatically deleted.
     </string>
 
   <!-- Footer message of number blocking screen with no visual voicemail.
        [CHAR LIMIT=NONE] -->
-    <string name="block_number_footer_message_no_vvm">
+  <string name="block_number_footer_message_no_vvm">
          Calls from these numbers will be blocked, but they may still be able to leave you voicemails.
     </string>
 
@@ -826,7 +862,7 @@
 
   <!-- Error message shown when user tries to add a number to the block list that was already
       blocked. [CHAR LIMIT=64] -->
-    <string name="alreadyBlocked"><xliff:g example="(555) 555-5555" id="number">%1$s</xliff:g>
+  <string name="alreadyBlocked"><xliff:g example="(555) 555-5555" id="number">%1$s</xliff:g>
         is already blocked.</string>
 
   <!-- Label for the phone account settings [CHAR LIMIT=30] -->
@@ -841,9 +877,6 @@
   <!-- Internal key for DTMF tone length preference. -->
   <string name="dtmf_tone_length_preference_key" translatable="false">button_dtmf_settings</string>
 
-  <!-- The label of the button used to turn on a single permission [CHAR LIMIT=30]-->
-  <string name="permission_single_turn_on">Turn on</string>
-
   <!--  The label of the button used to turn on multiple permissions [CHAR LIMIT=30]-->
   <string name="permission_multiple_turn_on">Set permissions</string>
 
@@ -853,9 +886,6 @@
   <!-- Shown as a prompt to turn on the phone permission to enable the call log [CHAR LIMIT=NONE]-->
   <string name="permission_no_calllog">To see your call log, turn on the Phone permission.</string>
 
-  <!-- Shown as a prompt to turn on the contacts permission to show all contacts [CHAR LIMIT=NONE]-->
-  <string name="permission_no_contacts">To see your contacts, turn on the Contacts permission.</string>
-
   <!-- Shown as a prompt to turn on the phone permission to show voicemails [CHAR LIMIT=NONE]-->
   <string name="permission_no_voicemail">To access your voicemail, turn on the Phone permission.</string>
 
diff --git a/java/com/android/dialer/app/res/values/styles.xml b/java/com/android/dialer/app/res/values/styles.xml
index 7adf7ca..e0122e8 100644
--- a/java/com/android/dialer/app/res/values/styles.xml
+++ b/java/com/android/dialer/app/res/values/styles.xml
@@ -16,6 +16,11 @@
   -->
 <resources>
 
+  <style name="AlertDialogCustom" parent="Theme.AppCompat.Light.Dialog.Alert">
+    <item name="android:colorPrimary">@color/dialtacts_theme_color</item>
+    <item name="android:colorAccent">@color/dialtacts_theme_color</item>
+  </style>
+
   <style name="DialtactsTheme" parent="DialerThemeBase">
 
     <!-- Styles that require AppCompat compatibility, remember to update both sets -->
@@ -25,13 +30,13 @@
     <item name="windowActionModeOverlay">true</item>
     <item name="android:actionBarStyle">@style/DialtactsActionBarStyle</item>
     <item name="actionBarStyle">@style/DialtactsActionBarStyle</item>
+    <item name="actionModeStyle">@style/ActionModeStyle</item>
+    <item name="android:actionModeStyle">@style/ActionModeStyle</item>
 
     <item name="android:windowContentOverlay">@null</item>
     <item name="android:overlapAnchor">true</item>
-    <item name="android:homeAsUpIndicator">@drawable/ic_back_arrow</item>
 
     <item name="android:listViewStyle">@style/ListViewStyle</item>
-    <item name="section_header_background">@drawable/list_title_holo</item>
     <item name="list_section_header_height">32dip</item>
     <item name="list_item_padding_top">7dp</item>
     <item name="list_item_padding_right">24dp</item>
@@ -66,7 +71,7 @@
     <item name="android:textAppearanceButton">@style/DialerButtonTextStyle</item>
 
     <!-- Video call icon -->
-    <item name="list_item_video_call_icon_size">32dip</item>
+    <item name="list_item_video_call_icon_size">48dip</item>
     <item name="list_item_video_call_icon_margin">8dip</item>
 
     <item name="dialpad_style">@style/Dialpad.Light</item>
@@ -129,6 +134,12 @@
     <item name="contentInsetStart">@dimen/actionbar_contentInsetStart</item>
   </style>
 
+  <style name="ActionModeStyle" parent="Widget.AppCompat.ActionMode">
+    <item name="android:background">@color/actionbar_background_color</item>
+    <item name="background">@color/actionbar_background_color</item>
+    <item name="closeItemLayout">@layout/action_mode_close_button</item>
+  </style>
+
   <style name="DialtactsActionBarWithoutTitleStyle" parent="DialtactsActionBarStyle">
     <!-- Styles that require AppCompat compatibility, remember to update both sets -->
     <item name="android:displayOptions"></item>
diff --git a/java/com/android/dialer/app/res/xml/sound_settings.xml b/java/com/android/dialer/app/res/xml/sound_settings.xml
index 796ed2e..d9afb74 100644
--- a/java/com/android/dialer/app/res/xml/sound_settings.xml
+++ b/java/com/android/dialer/app/res/xml/sound_settings.xml
@@ -25,13 +25,13 @@
     android:ringtoneType="ringtone"
     android:title="@string/ringtone_title"/>
 
-  <CheckBoxPreference
+  <SwitchPreference
     android:defaultValue="false"
     android:key="@string/vibrate_on_preference_key"
     android:persistent="false"
     android:title="@string/vibrate_on_ring_title"/>
 
-  <CheckBoxPreference
+  <SwitchPreference
     android:defaultValue="true"
     android:key="@string/play_dtmf_preference_key"
     android:persistent="false"
diff --git a/java/com/android/dialer/app/settings/AppCompatPreferenceActivity.java b/java/com/android/dialer/app/settings/AppCompatPreferenceActivity.java
index 2c46438..e8e4256 100644
--- a/java/com/android/dialer/app/settings/AppCompatPreferenceActivity.java
+++ b/java/com/android/dialer/app/settings/AppCompatPreferenceActivity.java
@@ -18,7 +18,6 @@
 import android.content.res.Configuration;
 import android.os.Bundle;
 import android.preference.PreferenceActivity;
-import android.support.v7.app.ActionBar;
 import android.support.v7.app.AppCompatDelegate;
 import android.support.v7.widget.Toolbar;
 import android.view.MenuInflater;
@@ -49,10 +48,6 @@
     getDelegate().onPostCreate(savedInstanceState);
   }
 
-  public ActionBar getSupportActionBar() {
-    return getDelegate().getSupportActionBar();
-  }
-
   public void setSupportActionBar(Toolbar toolbar) {
     getDelegate().setSupportActionBar(toolbar);
   }
diff --git a/java/com/android/dialer/app/settings/DialerSettingsActivity.java b/java/com/android/dialer/app/settings/DialerSettingsActivity.java
index f1c270c..6036c85 100644
--- a/java/com/android/dialer/app/settings/DialerSettingsActivity.java
+++ b/java/com/android/dialer/app/settings/DialerSettingsActivity.java
@@ -36,7 +36,6 @@
 import com.android.dialer.app.R;
 import com.android.dialer.blocking.FilteredNumberCompat;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.compat.CompatUtils;
 import com.android.dialer.proguard.UsedByReflection;
 import com.android.voicemail.VoicemailClient;
 import com.android.voicemail.VoicemailComponent;
@@ -83,14 +82,12 @@
     soundSettingsHeader.id = R.id.settings_header_sounds_and_vibration;
     target.add(soundSettingsHeader);
 
-    if (CompatUtils.isMarshmallowCompatible()) {
-      Header quickResponseSettingsHeader = new Header();
-      Intent quickResponseSettingsIntent =
-          new Intent(TelecomManager.ACTION_SHOW_RESPOND_VIA_SMS_SETTINGS);
-      quickResponseSettingsHeader.titleRes = R.string.respond_via_sms_setting_title;
-      quickResponseSettingsHeader.intent = quickResponseSettingsIntent;
-      target.add(quickResponseSettingsHeader);
-    }
+    Header quickResponseSettingsHeader = new Header();
+    Intent quickResponseSettingsIntent =
+        new Intent(TelecomManager.ACTION_SHOW_RESPOND_VIA_SMS_SETTINGS);
+    quickResponseSettingsHeader.titleRes = R.string.respond_via_sms_setting_title;
+    quickResponseSettingsHeader.intent = quickResponseSettingsIntent;
+    target.add(quickResponseSettingsHeader);
 
     TelephonyManager telephonyManager =
         (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
diff --git a/java/com/android/dialer/app/settings/SoundSettingsFragment.java b/java/com/android/dialer/app/settings/SoundSettingsFragment.java
index 83ce453..dcfb7a5 100644
--- a/java/com/android/dialer/app/settings/SoundSettingsFragment.java
+++ b/java/com/android/dialer/app/settings/SoundSettingsFragment.java
@@ -23,11 +23,11 @@
 import android.os.Handler;
 import android.os.Message;
 import android.os.Vibrator;
-import android.preference.CheckBoxPreference;
 import android.preference.ListPreference;
 import android.preference.Preference;
 import android.preference.PreferenceFragment;
 import android.preference.PreferenceScreen;
+import android.preference.SwitchPreference;
 import android.provider.Settings;
 import android.telephony.CarrierConfigManager;
 import android.telephony.TelephonyManager;
@@ -68,8 +68,8 @@
           updateRingtonePreferenceSummary();
         }
       };
-  private CheckBoxPreference mVibrateWhenRinging;
-  private CheckBoxPreference mPlayDtmfTone;
+  private SwitchPreference mVibrateWhenRinging;
+  private SwitchPreference mPlayDtmfTone;
   private ListPreference mDtmfToneLength;
 
   @Override
@@ -87,9 +87,9 @@
 
     mRingtonePreference = findPreference(context.getString(R.string.ringtone_preference_key));
     mVibrateWhenRinging =
-        (CheckBoxPreference) findPreference(context.getString(R.string.vibrate_on_preference_key));
+        (SwitchPreference) findPreference(context.getString(R.string.vibrate_on_preference_key));
     mPlayDtmfTone =
-        (CheckBoxPreference) findPreference(context.getString(R.string.play_dtmf_preference_key));
+        (SwitchPreference) findPreference(context.getString(R.string.play_dtmf_preference_key));
     mDtmfToneLength =
         (ListPreference)
             findPreference(context.getString(R.string.dtmf_tone_length_preference_key));
diff --git a/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java b/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java
index 9d07ec5..a7cfc0c 100644
--- a/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java
+++ b/java/com/android/dialer/app/voicemail/LegacyVoicemailNotificationReceiver.java
@@ -27,7 +27,7 @@
 import android.support.v4.os.UserManagerCompat;
 import android.telecom.PhoneAccountHandle;
 import android.telephony.TelephonyManager;
-import com.android.dialer.app.calllog.DefaultVoicemailNotifier;
+import com.android.dialer.app.calllog.LegacyVoicemailNotifier;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.PerAccountSharedPreferences;
@@ -35,7 +35,7 @@
 
 /**
  * Receives {@link TelephonyManager#ACTION_SHOW_VOICEMAIL_NOTIFICATION}, and forwards to {@link
- * DefaultVoicemailNotifier}. Will ignore the notification if the account has visual voicemail.
+ * LegacyVoicemailNotifier}. Will ignore the notification if the account has visual voicemail.
  * Legacy voicemail is the traditional, non-visual, dial-in voicemail.
  */
 @TargetApi(VERSION_CODES.O)
@@ -43,6 +43,15 @@
 
   private static final String LEGACY_VOICEMAIL_COUNT = "legacy_voicemail_count";
 
+  /**
+   * Hidden extra for {@link TelephonyManager#ACTION_SHOW_VOICEMAIL_NOTIFICATION} for whether the
+   * notification is just a refresh or for a new voicemail. The phone should not play a ringtone or
+   * vibrate during a refresh if the notification is already showing.
+   *
+   * <p>TODO(b/62202833): make public
+   */
+  private static final String EXTRA_IS_REFRESH = "is_refresh";
+
   @Override
   public void onReceive(Context context, Intent intent) {
     LogUtil.i(
@@ -51,7 +60,6 @@
 
     PhoneAccountHandle phoneAccountHandle =
         Assert.isNotNull(intent.getParcelableExtra(TelephonyManager.EXTRA_PHONE_ACCOUNT_HANDLE));
-
     int count = intent.getIntExtra(TelephonyManager.EXTRA_NOTIFICATION_COUNT, -1);
 
     if (!hasVoicemailCountChanged(context, phoneAccountHandle, count)) {
@@ -70,7 +78,7 @@
 
     if (count == 0) {
       LogUtil.i("LegacyVoicemailNotificationReceiver.onReceive", "clearing notification");
-      new DefaultVoicemailNotifier(context).cancelLegacyNotification();
+      LegacyVoicemailNotifier.cancelNotification(context);
       return;
     }
 
@@ -91,13 +99,14 @@
         intent.getParcelableExtra(TelephonyManager.EXTRA_LAUNCH_VOICEMAIL_SETTINGS_INTENT);
 
     LogUtil.i("LegacyVoicemailNotificationReceiver.onReceive", "sending notification");
-    new DefaultVoicemailNotifier(context)
-        .notifyLegacyVoicemail(
-            phoneAccountHandle,
-            count,
-            voicemailNumber,
-            callVoicemailIntent,
-            voicemailSettingIntent);
+    LegacyVoicemailNotifier.showNotification(
+        context,
+        phoneAccountHandle,
+        count,
+        voicemailNumber,
+        callVoicemailIntent,
+        voicemailSettingIntent,
+        intent.getBooleanExtra(EXTRA_IS_REFRESH, false));
   }
 
   private static boolean hasVoicemailCountChanged(
diff --git a/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java b/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java
index ea48c83..5c9bc01 100644
--- a/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java
+++ b/java/com/android/dialer/app/voicemail/VoicemailPlaybackPresenter.java
@@ -47,12 +47,12 @@
 import com.android.dialer.app.R;
 import com.android.dialer.app.calllog.CallLogListItemViewHolder;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.AsyncTaskExecutor;
 import com.android.dialer.common.concurrent.AsyncTaskExecutors;
 import com.android.dialer.common.concurrent.DialerExecutor;
 import com.android.dialer.common.concurrent.DialerExecutors;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.constants.Constants;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
@@ -87,7 +87,6 @@
  * calls into this class from outside must be done from the main UI thread.
  */
 @NotThreadSafe
-@VisibleForTesting
 @TargetApi(VERSION_CODES.M)
 public class VoicemailPlaybackPresenter
     implements MediaPlayer.OnPreparedListener,
@@ -502,7 +501,7 @@
    * will call {@link #onError()} otherwise.
    */
   protected void prepareContent() {
-    if (mView == null) {
+    if (mView == null || mContext == null) {
       return;
     }
     LogUtil.d("VoicemailPlaybackPresenter.prepareContent", null);
@@ -548,7 +547,9 @@
     mView.setClipPosition(mPosition, mDuration.get());
     mView.enableUiElements();
     mView.setSuccess();
-    mMediaPlayer.seekTo(mPosition);
+    if (!mp.isPlaying()) {
+      mMediaPlayer.seekTo(mPosition);
+    }
 
     if (mIsPlaying) {
       resumePlayback();
diff --git a/java/com/android/dialer/app/voicemail/error/OmtpVoicemailMessageCreator.java b/java/com/android/dialer/app/voicemail/error/OmtpVoicemailMessageCreator.java
index 48602ea..909de70 100644
--- a/java/com/android/dialer/app/voicemail/error/OmtpVoicemailMessageCreator.java
+++ b/java/com/android/dialer/app/voicemail/error/OmtpVoicemailMessageCreator.java
@@ -47,6 +47,12 @@
   @Nullable
   public static VoicemailErrorMessage create(
       Context context, VoicemailStatus status, final VoicemailStatusReader statusReader) {
+    VoicemailErrorMessage tosMessage =
+        new VoicemailTosMessageCreator(context, status, statusReader).maybeCreateTosMessage();
+    if (tosMessage != null) {
+      return tosMessage;
+    }
+
     if (Status.CONFIGURATION_STATE_OK == status.configurationState
         && Status.DATA_CHANNEL_STATE_OK == status.dataChannelState
         && Status.NOTIFICATION_CHANNEL_STATE_OK == status.notificationChannelState) {
diff --git a/java/com/android/dialer/app/voicemail/error/VoicemailStatusCorruptionHandler.java b/java/com/android/dialer/app/voicemail/error/VoicemailStatusCorruptionHandler.java
index 2ff182b..3a169e4 100644
--- a/java/com/android/dialer/app/voicemail/error/VoicemailStatusCorruptionHandler.java
+++ b/java/com/android/dialer/app/voicemail/error/VoicemailStatusCorruptionHandler.java
@@ -26,8 +26,8 @@
 import android.telephony.TelephonyManager;
 import com.android.contacts.common.compat.TelephonyManagerCompat;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 
diff --git a/java/com/android/dialer/app/voicemail/error/VoicemailTosMessageCreator.java b/java/com/android/dialer/app/voicemail/error/VoicemailTosMessageCreator.java
new file mode 100644
index 0000000..3f0ed1f
--- /dev/null
+++ b/java/com/android/dialer/app/voicemail/error/VoicemailTosMessageCreator.java
@@ -0,0 +1,301 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.app.voicemail.error;
+
+import android.app.AlertDialog;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.preference.PreferenceManager;
+import android.support.annotation.Nullable;
+import android.telecom.PhoneAccountHandle;
+import android.telephony.TelephonyManager;
+import android.view.View;
+import android.view.View.OnClickListener;
+import com.android.contacts.common.compat.TelephonyManagerCompat;
+import com.android.dialer.app.voicemail.error.VoicemailErrorMessage.Action;
+import com.android.dialer.buildtype.BuildType;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+import com.android.voicemail.VisualVoicemailTypeExtensions;
+import com.android.voicemail.VoicemailClient;
+import com.android.voicemail.VoicemailComponent;
+import java.util.Locale;
+
+/**
+ * Create error message from {@link VoicemailStatus} for voicemail. This is will show different
+ * terms of service for Verizon and for other carriers.
+ */
+public class VoicemailTosMessageCreator {
+  // Flag to check which version of the Verizon ToS that the user has accepted.
+  public static final String VVM3_TOS_VERSION_ACCEPTED_KEY = "vvm3_tos_version_accepted";
+
+  // Flag to check which version of the Google Dialer ToS that the user has accepted.
+  public static final String DIALER_TOS_VERSION_ACCEPTED_KEY = "dialer_tos_version_accepted";
+
+  public static final int CURRENT_VVM3_TOS_VERSION = 2;
+  public static final int CURRENT_DIALER_TOS_VERSION = 1;
+
+  private static final String ISO639_SPANISH = "es";
+
+  private final Context context;
+  private final VoicemailStatus status;
+  private final VoicemailStatusReader statusReader;
+  private final SharedPreferences preferences;
+
+  VoicemailTosMessageCreator(
+      final Context context,
+      final VoicemailStatus status,
+      final VoicemailStatusReader statusReader) {
+    this.context = context;
+    this.status = status;
+    this.statusReader = statusReader;
+    this.preferences = PreferenceManager.getDefaultSharedPreferences(context);
+  }
+
+  @Nullable
+  VoicemailErrorMessage maybeCreateTosMessage() {
+    // TODO: add filtering based on carrier
+    if (hasAcceptedTos()) {
+      return null;
+    }
+    // TODO: temporarily skip the terms of service for dogfood builds
+    if (BuildType.get() == BuildType.DOGFOOD) {
+      LogUtil.i(
+          "VoicemailTosMessageCreator.maybeCreateTosMessage",
+          "Skipping voicemail ToS for dogfood build");
+      return null;
+    }
+    logTosCreatedImpression();
+
+    return new VoicemailTosMessage(
+            getTosTitle(),
+            getTosMessage(),
+            new Action(
+                getDeclineText(),
+                new OnClickListener() {
+                  @Override
+                  public void onClick(View v) {
+                    LogUtil.i("VoicemailTosMessageCreator.maybeShowTosMessage", "decline clicked");
+                    PhoneAccountHandle handle =
+                        new PhoneAccountHandle(
+                            ComponentName.unflattenFromString(status.phoneAccountComponentName),
+                            status.phoneAccountId);
+                    logTosDeclinedImpression();
+                    showDeclineTosDialog(handle);
+                  }
+                }),
+            new Action(
+                getAcceptText(),
+                new OnClickListener() {
+                  @Override
+                  public void onClick(View v) {
+                    LogUtil.i("VoicemailTosMessageCreator.maybeShowTosMessage", "accept clicked");
+                    recordTosAcceptance();
+                    logTosAcceptedImpression();
+                    statusReader.refresh();
+                  }
+                },
+                true /* raised */))
+        .setModal(true);
+  }
+
+  private void showDeclineTosDialog(final PhoneAccountHandle handle) {
+    if (isVvm3() && Vvm3VoicemailMessageCreator.PIN_NOT_SET == status.configurationState) {
+      LogUtil.i(
+          "VoicemailTosMessageCreator.showDeclineTosDialog", "PIN_NOT_SET, showing set PIN dialog");
+      showSetPinBeforeDeclineDialog();
+      return;
+    }
+    LogUtil.i(
+        "VoicemailTosMessageCreator.showDeclineVerizonTosDialog",
+        "showing decline ToS dialog, status=" + status);
+    final TelephonyManager telephonyManager = context.getSystemService(TelephonyManager.class);
+    AlertDialog.Builder builder = new AlertDialog.Builder(context);
+    builder.setMessage(getTosDeclinedDialogMessageId());
+    builder.setPositiveButton(
+        getTosDeclinedDialogDowngradeId(),
+        new DialogInterface.OnClickListener() {
+          @Override
+          public void onClick(DialogInterface dialog, int which) {
+            Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_DECLINED);
+            VoicemailClient voicemailClient = VoicemailComponent.get(context).getVoicemailClient();
+            if (voicemailClient.isVoicemailModuleEnabled()) {
+              voicemailClient.setVoicemailEnabled(context, status.getPhoneAccountHandle(), false);
+            } else {
+              TelephonyManagerCompat.setVisualVoicemailEnabled(telephonyManager, handle, false);
+            }
+          }
+        });
+
+    builder.setNegativeButton(
+        android.R.string.cancel,
+        new DialogInterface.OnClickListener() {
+          @Override
+          public void onClick(DialogInterface dialog, int which) {
+            dialog.dismiss();
+          }
+        });
+
+    builder.setCancelable(true);
+    builder.show();
+  }
+
+  private void showSetPinBeforeDeclineDialog() {
+    AlertDialog.Builder builder = new AlertDialog.Builder(context);
+    builder.setMessage(R.string.verizon_terms_and_conditions_decline_set_pin_dialog_message);
+    builder.setPositiveButton(
+        R.string.verizon_terms_and_conditions_decline_set_pin_dialog_set_pin,
+        new DialogInterface.OnClickListener() {
+          @Override
+          public void onClick(DialogInterface dialog, int which) {
+            Logger.get(context)
+                .logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_DECLINE_CHANGE_PIN_SHOWN);
+            Intent intent = new Intent(TelephonyManager.ACTION_CONFIGURE_VOICEMAIL);
+            context.startActivity(intent);
+          }
+        });
+
+    builder.setNegativeButton(
+        android.R.string.cancel,
+        new DialogInterface.OnClickListener() {
+          @Override
+          public void onClick(DialogInterface dialog, int which) {
+            dialog.dismiss();
+          }
+        });
+
+    builder.setCancelable(true);
+    builder.show();
+  }
+
+  private boolean isVvm3() {
+    return VisualVoicemailTypeExtensions.VVM_TYPE_VVM3.equals(status.type);
+  }
+
+  private boolean useSpanish() {
+    return Locale.getDefault().getLanguage().equals(new Locale(ISO639_SPANISH).getLanguage());
+  }
+
+  private boolean hasAcceptedTos() {
+    if (isVvm3()) {
+      return preferences.getInt(VVM3_TOS_VERSION_ACCEPTED_KEY, 0) >= CURRENT_VVM3_TOS_VERSION;
+    } else {
+      return preferences.getInt(DIALER_TOS_VERSION_ACCEPTED_KEY, 0) >= CURRENT_DIALER_TOS_VERSION;
+    }
+  }
+
+  private void recordTosAcceptance() {
+    if (isVvm3()) {
+      preferences.edit().putInt(VVM3_TOS_VERSION_ACCEPTED_KEY, CURRENT_VVM3_TOS_VERSION).apply();
+    } else {
+      preferences
+          .edit()
+          .putInt(DIALER_TOS_VERSION_ACCEPTED_KEY, CURRENT_DIALER_TOS_VERSION)
+          .apply();
+    }
+  }
+
+  private void logTosCreatedImpression() {
+    if (isVvm3()) {
+      Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_V2_CREATED);
+    } else {
+      Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_DIALER_TOS_CREATED);
+    }
+  }
+
+  private void logTosDeclinedImpression() {
+    if (isVvm3()) {
+      Logger.get(context)
+          .logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_V2_DECLINE_CLICKED);
+    } else {
+      Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_DIALER_TOS_DECLINE_CLICKED);
+    }
+  }
+
+  private void logTosAcceptedImpression() {
+    if (isVvm3()) {
+      Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_V2_ACCEPTED);
+    } else {
+      Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_DIALER_TOS_ACCEPTED);
+    }
+  }
+
+  private CharSequence getVvm3Tos() {
+    return useSpanish()
+        ? context.getString(R.string.verizon_terms_and_conditions_1_1_spanish)
+        : context.getString(R.string.verizon_terms_and_conditions_1_1_english);
+  }
+
+  private CharSequence getDialerTos() {
+    return useSpanish()
+        ? context.getString(R.string.dialer_terms_and_conditions_1_0_spanish)
+        : context.getString(R.string.dialer_terms_and_conditions_1_0_english);
+  }
+
+  private CharSequence getAcceptText() {
+    if (isVvm3()) {
+      return useSpanish()
+          ? context.getString(R.string.verizon_terms_and_conditions_accept_spanish)
+          : context.getString(R.string.verizon_terms_and_conditions_accept_english);
+    } else {
+      return useSpanish()
+          ? context.getString(R.string.dialer_terms_and_conditions_accept_spanish)
+          : context.getString(R.string.dialer_terms_and_conditions_accept_english);
+    }
+  }
+
+  private CharSequence getDeclineText() {
+    if (isVvm3()) {
+      return useSpanish()
+          ? context.getString(R.string.verizon_terms_and_conditions_decline_spanish)
+          : context.getString(R.string.verizon_terms_and_conditions_decline_english);
+    } else {
+      return useSpanish()
+          ? context.getString(R.string.dialer_terms_and_conditions_decline_spanish)
+          : context.getString(R.string.dialer_terms_and_conditions_decline_english);
+    }
+  }
+
+  private String getTosTitle() {
+    return isVvm3()
+        ? context.getString(R.string.verizon_terms_and_conditions_title)
+        : context.getString(R.string.dialer_terms_and_conditions_title);
+  }
+
+  private String getTosMessage() {
+    return isVvm3()
+        ? context.getString(
+            R.string.verizon_terms_and_conditions_message, getDialerTos(), getVvm3Tos())
+        : context.getString(R.string.dialer_terms_and_conditions_message, getDialerTos());
+  }
+
+  private int getTosDeclinedDialogMessageId() {
+    return isVvm3()
+        ? R.string.verizon_terms_and_conditions_decline_dialog_message
+        : R.string.dialer_terms_and_conditions_decline_dialog_message;
+  }
+
+  private int getTosDeclinedDialogDowngradeId() {
+    return isVvm3()
+        ? R.string.verizon_terms_and_conditions_decline_dialog_downgrade
+        : R.string.dialer_terms_and_conditions_decline_dialog_downgrade;
+  }
+}
diff --git a/java/com/android/dialer/app/voicemail/error/Vvm3VoicemailMessageCreator.java b/java/com/android/dialer/app/voicemail/error/Vvm3VoicemailMessageCreator.java
index 132e8a3..e639eff 100644
--- a/java/com/android/dialer/app/voicemail/error/Vvm3VoicemailMessageCreator.java
+++ b/java/com/android/dialer/app/voicemail/error/Vvm3VoicemailMessageCreator.java
@@ -16,32 +16,19 @@
 
 package com.android.dialer.app.voicemail.error;
 
-import android.app.AlertDialog;
-import android.content.ComponentName;
 import android.content.Context;
-import android.content.DialogInterface;
 import android.content.Intent;
-import android.content.SharedPreferences;
 import android.net.Uri;
 import android.os.Build.VERSION_CODES;
-import android.preference.PreferenceManager;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.annotation.RequiresApi;
-import android.support.annotation.VisibleForTesting;
-import android.telecom.PhoneAccountHandle;
-import android.telephony.TelephonyManager;
 import android.view.View;
 import android.view.View.OnClickListener;
-import com.android.contacts.common.compat.TelephonyManagerCompat;
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.dialer.app.voicemail.error.VoicemailErrorMessage.Action;
-import com.android.dialer.common.LogUtil;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
-import com.android.voicemail.VoicemailClient;
-import com.android.voicemail.VoicemailComponent;
-import java.util.Locale;
 
 /**
  * Create error message from {@link VoicemailStatus} for VVM3 visual voicemail. VVM3 is used only by
@@ -84,15 +71,13 @@
   public static final int PIN_NOT_SET = -100;
   public static final int SUBSCRIBER_UNKNOWN = -99;
 
-  private static final String ISO639_SPANISH = "es";
-  @VisibleForTesting static final String VVM3_TOS_ACCEPTANCE_FLAG_KEY = "vvm3_tos_acceptance_flag";
-
   @Nullable
   public static VoicemailErrorMessage create(
       final Context context,
       final VoicemailStatus status,
       final VoicemailStatusReader statusReader) {
-    VoicemailErrorMessage tosMessage = maybeShowTosMessage(context, status, statusReader);
+    VoicemailErrorMessage tosMessage =
+        new VoicemailTosMessageCreator(context, status, statusReader).maybeCreateTosMessage();
     if (tosMessage != null) {
       return tosMessage;
     }
@@ -299,135 +284,4 @@
           }
         });
   }
-
-  @Nullable
-  private static VoicemailErrorMessage maybeShowTosMessage(
-      final Context context,
-      final VoicemailStatus status,
-      final VoicemailStatusReader statusReader) {
-    final SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
-    if (preferences.getBoolean(VVM3_TOS_ACCEPTANCE_FLAG_KEY, false)) {
-      return null;
-    }
-    Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_SHOWN);
-
-    CharSequence termsAndConditions;
-    CharSequence acceptText;
-    CharSequence declineText;
-    // TODO(b/29082671): use LocaleList
-    if (Locale.getDefault().getLanguage().equals(new Locale(ISO639_SPANISH).getLanguage())) {
-      // Spanish
-      termsAndConditions = context.getString(R.string.verizon_terms_and_conditions_1_1_spanish);
-      acceptText = context.getString(R.string.verizon_terms_and_conditions_accept_spanish);
-      declineText = context.getString(R.string.verizon_terms_and_conditions_decline_spanish);
-    } else {
-      termsAndConditions = context.getString(R.string.verizon_terms_and_conditions_1_1_english);
-      acceptText = context.getString(R.string.verizon_terms_and_conditions_accept_english);
-      declineText = context.getString(R.string.verizon_terms_and_conditions_decline_english);
-    }
-
-    return new VoicemailTosMessage(
-            context.getString(R.string.verizon_terms_and_conditions_title),
-            context.getString(R.string.verizon_terms_and_conditions_message, termsAndConditions),
-            new Action(
-                declineText,
-                new OnClickListener() {
-                  @Override
-                  public void onClick(View v) {
-                    LogUtil.i("Vvm3VoicemailMessageCreator.maybeShowTosMessage", "decline clicked");
-                    PhoneAccountHandle handle =
-                        new PhoneAccountHandle(
-                            ComponentName.unflattenFromString(status.phoneAccountComponentName),
-                            status.phoneAccountId);
-                    Logger.get(context)
-                        .logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_DECLINE_CLICKED);
-                    showDeclineTosDialog(context, handle, status);
-                  }
-                }),
-            new Action(
-                acceptText,
-                new OnClickListener() {
-                  @Override
-                  public void onClick(View v) {
-                    LogUtil.i("Vvm3VoicemailMessageCreator.maybeShowTosMessage", "accept clicked");
-                    preferences.edit().putBoolean(VVM3_TOS_ACCEPTANCE_FLAG_KEY, true).apply();
-                    Logger.get(context)
-                        .logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_ACCEPTED);
-                    statusReader.refresh();
-                  }
-                },
-                true /* raised */))
-        .setModal(true);
-  }
-
-  private static void showDeclineTosDialog(
-      final Context context, final PhoneAccountHandle handle, VoicemailStatus status) {
-    if (PIN_NOT_SET == status.configurationState) {
-      LogUtil.i(
-          "Vvm3VoicemailMessageCreator.showDeclineTosDialog",
-          "PIN_NOT_SET, showing set PIN dialog");
-      showSetPinBeforeDeclineDialog(context);
-      return;
-    }
-    LogUtil.i(
-        "Vvm3VoicemailMessageCreator.showDeclineTosDialog",
-        "showing decline ToS dialog, status=" + status);
-    final TelephonyManager telephonyManager = context.getSystemService(TelephonyManager.class);
-    AlertDialog.Builder builder = new AlertDialog.Builder(context);
-    builder.setMessage(R.string.verizon_terms_and_conditions_decline_dialog_message);
-    builder.setPositiveButton(
-        R.string.verizon_terms_and_conditions_decline_dialog_downgrade,
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int which) {
-            Logger.get(context).logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_DECLINED);
-            VoicemailClient voicemailClient = VoicemailComponent.get(context).getVoicemailClient();
-            if (voicemailClient.isVoicemailModuleEnabled()) {
-              voicemailClient.setVoicemailEnabled(context, status.getPhoneAccountHandle(), false);
-            } else {
-              TelephonyManagerCompat.setVisualVoicemailEnabled(telephonyManager, handle, false);
-            }
-          }
-        });
-
-    builder.setNegativeButton(
-        android.R.string.cancel,
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int which) {
-            dialog.dismiss();
-          }
-        });
-
-    builder.setCancelable(true);
-    builder.show();
-  }
-
-  private static void showSetPinBeforeDeclineDialog(final Context context) {
-    AlertDialog.Builder builder = new AlertDialog.Builder(context);
-    builder.setMessage(R.string.verizon_terms_and_conditions_decline_set_pin_dialog_message);
-    builder.setPositiveButton(
-        R.string.verizon_terms_and_conditions_decline_set_pin_dialog_set_pin,
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int which) {
-            Logger.get(context)
-                .logImpression(DialerImpression.Type.VOICEMAIL_VVM3_TOS_DECLINE_CHANGE_PIN_SHOWN);
-            Intent intent = new Intent(TelephonyManager.ACTION_CONFIGURE_VOICEMAIL);
-            context.startActivity(intent);
-          }
-        });
-
-    builder.setNegativeButton(
-        android.R.string.cancel,
-        new DialogInterface.OnClickListener() {
-          @Override
-          public void onClick(DialogInterface dialog, int which) {
-            dialog.dismiss();
-          }
-        });
-
-    builder.setCancelable(true);
-    builder.show();
-  }
 }
diff --git a/java/com/android/dialer/app/voicemail/error/res/layout/voicemail_tos_fragment.xml b/java/com/android/dialer/app/voicemail/error/res/layout/voicemail_tos_fragment.xml
index c193eaa..a082e8e 100644
--- a/java/com/android/dialer/app/voicemail/error/res/layout/voicemail_tos_fragment.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/layout/voicemail_tos_fragment.xml
@@ -1,4 +1,18 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2017 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
@@ -68,4 +82,4 @@
       android:text="@string/verizon_terms_and_conditions_accept_english"/>
   </LinearLayout>
 
-</LinearLayout>
\ No newline at end of file
+</LinearLayout>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-af/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-af/strings.xml
index 9c64735..ab951eb 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-af/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-af/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiveer tans visuele stemboodskapdiens"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Jy sal dalk nie stemboodskapkennisgewings ontvang totdat visuele stemboodskapdiens heeltemal geaktiveer is nie. Bel stemboodskapdiens om nuwe boodskappe te kry totdat stemboodskapdiens volledig geaktiveer is."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Kan nie visuele stemboodskapdiens aktiveer nie"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Maak seker jou foon het sellulêre verbinding en probeer weer."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Maak seker jou foon het ’n mobiele netwerkverbinding en probeer weer."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Skakel vliegtuigmodus af en probeer weer."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Geen verbinding nie"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Jy sal nie van nuwe stemboodskappe in kennis gestel word nie. As jy op Wi-Fi is, kan jy jou stemboodskapdiens nagaan deur nou te sinkroniseer."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Jy sal nie van nuwe stemboodskappe in kennis gestel word nie. As jy op Wi-Fi is, kan jy jou stemboodskapdiens nagaan deur nou te sinkroniseer."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Jy sal nie van nuwe stemboodskappe in kennis gestel word nie. Skakel vliegtuigmodus af om jou stemboodskapdiens te sinkroniseer."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Jou foon benodig \'n sellulêre dataverbinding om stemboodskapdiens na te gaan."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Jou foon benodig \'n mobiele dataverbinding om stemboodskapdiens na te gaan"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Kan nie visuele stemboodskapdiens aktiveer nie"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Kan nie visuele stemboodskapdiens opdateer nie"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Probeer weer wanneer jou Wi-Fi- of sellulêre verbinding beter is. Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Probeer weer wanneer jou sellulêredataverbinding beter is. Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Probeer weer wanneer jou Wi-Fi- of mobiele dataverbinding beter is. Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Probeer weer wanneer jou mobiele dataverbinding beter is. Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Kan nie visuele stemboodskapdiens opdateer nie"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Jy kan steeds bel om stemboodskapdiens na te gaan."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Kan nie visuele stemboodskapdiens opdateer nie"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Iets het verkeerd geloop"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontak asseblief Kliëntediens by <xliff:g id="NUMBER">%1$s</xliff:g> en gee vir hulle die foutkode 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visuele stemboodskapdiens se bepalings en voorwaardes"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Jy moet Verizon Wireless se bepalings en voorwaardes aanvaar om visuele stemboodskapdiens te gebruik:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nJy moet Verizon Wireless se bepalings en voorwaardes aanvaar om visuele stemboodskappe te gebruik:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Skakel visuele stemboodskappe aan"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuele stemboodskapdiens sal gedeaktiveer word as die bepalings en voorwaardes afgekeur word."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Deaktiveer visuele stemboodskapdiens"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Stemboodskaptranskripsie sal gedeaktiveer word as die bepalings en voorwaardes afgekeur word."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Deaktiveer stemboodskaptranskripsie"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Stempos sal slegs toeganklik wees as jy *86 bel. Stel \'n nuwe stempos-PIN om voort te gaan."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Stel PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-am/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-am/strings.xml
index 502b873..14482e9 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-am/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-am/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"እይታዊ የድምጽ መልዕክት በማግበር ላይ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"እይታዊ የድምጽ መልዕክት ሙሉ ለሙሉ እስከሚነቃ ድረስ የድምፅ መልዕክት ማሳወቂያዎችን ላይቀበሉ ይችላሉ። የድምጽ መልዕክት ሙሉ ለሙሉ እስኪያገብር ድረስ አዲስ መልዕክቶችን ለማምጣት ወደ ድምፅ መልዕክት ይደውሉ።"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"እይታዊ የድምጽ መልዕክትን ማግበር አይቻልም"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ስልክዎ የሴሉላር ግንኙነት እንዳለው ያረጋግጡና እንደገና ይሞክሩ።"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ስልክዎ የተንቀሳቃሽ ስልክ አውታረ መረብ ግንኙነት እንዳለው ያረጋግጡና እንደገና ይሞክሩ።"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"የአውሮፕላን ሁነታን ያጥፉ እና እንደገና ይሞክሩ።"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ምንም ግንኙነት የለም"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ለአዲስ የድምጽ መልዕክቶች ማሳወቂያ አይደርስዎትም። Wi-Fi ላይ ከሆኑ አሁን በማስመር የድምጽ መልዕክትን መፈተሽ ይችላሉ።"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ለአዲስ የድምጽ መልዕክቶች ማሳወቂያ አይደርስዎትም። Wi-Fi ላይ ከሆኑ አሁን በማስመር የድምጽ መልዕክትን መፈተሽ ይችላሉ።"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ለአዲስ የድምጽ መልዕክቶች ማሳወቂያ አይደርስዎትም። የድምጽ መልዕክትዎን ለማስመር የአውሮፕላን ሁነታን ያጥፉ።"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"የድምጽ መልዕክት ለመፈተሽ ስልክዎ የሴሉላር ውሂብ ያስፈልገዋል።"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"የድምጽ መልዕክትን ለመፈተሽ ስልክዎ የተንቀሳቃሽ ስልክ ውሂብ ግንኙነት ያስፈልገዋል።"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"እይታዊ የድምጽ መልዕክትን ማግበር አይቻልም"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"አሁንም ቢሆን የድምጽ መልዕክትን ለመፈተሽ መደወል ይችላሉ።"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"እይታዊ የድምጽ መልዕክትን ማዘመን አይቻልም"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"የWi-Fi ወይም ሴሉላር ግንኙነትዎ ሲሻሻል እንደገና ይሞክሩ። አሁንም ቢሆን የድምጽ መልዕክት ለመፈተሽ መደወል ይችላሉ።"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"የሴሉላር ውሂብዎ ሲሻሻል እንደገና ይሞክሩ። አሁንም ቢሆን የድምጽ መልዕክትዎን ለመፈተሽ መደወል ይችላሉ።"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"የWi‑Fi ወይም የተንቀሳቃሽ ስልክ ውሂብ ግንኙነትዎ ሲሻሻል እንደገና ይሞክሩ። አሁንም ቢሆን የድምጽ መልዕክትዎን ለመፈተሽ መደወል ይችላሉ።"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"የተንቀሳቃሽ ስልክ ውሂብ ግንኙነትዎ ሲሻሻል እንደገና ይሞክሩ። አሁንም ቢሆን የድምጽ መልዕክትዎን ለመፈተሽ መደወል ይችላሉ።"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"እይታዊ የድምጽ መልዕክትን ማዘመን አይቻልም"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"አሁንም ቢሆን የድምጽ መልዕክትን ለመፈተሽ መደወል ይችላሉ።"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"እይታዊ የድምጽ መልዕክትን ማዘመን አይቻልም"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"የሆነ ችግር ተፈጥሯል"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"እባክዎ የደንበኛ አገልግሎትን በ<xliff:g id="NUMBER">%1$s</xliff:g> ላይ ያግኙ እና የስህተት ቁጥሩ 9999 እንደሆነ ይንገሯቸው።"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visual Voicemail የአገልግሎት ውል"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"እይታዊ የድምጽ መልዕክትን ለመጠቀም የVerizon Wirelessን የአገልግሎት ውል መቀበል አለብዎ፦ \n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nእይታዊ የድምጽ መልዕክትን ለመጠቀም የVerizon Wirelessን የአገልግሎት ውል መቀበል አለብዎ፦\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"እይታዊ የድምጽ መልዕክን አብራ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"የአገልግሎት ውሉ ተቀባይነት ካላገኘ እይታዊ የድምጽ መልዕክት ይወገዳል።"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"እይታዊ የድምጽ መልዕክትን አስወግድ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"የአገልግሎት ውል ተቀባይነት ካላገኙ፣ የድምጽ መልዕክት ወደ ጽሁፍ መለወጥ ይሰናከላል።"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"የድምጽ መልዕክትን ወደ ጽሁፍ መለወጥን አሰናክል"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"የድምጽ መልዕክት ላይ መድረስ የሚቻለው *86 በመደወል ብቻ ነው። ለመቀጠል አዲስ የድምጽ መልዕክት ፒን ያዘጋጁ።"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"ፒን ያዘጋጁ"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ar/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ar/strings.xml
index 6d462ef..91f6398 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ar/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ar/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"تنشيط البريد الصوتي المرئي"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"قد لا تتلقّى إشعارات البريد الصوتي حتى يتم تنشيط البريد الصوتي المرئي تمامًا. يمكنك الاتصال بالبريد الصوتي لاسترداد الرسائل الجديدة إلى أن يتم تنشيط البريد الصوتي تمامًا."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"يتعذر تنشيط البريد الصوتي المرئي"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"تأكد من وجود اتصال جوال على هاتفك وحاول مرة أخرى."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"تأكد من أن هاتفك توجد به اتصال شبكة جوال وحاول مرة أخرى."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"أوقف تشغيل وضع الطائرة وحاول مرة أخرى."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"لا يتوفر اتصال"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"‏لن يتم إعلامك برسائل البريد الصوتي الجديدة. إذا كنت تستخدم شبكة Wi-Fi، فيمكنك التحقق من البريد الصوتي عن طريق إجراء المزامنة الآن."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"‏لن يتم إعلامك برسائل البريد الصوتي الجديدة. إذا كنت تستخدم شبكة Wi-Fi، فيمكنك التحقق من البريد الصوتي عن طريق إجراء المزامنة الآن."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"لن يتم إعلامك برسائل البريد الصوتي الجديدة. أوقف تشغيل وضع الطائرة لمزامنة بريدك الصوتي."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"يحتاج هاتفك إلى اتصال جوال للتحقق من البريد الصوتي."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"يحتاج هاتفك إلى اتصال بيانات جوال للتحقق من البريد الصوتي."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"يتعذر تنشيط البريد الصوتي المرئي"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"لا يزال بإمكانك إجراء الاتصال للتحقق من البريد الصوتي."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"يتعذر تحديث البريد الصوتي المرئي"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"‏حاول مرة أخرى عندما يكون لديك اتصال Wi-Fi أو جوال أفضل. لا يزال بإمكانك الاتصال والتحقق من البريد الصوتي."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"حاول مرة أخرى عندما يكون لديك اتصال جوال أفضل. لا يزال بإمكانك الاتصال والتحقق من البريد الصوتي."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"‏حاول مرة أخرى عندما يكون لديك اتصال Wi-Fi أو جوال أفضل. لا يزال بإمكانك الاتصال والتحقق من البريد الصوتي."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"حاول مرة أخرى عندما يكون لديك اتصال جوال أفضل. لا يزال بإمكانك الاتصال والتحقق من البريد الصوتي."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"يتعذر تحديث البريد الصوتي المرئي"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"لا يزال بإمكانك إجراء الاتصال للتحقق من البريد الصوتي."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"يتعذر تحديث البريد الصوتي المرئي"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"حدث خطأٌ ما"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"يُرجى الاتصال بخدمة العملاء على الرقم <xliff:g id="NUMBER">%1$s</xliff:g> وإبلاغهم أن رمز الخطأ هو 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"البنود والشروط للبريد الصوتي المرئي"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"‏يجب قبول البنود والشروط لاتصال Verizon اللاسلكي من أجل استخدام البريد الصوتي المرئي:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"‏%1$s\n\nينبغي لك قبول البنود والشروط التي تخص Verizon Wireless لاستخدام البريد الصوتي المرئي:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"تشغيل البريد الصوتي المرئي"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"سيتم تعطيل البريد الصوتي المرئي في حالة رفض البنود والشروط."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"تعطيل البريد الصوتي المرئي"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"سيتم تعطيل نسخ البريد الصوتي في حالة رفض البنود والشروط."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"تعطيل نسخ البريد الصوتي"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"يمكن الوصول إلى البريد الصوتي فقط عن طريق طلب *86. ينبغي تعيين رقم تعريف شخصي جديد للبريد الصوتي للمتابعة."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"تعيين رقم التعريف الشخصي"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-az/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-az/strings.xml
index 33ddafa..5847984 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-az/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-az/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Vizual Səsli Mesaj aktiv edilir"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Vizual səsli mesaj tam aktiv edilənə klim səsli mesaj bildirişi ala bilməzsiniz. Səsli mesaj tam aktiv edilənə kimi yeni mesajları əldə etmək üçün səsli poçta zəng edin."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizual Səsli Mesaj aktiv edilə bilmir"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Telefonunuzda mobil bağlantı olduğuna əmin olun və yenidən cəhd edin."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Əmin olun ki, telefonun şəbəkə bağlantısı var və yenidən cəhd edin."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Təyyarə rejimini deaktiv edin və yenidən cəhd edin."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Bağlantı yoxdur"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Yeni gələn səsli mesajlara görə bildiriş almayacaqsınız. Wi-Fi qoşuludursa, sinxronizasiya etməklə səsli mesajları yoxlaya bilərsiniz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Yeni gələn səsli e-məktublara görə bildiriş almayacaqsınız. Wi-Fi qoşuludursa, sinxronizasiya etməklə səsli e-məktubları yoxlaya bilərsiniz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Yeni gələn səsli mesajlara görə bildiriş almayacaqsınız. Səsli mesajları sinxronizasiya etmək üçün təyyarə rejimini deaktiv edin."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Səsli mesajları yoxlamaq üçün telefonda mobil data bağlantısı olmalıdır."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Səsli e-məktubları yoxlamaq üçün telefonda mobil data bağlantısı olmalıdır."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizual Səsli Mesaj aktiv edilə bilmir"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Səsli mesajları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizual səsli mesajları yeniləmək olmur"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fivə ya mobil data bağlantısı yaxşı olduqda bir daha yoxlayın. Səsli mesajları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Mobil data bağlantısı yaxşı olduqda bir daha yoxlayın. Səsli mesajları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Wi‑Fi və ya mobil data bağlantısı daha yaxşı olduqda yenidən cəhd edin. Səsli e-məktubları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Mobil data bağlantısı yaxşı olduqda bir daha yoxlayın. Səsli e-məktubları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizual səsli mesajları yeniləmək olmur"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Səsli mesajları yoxlamaq üçün yenə də zəng edə bilərsiniz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizual səsli mesajları yeniləmək olmur"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Nəsə Xəta Oldu"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Lütfən, <xliff:g id="NUMBER">%1$s</xliff:g> nömrəsi ilə Müştəri Xidmətinə zəng edin. Xəta kodu 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vizual Səsli Poçt Şərtləri və Qaydaları"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Vizual səsli poçtu istifadə etmək üçün Verizon Wireless şərtlər və qaydalarını qəbul etməlisiniz:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nGörünən səsli e-poçtdan istifadə etmək üçün Verizon Wireless\'in şərt və qaydalarını qəbul etməlisiniz:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Görünən Səsli e-poçtu aktiv edin"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Şərtlər və qaydalar rədd edilsə, vizual səsli poçt deaktiv ediləcək."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Vizual səsli poçtu deaktiv edin"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Şərt və qaydalar rədd edilərsə, səsli e-poçt transkripsiyası deaktiv ediləcək."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Səsli e-poçt transkripsiyasını deaktiv edin"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Səsli məktub yalnız *86 nömrəsinə zəng etməklə mümkündür. Davam etmək üçün yeni səsli məktub PIN kodu təyin edin."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN kodu ayarlayın"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-b+sr+Latn/strings.xml
index 98dc061..dc9c23a 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-b+sr+Latn/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktivira se vizuelna govorna pošta"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Možda nećete dobijati obaveštenja o govornoj pošti dok potpuno ne aktivirate vizuelnu govornu poštu. Pozovite govornu poštu da biste preuzeli nove poruke dok govorna pošta ne bude potpuno aktivirana."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Aktiviranje vizuelne govorne pošte nije uspelo"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Proverite da li telefon ima mobilnu vezu i pokušajte ponovo."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Proverite da li telefon ima vezu preko mobilne mreže i probajte ponovo."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Isključite režim rada u avionu i pokušajte ponovo."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Veza nije uspostavljena"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nećete dobijati obaveštenja o novim govornim porukama. Ako ste na Wi-Fi mreži, sinhronizujte da biste proverili govornu poštu."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nećete dobijati obaveštenja o novim govornim porukama. Ako ste na Wi‑Fi mreži, možete da sinhronizujete da biste proverili govornu poštu."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nećete dobijati obaveštenja o novim govornim porukama. Isključite režim rada u avionu da biste sinhronizovali govornu poštu."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefonu treba mobilna veza za prenos podataka da biste proverili govornu poštu."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefonu je za proveru govorne pošte potrebna mobilna veza za prenos podataka."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Aktiviranje vizuelne govorne pošte nije uspelo"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"I dalje možete da pozovete govornu poštu da biste je proverili."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Ažuriranje vizuelne govorne pošte nije uspelo"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Probajte ponovo kad budete imali bolju Wi-Fi ili mobilnu vezu. I dalje možete da pozovete govornu poštu da biste je proverili."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Probajte ponovo kad budete imali bolju mobilnu vezu za prenos podataka. I dalje možete da pozovete govornu poštu da biste je proverili."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Probajte ponovo kad budete imali bolju Wi‑Fi ili mobilnu vezu za prenos podataka. I dalje možete da pozovete govornu poštu da biste je proverili."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Probajte ponovo kad budete imali bolju mobilnu vezu za prenos podataka. I dalje možete da pozovete govornu poštu da biste je proverili."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Ažuriranje vizuelne govorne pošte nije uspelo"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"I dalje možete da pozovete govornu poštu da biste je proverili."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Ažuriranje vizuelne govorne pošte nije uspelo"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Nešto nije u redu"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontaktirajte korisničku podršku na <xliff:g id="NUMBER">%1$s</xliff:g> i recite im da je kôd greške 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Uslovi i odredbe za vizuelnu govornu poštu"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Morate da prihvatite Verizon Wireless uslove i odredbe da biste koristili vizuelnu govornu poštu:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nMorate da prihvatite Verizon Wireless uslove i odredbe da biste koristili vizuelnu govornu poštu:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Uključite vizuelnu govornu poštu"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ako odbijete uslove i odredbe, onemogućićete vizuelnu govornu poštu."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Onemogućite vizuelnu govornu poštu"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripcija govorne pošte će biti onemogućena ako se uslovi i odredbe odbiju."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Onemogućite transkripciju govorne pošte"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Govornoj pošti ćete moći da pristupite samo ako pozovete *86. Podesite novi PIN kôd govorne pošte da biste nastavili."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Podesite PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-be/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-be/strings.xml
index 50f32af..368a41f 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-be/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-be/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Актывацыя візуальнай галасавой пошты"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Вы можаце не атрымліваць апавяшчэнні галасавой пошты, пакуль візуальная галасавая пошта не будзе поўнасцю актывавана. Каб атрымліваць новыя паведамленні да завяршэння актывацыі, выклікайце галасавую пошту."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Немагчыма актываваць візуальную галасавую пошту"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Пераканайцеся, што ваш тэлефон падключаны да сотавай сеткі і паўтарыце спробу."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Пераканайцеся, што ваш тэлефон падключаны да мабільнай сеткі і паўтарыце спробу."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Выключыце рэжым палёту і паўтарыце спробу."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Няма падключэння"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Вас не будуць апавяшчаць аб новых галасавых паведамленнях. Калі вы падключаны да Wi-Fi, можаце праверыць галасавую пошту шляхам сінхранізацыі."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Вас не будуць апавяшчаць аб новых галасавых паведамленнях. Калі вы падключаны да Wi-Fi, можаце праверыць галасавую пошту шляхам сінхранізацыі."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Вас не будуць апавяшчаць аб новых галасавых паведамленнях. Выключыце рэжым палёту і сінхранізуйце сваю галасавую пошту."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Каб праверыць галасавую пошту, вашаму тэлефону патрэбна падключэнне да сотавай перадачы даных."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Каб праверыць галасавую пошту, вашаму тэлефону патрэбна падключэнне да мабільнай перадачы даных."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Немагчыма актываваць візуальную галасавую пошту"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Немагчыма абнавіць візуальную галасавую пошту"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Паўтарыце спробу, калі падключэнне да Wi-Fi да сотавай перадачы даных палепшыцца. Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Паўтарыце спробу, калі паша падключэнне да сотавай перадачы даных палепшыцца. Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Паўтарыце спробу, калі падключэнне да Wi-Fi або да мабільнай перадачы даных палепшыцца. Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Паўтарыце спробу, калі паша падключэнне да мабільнай перадачы даных палепшыцца. Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Немагчыма абнавіць візуальную галасавую пошту"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Вы надалей можаце пазваніць, каб праверыць галасавую пошту."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Немагчыма абнавіць візуальную галасавую пошту"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Нешта пайшло не так"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Звяжыцеся са Службай падтрымкі па нумары <xliff:g id="NUMBER">%1$s</xliff:g> і паведаміце код памылкі 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Умовы візуальнай галасавой пошты"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Вы павінны прыняць ўмовы Verizon Wireless, каб можна было карыстацца візуальнай галасавой поштай:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nВы павінны прыняць правілы і ўмовы Verizon Wireless, каб можна было карыстацца візуальнай галасавой поштай:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Уключыць візуальную галасавую пошту"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Без згоды з правіламі і ўмовамі візуальная галасавая пошта будзе адключана."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Адключыць візуальную галасавую пошту"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Без згоды з правіламі і ўмовамі транскрыпцыя галасавой пошты будзе адключана."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Адключыць транскрыпцыю галасавой пошты"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Галасавая пошта даступна толькі па выкліку на нумар *86. Каб працягнуць, задайце новы PIN-код галасавой пошты."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Задаць PIN-код"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-bg/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-bg/strings.xml
index dbca19e..6e3463f 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-bg/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-bg/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Визуалната гласова поща се активира"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Възможно е да не получавате известия за гласова поща, докато визуалната гласова поща не бъде напълно активирана. Обаждайте се на номера за гласова поща, за да получавате нови съобщения, докато гласовата поща не е активирана."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Визуалната гласова поща не може да се активира"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Проверете дали телефонът ви има мобилна връзка и опитайте отново."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Проверете дали телефонът ви има връзка с мобилната мрежа и опитайте отново."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Изключете самолетния режим и опитайте отново."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Няма връзка"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Няма да бъдете известявани за нови гласови съобщения. Ако използвате Wi-Fi, можете да проверите за гласова поща, като синхронизирате сега."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Няма да бъдете известявани за нови гласови съобщения. Ако използвате Wi-Fi, можете да проверите за гласова поща, като синхронизирате сега."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Няма да бъдете известявани за нови гласови съобщения. Изключете самолетния режим, за да синхронизирате гласовата си поща."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"За да проверите гласовата поща, телефонът ви трябва да използва връзка за мобилни данни."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"За да проверите гласовата поща, телефонът ви трябва да използва мобилна връзка за данни."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Визуалната гласова поща не може да се активира"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Все пак можете да проверите гласовата поща с обаждане."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Визуалната гласова поща не може да се актуализира."</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Опитайте отново, когато имате по-добра Wi-Fi или мобилна връзка. Все пак можете да проверите гласовата поща с обаждане."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Опитайте отново, когато имате по-добра връзка за мобилни данни. Все пак можете да проверите гласовата поща с обаждане."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Опитайте отново, когато имате по-добра Wi-Fi връзка или мобилна връзка за данни. Пак можете да проверите гласовата си поща чрез обаждане."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Опитайте отново, когато имате по-добра мобилна връзка за данни. Пак можете да проверите гласовата си поща чрез обаждане."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Визуалната гласова поща не може да се актуализира."</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Все пак можете да проверите гласовата поща с обаждане."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Визуалната гласова поща не може да се актуализира."</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Нещо се обърка"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Моля, свържете се с екипа за поддръжка на клиенти на телефон <xliff:g id="NUMBER">%1$s</xliff:g> и кажете, че кодът на грешката е 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Общи условия за визуалната гласова поща"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"За да използвате визуалната гласова поща, трябва да приемете Общите условия на Verizon:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nЗа да използвате визуалната гласова поща, трябва да приемете Общите условия на Verizon:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Включване на визуалната гласова поща"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ако отхвърлите Общите условия, визуалната гласова поща ще бъде деактивирана."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Деактивиране на визуалната гласова поща"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ако отхвърлите Общите условия, създаването на преписи на гласовите съобщения ще бъде деактивирано."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Деактивиране на преписите на гласовите съобщения"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Ще имате достъп до гласовата поща само когато наберете *86. За да продължите, задайте нов ПИН за гласовата поща."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Задаване на ПИН"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-bn/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-bn/strings.xml
index 5954448..867ca85 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-bn/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-bn/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ভিজ্যুয়াল ভয়েসমেল সক্রিয়করণ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ভিজ্যুয়াল ভয়েসমেল সম্পূর্ণরূপে সক্রিয় না করা পর্যন্ত আপনি ভয়েসমেল সংক্রান্ত কোনো বিজ্ঞপ্তি নাও পেতে পারেন৷ ভয়েসমেল সম্পূর্ণরূপে সক্রিয় না হওয়া পর্যন্ত নতুন বার্তাগুলিকে পুনরুদ্ধার করতে ভয়েসমেলে কল করুন৷"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ভিজ্যুয়াল ভয়েসমেল সক্রিয় করবেন না"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"নিশ্চিত করুন যে আপনার ফোনে সেলুলার সংযোগ আছে এবং আবার চেষ্টা করুন।"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"আপনার ফোনে কোনো মোবাইল নেটওয়ার্ক সংযোগ আছে কিনা নিশ্চিত করে আবার চেষ্টা করুন।"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"বিমান মোড বন্ধ করুন এবং আবার চেষ্টা করুন।"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"কোনো সংযোগ নেই"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"আপনাকে নতুন ভয়েসমেলগুলির জন্য সূচিত করা হবে না। আপনি Wi-Fi ব্যবহার করলে, আপনি এখনই সিঙ্ক করে ভয়েসমেল চেক করতে পারেন।"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"আপনাকে নতুন ভয়েসমেলগুলির জন্য সূচিত করা হবে না। আপনি ওয়াই-ফাই ব্যবহার করলে, এখনই সিঙ্ক করে ভয়েসমেল চেক করতে পারেন।"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"আপনাকে নতুন ভয়েসমেলগুলির জন্য সূচিত করা হবে না। আপনার ভয়েসমেলে সিঙ্ক করার জন্য বিমান মোড বন্ধ করুন।"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ভয়েসমেল চেক করার জন্য আপনার ফোনের একটি সেলুলার ডেটার প্রয়োজন।"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ভয়েসমেল চেক করার জন্য আপনার ফোনের একটি মোবাইল ডেটা সংযোগের প্রয়োজন।"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ভিজ্যুয়াল ভয়েসমেল সক্রিয় করবেন না"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ভিজ্যুয়াল ভয়েসমেল আপডেট করা যাচ্ছে না"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"যখন আপনার Wi-Fi অথবা সেলুলার সংযোগ ভালো থাকবে তখন আবার চেষ্টা করুন। আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"যখন আপনার Wi-Fi অথবা সেলুলার সংযোগ ভালো থাকবে তখন আবার চেষ্টা করুন। আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"যখন আপনার ওয়াই-ফাই অথবা মোবাইল ডেটা সংযোগ ভালো থাকবে তখন আবার চেষ্টা করুন। আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"মোবাইল ডেটা সংযোগ ভালো থাকবে তখন আবার চেষ্টা করুন। আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ভিজ্যুয়াল ভয়েসমেল আপডেট করা যাচ্ছে না"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"আপনি এখনও ভয়েসমেল চেক করার জন্য কল করতে পারেন।"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ভিজ্যুয়াল ভয়েসমেল আপডেট করা যাচ্ছে না"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"কিছু ভুল হয়েছে"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"অনুগ্রহ করে <xliff:g id="NUMBER">%1$s</xliff:g> এ কল করে গ্রাহক পরিষেবার সাথে যোগাযোগ করুন এবং তাদের জানান যে ত্রুটি কোডটি হলো ৯৯৯৯৷"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ভিজ্যুয়াল ভয়েসমেলের নিবন্ধন এবং শর্তাদি"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ভিজ্যুয়াল ভয়েসমেল ব্যবহার করার জন্য আপনাকে অবশ্যই Verizon Wireless এর নিবন্ধন এবং শর্তাদি স্বীকার করতে হবে:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nভিজ্যুয়াল ভয়েসমেল ব্যবহার করার জন্য আপনাকে অবশ্যই Verizon Wireless এর নিবন্ধন এবং শর্তাদি স্বীকার করতে হবে:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ভিজ্যুয়াল ভয়েসমেল চালু করুন"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"নিবন্ধন এবং শর্তাদি অস্বীকার করা হলে ভিজ্যুয়াল ভয়েসমেল অক্ষম করা হবে৷"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ভিজ্যুয়াল ভয়েসমেল অক্ষম করুন"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"নিবন্ধন এবং শর্তাদি অস্বীকার করা হলে ভিজ্যুয়াল ভয়েসমেলের ট্রান্সক্রিপশান অক্ষম করা হবে৷"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ভয়েসমেলের ট্রান্সক্রিপশান অক্ষম করুন"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"শুধুমাত্র *৮৬ নম্বরে কল করেই ভয়েসমেল অ্যাক্সেস করা যাবে৷ এগিয়ে যাওয়ার জন্য একটি নতুন ভয়েসমেলের পিন সেট করুন৷"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"পিন সেট করুন"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-bs/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-bs/strings.xml
index 0352436..b22c752 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-bs/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-bs/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiviranje vizuelne govorne pošte"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Možda nećete primati obavještenja o govornoj pošti dok se vizuelna govorna pošta ne aktivira u potpunosti. U međuvremenu pozovite govornu poštu za preuzimanje novih poruka."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nije moguće aktivirati vizuelnu govornu poštu"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Provjerite imate li mobilnu mrežu na telefonu i pokušajte ponovo."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Provjerite imate li mobilnu mrežu na telefonu i pokušajte ponovo."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Isključite način rada u avionu i pokušajte ponovo."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Niste povezani na mrežu"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nećete primati obavještenja o novoj govornoj pošti. Ako ste na Wi-Fi mreži, možete provjeriti govornu poštu tako što ćete sada obaviti sinhronizaciju."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nećete primati obavještenja o novim govornim porukama. Ako ste na Wi-Fi mreži, provjerite govornu poštu tako što ćete odmah obaviti sinhronizaciju."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nećete primati obavještenja o novoj govornoj pošti. Isključite način rada u avionu da sinhronizirate govornu poštu."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Vaš telefon treba imati mobilnu podatkovnu vezu za provjeru govorne pošte."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefonu je potreban mobilni prijenos podataka radi provjere govorne pošte."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nije moguće aktivirati vizuelnu govornu poštu"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"I dalje možete nazvati za provjeru govorne pošte."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nije moguće ažurirati vizuelnu govornu poštu"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Pokušajte ponovo kada Wi-Fi ili mobilna mreža bude bolja. I dalje možete nazvati za provjeru govorne pošte."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Pokušajte ponovo kada mobilna podatkovna mreža bude bolja. I dalje možete nazvati za provjeru govorne pošte."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Pokušajte ponovo kada Wi-Fi veza ili mobilni prijenos podataka bude bolji. I dalje možete nazvati za provjeru govorne pošte."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Pokušajte ponovo kada mobilni prijenos podataka bude bolji. I dalje možete nazvati za provjeru govorne pošte."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nije moguće ažurirati vizuelnu govornu poštu"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"I dalje možete nazvati za provjeru govorne pošte."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nije moguće ažurirati vizuelnu govornu poštu"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Nešto nije uredu"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontaktirajte korisničku podršku na broj <xliff:g id="NUMBER">%1$s</xliff:g> i obavijestite ih da je kȏd greške 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Uslovi i odredbe vizuelne govorne pošte"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Morate prihvatiti uslove i odredbe kompanije Verizon Wireless prije korištenja vizuelne govorne pošte:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nMorate prihvatiti uslove i odredbe kompanije Verizon Wireless prije korištenja vizuelne govorne pošte:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Uključi vizuelnu govornu poštu"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Vizuelna govorna pošta bit će onemogućena ako odbijete uslove i odredbe."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Onemogući vizuelnu govornu poštu"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripcija govorne pošte će biti onemogućena ako odbijete uslove i odredbe."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Onemogući transkripciju govorne pošte"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Govornoj pošti ćete moći pristupiti samo pozivanjem broja *86. Postavite novi PIN govorne pošte da nastavite."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Postavi PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ca/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ca/strings.xml
index b6d844d..4793f43 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ca/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ca/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"S\'està activant la bústia de veu visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"És possible que no rebis notificacions de missatges de veu fins que la bústia de veu visual estigui completament activada. Fins aleshores, truca a la bústia de veu per recuperar els missatges nous."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"No es pot activar la bústia de veu visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Comprova la connexió mòbil del telèfon i torna-ho a provar."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Assegura\'t que el telèfon tingui connexió a una xarxa mòbil i torna-ho a provar."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desactiva el mode d\'avió i torna-ho a provar."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sense connexió"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"No rebràs notificacions de missatges de veu nous. Si estàs connectat a una xarxa Wi-Fi, pots sincronitzar ara per consultar la bústia de veu."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"No rebràs notificacions de missatges de veu nous. Si estàs connectat a una xarxa Wi-Fi, pots sincronitzar ara per consultar la bústia de veu."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"No rebràs notificacions de missatges de veu nous. Desactiva el mode d\'avió per sincronitzar la bústia de veu."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"El telèfon necessita una connexió de dades mòbils per consultar la bústia de veu."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Cal que el telèfon tingui una connexió de dades mòbils per poder consultar la bústia de veu."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"No es pot activar la bústia de veu visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Pots trucar igualment per consultar la bústia de veu."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"No es pot actualitzar la bústia de veu visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Torna-ho a provar quan la connexió Wi-Fi o mòbil sigui millor. Pots trucar igualment per consultar la bústia de veu."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Torna-ho a provar quan la connexió de dades mòbils sigui millor. Pots trucar igualment per consultar la bústia de veu."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Torna-ho a provar quan la connexió Wi-Fi o de dades mòbils sigui millor. Pots trucar igualment per consultar la bústia de veu."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Torna-ho a provar quan la connexió de dades mòbils sigui millor. Pots trucar igualment per consultar la bústia de veu."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"No es pot actualitzar la bústia de veu visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Pots trucar igualment per consultar la bústia de veu."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"No es pot actualitzar la bústia de veu visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"S\'ha produït un error"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Contacta amb el servei d\'atenció al client al <xliff:g id="NUMBER">%1$s</xliff:g> i informa\'ls que el codi d\'error és 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termes i condicions de la bústia de veu visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Has d\'acceptar els termes i condicions de Verizon Wireless per utilitzar la bústia de veu visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nHas d\'acceptar els termes i condicions de Verizon Wireless per poder utilitzar la bústia de veu visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activa la bústia de veu visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"La bústia de veu visual es desactivarà si es rebutgen els termes i condicions."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desactiva la bústia de veu visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"La transcripció dels missatges de veu es desactivarà si es rebutgen els termes i condicions."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desactiva la transcripció dels missatges de veu"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Només podràs accedir a la bústia de veu trucant al *86. Defineix un nou PIN de la bústia de veu per continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Defineix el PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-cs/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-cs/strings.xml
index c52f7b0..bf8f54c 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-cs/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-cs/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktivace vizuální hlasové schránky"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Je možné, že dokud nebude vizuální hlasová schránka plně aktivována, nebudou vám chodit oznámení z hlasové schránky. Do té doby se k novým zprávám dostanete po zavolání do hlasové schránky."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizuální hlasovou schránku se nepodařilo aktivovat"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Zkontrolujte, že je telefon připojen k mobilní síti a zkuste to znovu."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Zkontrolujte, že je telefon připojen k mobilní síti a zkuste to znovu."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Vypněte režim letadla a zkuste to znovu."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nejste připojeni"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nebudete dostávat oznámení o nových hlasových zprávách. Pokud jste připojeni k Wi-Fi, můžete hlasovou schránku zkontrolovat synchronizací."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nebudete dostávat oznámení o nových hlasových zprávách. Pokud jste připojeni k Wi-Fi, můžete hlasovou schránku zkontrolovat synchronizací."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nebudete dostávat oznámení o nových hlasových zprávách. Pokud chcete hlasovou schránku synchronizovat, vypněte režim letadla."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefon musí být připojen k mobilním datům, aby bylo možné zkontrolovat hlasovou schránku."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefon musí být připojen k mobilním datům, aby bylo možné zkontrolovat hlasovou schránku."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizuální hlasovou schránku se nepodařilo aktivovat"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Můžete ji ale stále zkontrolovat zavoláním."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizuální hlasovou schránku se nepodařilo aktualizovat"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Zkuste to znovu, až budete mít lepší připojení k Wi-Fi nebo k mobilním datům. Stále ale můžete hlasovou schránku zkontrolovat zavoláním."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Zkuste to znovu, až budete mít lepší připojení k mobilním datům. Stále ale můžete hlasovou schránku zkontrolovat zavoláním."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Zkuste to znovu, až budete mít lepší připojení k Wi-Fi nebo k mobilním datům. Stále ale můžete hlasovou schránku zkontrolovat zavoláním."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Zkuste to znovu, až budete mít lepší připojení k mobilním datům. Stále ale můžete hlasovou schránku zkontrolovat zavoláním."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizuální hlasovou schránku se nepodařilo aktualizovat"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Můžete ji ale stále zkontrolovat zavoláním."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizuální hlasovou schránku se nepodařilo aktualizovat"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Něco se pokazilo"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontaktujte zákaznický servis na čísle <xliff:g id="NUMBER">%1$s</xliff:g> a sdělte kód chyby 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Smluvní podmínky vizuální hlasové schránky"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Pokud chcete používat vizuální hlasovou schránku, musíte přijmout smluvní podmínky společnosti Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nChcete-li používat vizuální hlasovou schránku, musíte přijmout smluvní podmínky společnosti Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Zapnout vizuální hlasovou schránku"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Pokud smluvní podmínky odmítnete, vizuální hlasová schránka bude vypnuta."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Vypnout vizuální hlasovou schránku"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Pokud smluvní podmínky odmítnete, přepis hlasové schránky bude vypnut."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Vypnout přepis hlasové schránky"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Hlasová schránka bude dostupná jen zavoláním na číslo *86. Pokud chcete pokračovat, nastavte si nový kód PIN k hlasové schránce."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Nastavit kód PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-da/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-da/strings.xml
index 26e5ede..71dc2e6 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-da/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-da/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiverer visuel telefonsvarer"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Du modtager muligvis ikke telefonsvarerunderretninger, før den visuelle telefonsvarer er fuldt aktiveret. Ring til telefonsvareren for hente nye beskeder, indtil telefonsvareren er fuldt aktiveret."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Visuel telefonsvarer kan ikke aktiveres"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Sørg for, at din telefon har mobilforbindelse, og prøv igen."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Sørg for, at din telefon har forbindelse til mobilnetværket, og prøv igen."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Slå flytilstand fra, og prøv igen."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ingen forbindelse"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Du vil ikke få besked om nye telefonsvarerbeskeder. Hvis du er på Wi-Fi, kan du tjekke, om der er telefonsvarerbeskeder, ved at synkronisere nu."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Du får ikke besked om nye talebeskeder. Hvis du er på Wi-Fi, kan du tjekke, om der er talebeskeder, ved at synkronisere nu."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Du vil ikke få besked om nye telefonsvarerbeskeder. Slå flytilstand fra for at synkronisere din e-mail."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Din telefon skal have en mobilforbindelse, for at du kan tjekke din telefonsvarer."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Din telefon skal have en mobildataforbindelse, for at du kan tjekke, om der er talebeskeder."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Visuel telefonsvarer kan ikke aktiveres"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Du kan stadig ringe op for at tjekke din telefonsvarer."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Visuel telefonsvarer kan ikke opdateres"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Prøv igen, når din Wi-Fi- eller mobilforbindelse er bedre. Du kan stadig ringe op for at tjekke din telefonsvarer."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Prøv igen, når din mobildataforbindelse er bedre. Du kan stadig ringe op for at tjekke din telefonsvarer."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Prøv igen, når din Wi-Fi- eller mobildataforbindelse er bedre. Du kan stadig ringe for at tjekke, om der er talebeskeder."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Prøv igen, når din mobildataforbindelse er bedre. Du kan stadig ringe for at tjekke, om der er talebeskeder."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Visuel telefonsvarer kan ikke opdateres"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Du kan stadig ringe op for at tjekke din telefonsvarer."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Visuel telefonsvarer kan ikke opdateres"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Der opstod en fejl"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontakt kundeservice på <xliff:g id="NUMBER">%1$s</xliff:g>, og fortæl dem, at fejlkoden er 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vilkår og betingelser for visuel telefonsvarer"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Du skal acceptere vilkår og betingelser for Verizon Wireless for at bruge visuel telefonsvarer:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDu skal acceptere vilkår og betingelser for Verizon Wireless for at bruge visuel telefonsvarer:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Slå Visuel telefonsvarer til"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuel telefonsvarer bliver deaktiveret, hvis vilkår og betingelser afvises."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Deaktiver visuel telefonsvarer"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transskription af talebeskeder deaktiveres, hvis du ikke accepterer vilkår og betingelser."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Deaktiver transskription af talebeskeder"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Telefonsvareren er kun tilgængelig, hvis du taster *86 og ringer op. Angiv en ny pinkode til telefonsvarer for at fortsætte."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Angiv pinkode"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-de/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-de/strings.xml
index 865ddd9..c340582 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-de/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-de/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Visuelle Mailbox wird aktiviert"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Möglicherweise erhältst du keine Mailbox-Benachrichtigungen, solange die visuelle Mailbox nicht vollständig aktiviert ist. Bis es soweit ist, kannst du deine Mailbox anrufen, um neue Nachrichten abzuhören."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Visuelle Mailbox kann nicht aktiviert werden"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Vergewissere dich, dass dein Smartphone eine Mobilfunkverbindung hat und versuche es noch einmal."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Vergewissere dich, dass auf deinem Smartphone eine Mobilfunkverbindung besteht, und versuche es noch einmal."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Schalte den Flugmodus aus und versuche es noch einmal."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Keine Verbindung"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Du wirst nicht über neue Mailboxnachrichten informiert. Wenn du eine WLAN-Verbindung hast, kannst du deine Mailbox abrufen, indem du dein Smartphone jetzt synchronisierst."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Du wirst nicht über neue Mailboxnachrichten informiert. Wenn du eine WLAN-Verbindung verwendest, kannst du deine Mailbox abrufen, indem du dein Smartphone jetzt synchronisierst."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Du wirst nicht über neue Mailboxnachrichten informiert. Schalte den Flugmodus aus, um deine Mailbox zu synchronisieren."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Dein Smartphone benötigt eine mobile Datenverbindung, um die Mailbox abzurufen."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Dein Smartphone benötigt eine mobile Datenverbindung, um die Mailbox abzurufen."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Visuelle Mailbox kann nicht aktiviert werden"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Du kannst deine Mailbox immer noch per Anruf abhören."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Visuelle Mailbox kann nicht aktualisiert werden"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Versuch es noch einmal, sobald die WLAN- bzw. Mobilfunkverbindung besser ist. Du kannst deine Mailbox immer noch per Anruf abhören."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Versuch es noch einmal, sobald die Mobilfunkverbindung besser ist. Du kannst deine Mailbox immer noch per Anruf abhören."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Versuche es noch einmal, sobald die WLAN- bzw. Mobilfunkverbindung besser ist. Du kannst deine Mailbox weiterhin per Anruf abhören."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Versuche es noch einmal, sobald die Mobilfunkverbindung besser ist. Du kannst deine Mailbox weiterhin per Anruf abhören."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Visuelle Mailbox kann nicht aktualisiert werden"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Du kannst deine Mailbox immer noch per Anruf abhören."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Visuelle Mailbox kann nicht aktualisiert werden"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ein Problem ist aufgetreten"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Bitte wende dich an den Kundensupport unter der Nummer <xliff:g id="NUMBER">%1$s</xliff:g> und gib den Fehlercode 9999 an."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Nutzungsbedingungen für visuelle Mailbox"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Du muss den Nutzungsbedingungen von Verizon Wireless zustimmen, um die visuelle Mailbox zu verwenden:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDu musst den Nutzungsbedingungen von Verizon Wireless zustimmen, um die visuelle Mailbox zu verwenden:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Visuelle Mailbox aktivieren"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Die visuelle Mailbox wird deaktiviert, wenn du die Nutzungsbedingungen ablehnst."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Visuelle Mailbox deaktivieren"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Die Sprache-zu-Text-Umwandlung von Mailbox-Nachrichten wird deaktiviert, wenn die Nutzungsbedingungen abgelehnt werden."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Sprache-zu-Text-Umwandlung von Mailbox-Nachrichten deaktivieren"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Du kannst nur auf Mailboxnachrichten zugreifen, indem du *86 anrufst. Lege eine neue Mailbox-PIN fest, um fortzufahren."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN festlegen"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-el/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-el/strings.xml
index acd1ca0..f05319d 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-el/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-el/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ενεργοποίηση οπτικού αυτόματου τηλεφωνητή"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Ενδέχεται να μην λαμβάνετε ειδοποιήσεις αυτόματου τηλεφωνητή έως ότου ο οπτικός αυτόματος τηλεφωνητής ενεργοποιηθεί πλήρως. Καλέστε τον αυτόματο τηλεφωνητή για να ανακτήσετε νέα μηνύματα, έως ότου γίνει πλήρης ενεργοποίηση του οπτικού αυτόματου τηλεφωνητή."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Δεν είναι δυνατή η ενεργοποίηση του οπτικού αυτόματου τηλεφωνητή"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Βεβαιωθείτε ότι το τηλέφωνό σας διαθέτει σύνδεση κινητής τηλεφωνίας και δοκιμάστε ξανά."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Βεβαιωθείτε ότι το τηλέφωνό σας διαθέτει σύνδεση κινητής τηλεφωνίας και δοκιμάστε ξανά."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Απενεργοποιήστε τη λειτουργία πτήσης και δοκιμάστε ξανά."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Δεν υπάρχει σύνδεση"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Δεν θα ειδοποιείστε για νέα φωνητικά μηνύματα. Εάν είστε συνδεδεμένοι μέσω Wi-Fi, μπορείτε να ελέγξετε τον αυτόματο τηλεφωνητή σας για μηνύματα, εκτελώντας συγχρονισμό τώρα."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Δεν θα ειδοποιείστε για νέα φωνητικά μηνύματα. Εάν είστε συνδεδεμένοι μέσω Wi-Fi, μπορείτε να ελέγξετε τον αυτόματο τηλεφωνητή σας για μηνύματα, εκτελώντας συγχρονισμό τώρα."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Δεν θα ειδοποιείστε για νέα φωνητικά μηνύματα. Απενεργοποιήστε τη λειτουργία πτήσης για συγχρονισμό φωνητικών μηνυμάτων του αυτόματου τηλεφωνητή σας."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Το τηλέφωνό σας χρειάζεται σύνδεση δεδομένων κινητής τηλεφωνίας για έλεγχο του αυτόματου τηλεφωνητή σας."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Το τηλέφωνό σας χρειάζεται σύνδεση δεδομένων κινητής τηλεφωνίας για έλεγχο του αυτόματου τηλεφωνητή σας."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Δεν είναι δυνατή η ενεργοποίηση του οπτικού αυτόματου τηλεφωνητή"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Μπορείτε και πάλι να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Δεν είναι δυνατή η ενημέρωση του οπτικού αυτόματου τηλεφωνητή"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Δοκιμάστε ξανά όταν η σύνδεση Wi-Fi ή η σύνδεση κινητής τηλεφωνίας είναι καλύτερη. Ακόμα κι έτσι, μπορείτε να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Δοκιμάστε ξανά όταν η σύνδεση κινητής τηλεφωνίας είναι καλύτερη. Ακόμα κι έτσι, μπορείτε να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Δοκιμάστε ξανά όταν η σύνδεση Wi-Fi ή η σύνδεση κινητής τηλεφωνίας είναι καλύτερη. Ακόμα κι έτσι, μπορείτε να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Δοκιμάστε ξανά όταν η σύνδεση κινητής τηλεφωνίας είναι καλύτερη. Ακόμα κι έτσι, μπορείτε να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Δεν είναι δυνατή η ενημέρωση του οπτικού αυτόματου τηλεφωνητή"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Μπορείτε και πάλι να καλέσετε για να ελέγξετε τον αυτόματο τηλεφωνητή σας."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Δεν είναι δυνατή η ενημέρωση του οπτικού αυτόματου τηλεφωνητή"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Παρουσιάστηκε κάποιο πρόβλημα"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Επικοινωνήστε με το τμήμα εξυπηρέτησης πελατών στο <xliff:g id="NUMBER">%1$s</xliff:g> και αναφέρετέ τους τον κωδικό σφάλματος 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Όροι και Προϋποθέσεις οπτικού αυτόματου τηλεφωνητή"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Πρέπει να αποδεχτείτε τους Όρους και τις Προϋποθέσεις της Verizon Wireless για να χρησιμοποιήσετε τον οπτικό αυτόματο τηλεφωνητή:\n\n"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nΠρέπει να αποδεχτείτε τους όρους και τις προϋποθέσεις της Verizon Wirelessγια τη χρήση οπτικού αυτόματου τηλεφωνητή:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ενεργοποίηση Οπτικού αυτόματου τηλεφωνητή"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ο οπτικός αυτόματος τηλεφωνητής θα απενεργοποιηθεί εάν δεν αποδεχτείτε τους Όρους και τις Προϋποθέσεις."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Απενεργοποίηση οπτικού αυτόματου τηλεφωνητή"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Η μεταγραφή αυτόματου τηλεφωνητή θα απενεργοποιηθεί εάν δεν αποδεχτείτε τους Όρους και τις Προϋποθέσεις."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Απενεργοποίηση μεταγραφής αυτόματου τηλεφωνητή"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Ο αυτόματος τηλεφωνητής θα είναι προσβάσιμος μόνο καλώντας το *86. Ορίστε έναν νέο αριθμό PIN αυτόματου τηλεφωνητή για να συνεχίσετε."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Ορισμός PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-en-rAU/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-en-rAU/strings.xml
index a036950..2349fe0 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-en-rAU/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activating visual voicemail"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"You might not receive voicemail notifications until visual voicemail is fully activated. Call voicemail to retrieve new messages until voicemail is fully activated."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Can\'t activate visual voicemail"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Make sure that your phone has a mobile connection and try again."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Make sure your phone has a mobile network connection and try again."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Turn off aeroplane mode and try again."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"No connection"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"You won\'t be notified about new voicemail. If you\'re on Wi-Fi, you can check for voicemail by syncing now."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"You won\'t be notified for new voicemails. If you\'re on Wi‑Fi, you can check for voicemail by syncing now."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"You won\'t be notified about new voicemail. Turn off aeroplane mode to sync your voicemail."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Your phone needs a mobile data connection to check voicemail."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Your phone needs a mobile data connection to check voicemail."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Can\'t activate visual voicemail"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"You can still call to check voicemail."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Can\'t update visual voicemail"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Try again when your Wi-Fi or mobile connection is better. You can still call to check voicemail."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Try again when your Wi‑Fi or mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Can\'t update visual voicemail"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"You can still call to check voicemail."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Can\'t update visual voicemail"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Something went wrong"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Please contact Customer Service on <xliff:g id="NUMBER">%1$s</xliff:g> and tell them that the error code is 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visual voicemail Terms and Conditions"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"You must accept Verizon Wireless\'s Terms and Conditions to use visual voicemail:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nYou must accept Verizon Wireless\'s terms and conditions to use visual voicemail:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Turn on Visual Voicemail"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visual voicemail will be disabled if the Terms and Conditions are declined."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Disable visual voicemail"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Voicemail transcription will be disabled if the terms and conditions are declined."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Disable voicemail transcription"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Voicemail will only be accessible by calling *86. Set a new voicemail PIN to proceed."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Set PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-en-rGB/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-en-rGB/strings.xml
index a036950..2349fe0 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-en-rGB/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activating visual voicemail"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"You might not receive voicemail notifications until visual voicemail is fully activated. Call voicemail to retrieve new messages until voicemail is fully activated."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Can\'t activate visual voicemail"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Make sure that your phone has a mobile connection and try again."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Make sure your phone has a mobile network connection and try again."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Turn off aeroplane mode and try again."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"No connection"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"You won\'t be notified about new voicemail. If you\'re on Wi-Fi, you can check for voicemail by syncing now."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"You won\'t be notified for new voicemails. If you\'re on Wi‑Fi, you can check for voicemail by syncing now."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"You won\'t be notified about new voicemail. Turn off aeroplane mode to sync your voicemail."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Your phone needs a mobile data connection to check voicemail."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Your phone needs a mobile data connection to check voicemail."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Can\'t activate visual voicemail"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"You can still call to check voicemail."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Can\'t update visual voicemail"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Try again when your Wi-Fi or mobile connection is better. You can still call to check voicemail."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Try again when your Wi‑Fi or mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Can\'t update visual voicemail"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"You can still call to check voicemail."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Can\'t update visual voicemail"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Something went wrong"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Please contact Customer Service on <xliff:g id="NUMBER">%1$s</xliff:g> and tell them that the error code is 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visual voicemail Terms and Conditions"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"You must accept Verizon Wireless\'s Terms and Conditions to use visual voicemail:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nYou must accept Verizon Wireless\'s terms and conditions to use visual voicemail:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Turn on Visual Voicemail"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visual voicemail will be disabled if the Terms and Conditions are declined."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Disable visual voicemail"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Voicemail transcription will be disabled if the terms and conditions are declined."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Disable voicemail transcription"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Voicemail will only be accessible by calling *86. Set a new voicemail PIN to proceed."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Set PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-en-rIN/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-en-rIN/strings.xml
index a036950..2349fe0 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-en-rIN/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activating visual voicemail"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"You might not receive voicemail notifications until visual voicemail is fully activated. Call voicemail to retrieve new messages until voicemail is fully activated."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Can\'t activate visual voicemail"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Make sure that your phone has a mobile connection and try again."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Make sure your phone has a mobile network connection and try again."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Turn off aeroplane mode and try again."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"No connection"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"You won\'t be notified about new voicemail. If you\'re on Wi-Fi, you can check for voicemail by syncing now."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"You won\'t be notified for new voicemails. If you\'re on Wi‑Fi, you can check for voicemail by syncing now."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"You won\'t be notified about new voicemail. Turn off aeroplane mode to sync your voicemail."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Your phone needs a mobile data connection to check voicemail."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Your phone needs a mobile data connection to check voicemail."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Can\'t activate visual voicemail"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"You can still call to check voicemail."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Can\'t update visual voicemail"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Try again when your Wi-Fi or mobile connection is better. You can still call to check voicemail."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Try again when your Wi‑Fi or mobile data connection is better. You can still call to check voicemail."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Try again when your mobile data connection is better. You can still call to check voicemail."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Can\'t update visual voicemail"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"You can still call to check voicemail."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Can\'t update visual voicemail"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Something went wrong"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Please contact Customer Service on <xliff:g id="NUMBER">%1$s</xliff:g> and tell them that the error code is 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visual voicemail Terms and Conditions"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"You must accept Verizon Wireless\'s Terms and Conditions to use visual voicemail:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nYou must accept Verizon Wireless\'s terms and conditions to use visual voicemail:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Turn on Visual Voicemail"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visual voicemail will be disabled if the Terms and Conditions are declined."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Disable visual voicemail"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Voicemail transcription will be disabled if the terms and conditions are declined."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Disable voicemail transcription"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Voicemail will only be accessible by calling *86. Set a new voicemail PIN to proceed."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Set PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-es-rUS/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-es-rUS/strings.xml
index 485a78b..16a74d9 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-es-rUS/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activando el buzón de voz visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Es posible que no recibas notificaciones de los mensajes de voz hasta que el buzón de voz visual se encuentre completamente activado. Hasta ese momento, puedes llamar al buzón de voz para recuperar los mensajes nuevos."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"No se puede activar el buzón de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Asegúrate de que el teléfono tenga conexión móvil y vuelve a intentarlo."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Asegúrate de que el teléfono tenga conexión móvil y vuelve a intentarlo."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desactiva el modo de avión y vuelve a intentarlo."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sin conexión"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"No recibirás notificaciones de los mensajes de voz nuevos. Si estás conectado a Wi-Fi, puedes sincronizar ahora para revisar el buzón de voz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"No recibirás notificaciones de los mensajes de voz nuevos. Si estás conectado a Wi-Fi, puedes sincronizar ahora para revisar el buzón de voz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"No recibirás notificaciones de los mensajes de voz nuevos. Desactiva el modo de avión para sincronizar el buzón de voz."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"El teléfono necesita una conexión de datos móviles para revisar el buzón de voz."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"El teléfono necesita una conexión de datos móviles para revisar el buzón de voz."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"No se puede activar el buzón de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Aún puedes llamar para revisar el buzón de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"No se puede actualizar el buzón de voz visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Vuelve a intentarlo cuando la conexión Wi-Fi o la conexión móvil mejoren. Aún puedes llamar para revisar el buzón de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Vuelve a intentarlo cuando la conexión de datos móviles mejore. Aún puedes llamar para revisar el buzón de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Vuelve a intentarlo cuando la conexión Wi-Fi o la conexión de datos móviles mejoren. Aún puedes llamar para revisar el buzón de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Vuelve a intentarlo cuando la conexión de datos móviles mejore. Aún puedes llamar para revisar el buzón de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"No se puede actualizar el buzón de voz visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Aún puedes llamar para revisar el buzón de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"No se puede actualizar el buzón de voz visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Se produjo un error"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Comunícate con el servicio de atención al cliente al <xliff:g id="NUMBER">%1$s</xliff:g> e indícales que el código de error es el 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Términos y condiciones del buzón de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Debes aceptar los términos y condiciones de Verizon Wireless para usar el buzón de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDebes aceptar los términos y condiciones de Verizon Wireless para usar el buzón de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activar el buzón de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"El buzón de voz visual se desactiva si no aceptas los términos y condiciones."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Inhabilitar buzón de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"La transcripción del buzón de voz se desactivará si no aceptas los términos y condiciones."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Inhabilitar la transcripción del buzón de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Solo podrás acceder al buzón de voz llamando al *86. Para continuar, establece un nuevo PIN para el buzón de voz."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Establecer PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-es/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-es/strings.xml
index d351f37..af0d583 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-es/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-es/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activando el buzón de voz visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Es posible que no recibas notificaciones de mensajes de voz hasta que se active totalmente el buzón de voz visual. Hasta ese momento, puedes llamar al buzón de voz para escuchar los mensajes nuevos."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"No se puede activar el correo de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Comprueba que el teléfono tenga cobertura e inténtalo otra vez."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Asegúrate de que tu teléfono tenga conexión a una red móvil y vuelve a intentarlo."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desactiva el modo avión e inténtalo otra vez."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sin conexión"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"No recibirás notificaciones de los mensajes de voz nuevos. Si estás usando una Wi-Fi, puedes sincronizar ahora el teléfono para comprobar si hay mensajes de voz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"No recibirás notificaciones de los mensajes de voz nuevos. Si estás usando una Wi-Fi, puedes sincronizar ahora el teléfono para comprobar si hay mensajes de voz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"No recibirás notificaciones de los mensajes de voz nuevos. Si quieres sincronizar tu buzón de voz, desactiva el modo avión."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Para comprobar el buzón de voz, necesitas una conexión de datos móviles en el teléfono."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Para comprobar el buzón de voz, necesitas una conexión de datos móviles en el teléfono."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"No se puede activar el correo de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Puedes llamar para comprobar el buzón de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"No se puede actualizar el correo de voz visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Inténtalo otra vez cuando tengas mejor conexión Wi-Fi o de datos móviles. Puedes llamar para comprobar el buzón de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Inténtalo otra vez cuando tengas mejor conexión de datos móviles. Puedes llamar para comprobar el buzón de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Inténtalo otra vez cuando tengas mejor conexión Wi-Fi o de datos móviles. Puedes llamar para comprobar el buzón de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Inténtalo otra vez cuando tengas mejor conexión de datos móviles. Puedes llamar para comprobar el buzón de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"No se puede actualizar el correo de voz visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Puedes llamar para comprobar el buzón de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"No se puede actualizar el correo de voz visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Se ha producido un error"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Llama al servicio de Atención al cliente al <xliff:g id="NUMBER">%1$s</xliff:g> e indícales que el código de error es el 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Términos y Condiciones del buzón de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Tienes que aceptar los términos y condiciones de Verizon Wireless para usar el buzón de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDebes aceptar los términos y condiciones de Verizon Wireless para poder usar el buzón de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activar el buzón de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Si rechazas los términos y condiciones, el buzón de voz visual se quedará inhabilitado."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Inhabilitar el buzón de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Si rechazas los términos y condiciones, se inhabilitará la transcripción de mensajes de voz."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Inhabilitar la transcripción de mensajes de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Solo podrás acceder al buzón de voz llamando al *86. Configura un nuevo PIN del buzón para continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Configurar el PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-et/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-et/strings.xml
index 953b36b..bf27a14 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-et/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-et/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Visuaalse kõneposti aktiveerimine"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Te ei pruugi kõneposti märguandeid saada enne, kui visuaalne kõnepost on täielikult aktiveeritud. Kuni kõnepost on täielikult aktiveeritud, helistage uute sõnumite toomiseks kõneposti."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Visuaalset kõneposti ei saa aktiveerida"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Veenduge, et teie telefonis oleks mobiilne andmeside saadaval, ja proovige uuesti."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Veenduge, et teie telefonis oleks mobiilsidevõrk saadaval, ja proovige uuesti."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Lülitage lennurežiim välja ja proovige uuesti."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ühendus puudub"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Teid ei teavitata uutest kõnepostisõnumitest. Kui kasutate WiFi-t, saate kõneposti kontrollida, kui kohe sünkroonite."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Teid ei teavitata uutest kõnepostisõnumitest. Kui kasutate WiFi-t, saate kõneposti kontrollida, kui kohe sünkroonite."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Teid ei teavitata uutest kõnepostisõnumitest. Kõneposti sünkroonimiseks lülitage lennurežiim välja."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Teie telefonis peab kõneposti kontrollimiseks olema lubatud mobiilne andmeside."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Teie telefonis peab kõneposti kontrollimiseks olema lubatud mobiilne andmesideühendus."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Visuaalset kõneposti ei saa aktiveerida"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Visuaalset kõneposti ei saa värskendada"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Proovige uuesti, kui WiFi- või mobiilne andmesideühendus on parem. Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Proovige uuesti, kui mobiilne andmesideühendus on parem. Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Proovige uuesti, kui WiFi- või mobiilne andmesideühendus on parem. Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Proovige uuesti, kui mobiilne andmesideühendus on parem. Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Visuaalset kõneposti ei saa värskendada"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Kõneposti saate siiski kontrollida, kui sinna helistate."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Visuaalset kõneposti ei saa värskendada"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Midagi läks valesti"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Võtke ühendust klienditeenindusega numbril <xliff:g id="NUMBER">%1$s</xliff:g> ja öelge neile, et veakood on 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visuaalse kõneposti nõuded ja tingimused"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Visuaalse kõneposti kasutamiseks peate nõustuma Verizon Wirelessi nõuete ja tingimustega:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVisuaalse kõneposti kasutamiseks peate nõustuma Verizon Wirelessi nõuete ja tingimustega:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Visuaalse kõneposti sisselülitamine"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuaalne kõnepost keelatakse, kui nõuded ja tingimused tagasi lükatakse."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Visuaalse kõneposti keelamine"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Kõnepostisõnumite transkribeerimine keelatakse, kui nõuete ja tingimustega ei nõustuta."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Kõnepostisõnumite transkribeerimise keelamine"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Kõnepost on saadaval vaid siis, kui helistate numbril *86. Jätkamiseks määrake uus kõneposti PIN-kood."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN-koodi määramine"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-eu/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-eu/strings.xml
index af40192..86be1e8 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-eu/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-eu/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ikusizko erantzungailua aktibatzen"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"aktibatu arte, agian ez duzu jasoko erantzungailuaren jakinarazpenik. Erantzungailua guztiz aktibatuta ez dagoen artean, deitu erantzungailuari mezu berriak entzuteko."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Ezin da aktibatu ikusizko erantzungailua"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Ziurtatu telefonoak datu-konexioa duela eta saiatu berriro."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Ziurtatu telefonoak datu-konexioa duela eta saiatu berriro."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desaktibatu hegaldi modua eta saiatu berriro."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ez dago konexiorik"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Ez duzu jakinarazpenik jasoko ahots-mezu berriak dituzunean. Wi-Fi sarea erabiltzen ari bazara, orain sinkroniza dezakezu erantzungailua ahots-mezurik duzun begiratzeko."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Ez duzu jasoko jakinarazpenik ahots-mezu berriak dituzunean. Wi-Fi sarea erabiltzen ari bazara, orain sinkroniza dezakezu erantzungailua ahots-mezurik duzun begiratzeko."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Ez duzu jakinarazpenik jasoko ahots-mezu berriak dituzunean. Desaktibatu hegaldi modua erantzungailua sinkronizatzeko."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Erantzungailua egiaztatzeko, datu-konexioa behar du telefonoak."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Erantzungailua egiaztatzeko, datu-konexioa behar du telefonoak."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Ezin da aktibatu ikusizko erantzungailua"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Deitu egin dezakezu erantzungailua egiaztatzeko."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Ezin da eguneratu ikusizko erantzungailua."</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Saiatu berriro Wi-Fi konexioa edo datu-mugikorrak hobeak direnean. Deitu egin dezakezu erantzungailua egiaztatzeko."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Saiatu berriro datu-konexioa hobea denean. Deitu egin dezakezu erantzungailua egiaztatzeko."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Saiatu berriro Wi-Fi edo datu-konexioa hobeak direnean. Deitu egin dezakezu erantzungailua egiaztatzeko."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Saiatu berriro datu-konexioa hobea denean. Deitu egin dezakezu erantzungailua egiaztatzeko."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Ezin da eguneratu ikusizko erantzungailua."</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Deitu egin dezakezu erantzungailua egiaztatzeko."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Ezin da eguneratu ikusizko erantzungailua."</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Arazoren bat izan da"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Jarri harremanetan bezeroarentzako arreta-zerbitzuarekin (<xliff:g id="NUMBER">%1$s</xliff:g>) eta esan iezaiezu errore-kodea 9999 dela."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Ikusizko erantzungailuaren Zehaztapenak eta baldintzak"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Verizon Wireless zerbitzuaren zehaztapenak eta baldintzak onartu behar dituzu ikusizko erantzungailua erabiltzeko:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVerizon Wireless zerbitzuaren Zehaztapenak eta baldintzak onartu behar dituzu ikusizko erantzungailua erabiltzeko:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Aktibatu ikusizko erantzungailua"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Zehaztapenak eta baldintzak onartzen ez badituzu, desgaitu egingo da ikusizko erantzungailua."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desgaitu ikusizko erantzungailua"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Zehaztapenak eta baldintzak onartzen ez badituzu, desgaitu egingo da ahots-mezuak transkribatzeko aukera."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desgaitu ahots-mezuak transkribatzeko aukera"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Erantzungailua atzitzeko, *86 zenbakira deitu beharko duzu. Jarraitzeko, ezarri erantzungailuaren PIN kodea."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Ezarri PIN kodea"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-fa/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-fa/strings.xml
index af79322..7b5b29b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-fa/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-fa/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"فعال کردن پست صوتی تصویری"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ممکن است تا زمانی که پست صوتی تصویری کاملاً فعال نشده باشد، اعلان‌های پست صوتی را دریافت نکنید. تا زمانی که پست صوتی به‌طور کامل فعال نشده است، برای بازیابی پیام‌های جدید، با پست صوتی تماس بگیرید."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"پست صوتی تصویری فعال نشد"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"بررسی کنید تلفن دارای اتصال همراه باشد و دوباره امتحان کنید."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"مطمئن شوید تلفنتان اتصال شبکه تلفن همراه دارد و دوباره امتحان کنید."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"حالت هواپیما را غیرفعال کنید و دوباره امتحان کنید."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"اتصال برقرار نیست"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"‏برای پست‌های صوتی جدید به شما اطلاع داده نمی‌شود. اگر از Wi-Fi استفاده می‌کنید، اکنون با همگام‌سازی می‌توانید پست صوتی را بررسی کنید."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"‏از پست‌های صوتی جدید مطلع نمی‌شود. اگر از Wi-Fi استفاده می‌کنید، با انجام همگام‌سازی در این لحظه، می‌توانید پست صوتی را بررسی کنید."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"برای پست‌های صوتی جدید به شما اطلاع داده نمی‌شود. حالت هواپیما را غیرفعال کنید تا پست صوتی همگام‌سازی شود."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"تلفنتان برای بررسی پست صوتی به اتصال داده همراه نیاز دارد."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"برای بررسی پست صوتی، تلفنتان باید اتصال داده همراه داشته باشد."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"پست صوتی تصویری فعال نشد"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"همچنان می‌توانید برای بررسی پست صوتی تماس بگیرید."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"پست صوتی تصویری به‌روزرسانی نشد"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"‏وقتی Wi-Fi یا اتصال همراه بهتر شد دوباره امتحان کنید. همچنان می‌توانید برای بررسی پست صوتی تماس بگیرید."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"وقتی اتصال داده همراه بهتر شد دوباره امتحان کنید. همچنان می‌توانید برای بررسی پست صوتی تماس بگیرید."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"‏وقتی Wi-Fi یا اتصال داده همراه بهتر شد دوباره امتحان کنید. همچنان می‌توانید برای بررسی پست صوتی، تماس بگیرید."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"وقتی اتصال داده همراه بهتر شد دوباره امتحان کنید. همچنان می‌توانید برای بررسی پست صوتی تماس بگیرید."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"پست صوتی تصویری به‌روزرسانی نشد"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"همچنان می‌توانید برای بررسی پست صوتی تماس بگیرید."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"پست صوتی تصویری به‌روزرسانی نشد"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"مشکلی روی داد"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"لطفاً از طریق شماره <xliff:g id="NUMBER">%1$s</xliff:g> با خدمات مشتری تماس بگیرید و این کد خطا را به آنها بگویید: ٩٩٩٩."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"شرایط و ضوابط پست صوتی دیداری"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"‏برای استفاده از پست صوتی تصویری باید  شرایط و ضوابط Verizon Wireless را بپذیرید:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"‏%1$s\n\nبرای استفاده از پست صوتی تصویری، باید با شرایط و ضوابط Verizon Wireless موافقت کنید:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"روشن کردن پست صوتی تصویری"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"اگر شرایط و ضوابط را رد کنید، پست صوتی تصویری غیرفعال می‌شود."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"غیرفعال کردن پست صوتی تصویری"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"اگر شرایط و ضوابط را رد کنید، ترانویسی پست صوتی غیرفعال خواهد شد."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"غیرفعال کردن ترانویسی پست صوتی"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"پست صوتی فقط از طریق تماس با ٨۶* قابل دسترسی است. برای ادامه، یک پین پست صوتی جدید تنظیم کنید."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"تنظیم پین"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-fi/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-fi/strings.xml
index 5416765..91ac263 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-fi/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-fi/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktivoidaan visuaalista puhelinvastaajaa."</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Et ehkä saa vastaajan ilmoituksia, ennen kuin visuaalinen puhelinvastaaja on täysin aktivoitu. Saat uudet viestit soittamalla vastaajaan."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Visuaalisen puhelinvastaajan aktivointi epäonnistui."</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Varmista, että puhelimesi mobiiliyhteys toimii, ja yritä uudelleen."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Varmista, että puhelimesi mobiilidatayhteys toimii, ja yritä uudelleen."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Poista lentokonetila käytöstä ja yritä uudelleen."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ei yhteyttä"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Uusista vastaajaviesteistä ei lähetetä ilmoitusta. Jos olet Wi-Fi:ssä, voit tarkistaa vastaajaviestit synkronoimalla nyt."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Uusista vastaajaviesteistä ei lähetetä ilmoitusta. Jos olet yhteydessä Wi-Fi-verkkoon, voit tarkistaa vastaajaviestit synkronoimalla nyt."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Uusista vastaajaviesteistä ei lähetetä ilmoitusta. Synkronoi vastaajaviestit poistamalla lentokonetila käytöstä."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Vastaajaviestien tarkistamista varten puhelimessasi on oltava mobiilidatayhteys."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Vastaajaviestien tarkistamista varten puhelimessasi on oltava mobiilidatayhteys."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Visuaalisen puhelinvastaajan aktivointi epäonnistui."</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Voit silti tarkistaa vastaajaviestit soittamalla."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Visuaalisen vastaajan päivitys epäonnistui."</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Yritä uudelleen, kun olet Wi-Fi:ssä tai mobiiliyhteys on parempi. Voit silti tarkistaa vastaajaviestit soittamalla."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Yritä uudelleen, kun mobiilidatayhteys on parempi. Voit silti tarkistaa vastaajaviestit soittamalla."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Yritä uudelleen, kun Wi-Fi- tai mobiilidatayhteys on vahvempi. Voit edelleen tarkistaa vastaajaviestit soittamalla."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Yritä uudelleen, kun mobiilidatayhteys on vahvempi. Voit edelleen tarkistaa vastaajaviestit soittamalla."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Visuaalisen vastaajan päivitys epäonnistui."</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Voit silti tarkistaa vastaajaviestit soittamalla."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Visuaalisen vastaajan päivitys epäonnistui."</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Jokin meni vikaan"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Ota yhteys asiakastukeen numerossa <xliff:g id="NUMBER">%1$s</xliff:g> ja ilmoita virhekoodi 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Visuaalisen puhelinvastaajan käyttöehdot"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Visuaalisen puhelinvastaajan käyttöä varten sinun on hyväksyttävä Verizon Wirelessin käyttöehdot:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nSinun on hyväksyttävä Verizon Wirelessin käyttöehdot, jotta voit käyttää visuaalista puhelinvastaajaa:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ota visuaalinen puhelinvastaaja käyttöön"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuaalinen puhelinvastaaja poistetaan käytöstä, jos käyttöehtoja ei hyväksytä."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Poista visuaalinen puhelinvastaaja käytöstä"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Puhelinvastaajan transkriptio poistetaan käytöstä, jos käyttöehtoja ei hyväksytä."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Poista puhelinvastaajan transkriptio käytöstä"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Vastaaja on käytettävissä vain soittamalla numeroon *86. Jatka asettamalla vastaajalle uusi PIN-koodi."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Aseta PIN-koodi"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-fr-rCA/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-fr-rCA/strings.xml
index ef88ecf..1713652 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-fr-rCA/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activation de la messagerie vocale visuelle"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Vous ne recevrez peut-être aucune notification de la messagerie vocale tant que la messagerie vocale visuelle ne sera pas complètement activée. Appelez la messagerie vocale pour récupérer de nouveaux messages jusqu\'à l\'activation complète de la messagerie vocale."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Impossible d\'activer la messagerie vocale visuelle"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Assurez-vous que votre téléphone dispose d\'une connexion cellulaire et réessayez."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Assurez-vous que votre téléphone dispose d\'une connexion réseau cellulaire et réessayez."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Désactivez le mode Avion et réessayez."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Aucune connexion"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Vous ne serez pas averti à la réception de nouveaux messages vocaux. Si vous utilisez le Wi-Fi, vous pouvez vérifier si vous avez de nouveaux messages vocaux par une synchronisation."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Vous ne recevrez pas de notification à l\'arrivée de nouveaux messages vocaux. Si vous utilisez le Wi-Fi, vous pouvez vérifier si vous avez de nouveaux messages vocaux en effectuant une synchronisation."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Vous ne serez pas averti à la réception de nouveaux messages vocaux. Désactivez le mode Avion pour synchroniser votre messagerie vocale."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Votre téléphone requiert une connexion de données cellulaire pour consulter la messagerie vocale."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Votre téléphone requiert une connexion de données mobiles pour que vous puissiez consulter la messagerie vocale."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Impossible d\'activer la messagerie vocale visuelle"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Réessayez lorsque votre connexion Wi-Fi ou cellulaire sera meilleure. Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Réessayez lorsque votre connexion cellulaire sera meilleure. Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Réessayez lorsque votre connexion Wi-Fi ou de données mobiles sera meilleure. Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Réessayez lorsque votre connexion de données mobiles sera meilleure. Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Vous pouvez tout de même appeler pour consulter votre messagerie vocale."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Une erreur s\'est produite"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Veuillez communiquer avec le service à la clientèle au numéro <xliff:g id="NUMBER">%1$s</xliff:g> et lui indiquer que le code d\'erreur est le 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Conditions d\'utilisation de la messagerie vocale visuelle"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Vous devez accepter les conditions d\'utilisation de Verizon Wireless pour utiliser la messagerie vocale visuelle : \n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVous devez accepter les conditions d\'utilisation de Verizon Wireless pour utiliser la messagerie vocale visuelle :\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activer la messagerie vocale visuelle"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Si les conditions d\'utilisation sont refusées, la messagerie vocale visuelle sera désactivée."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Désactiver la messagerie vocale visuelle"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Si les conditions d\'utilisation sont refusées, la fonction de transcription des messages vocaux sera désactivée."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Désactiver la fonction de transcription des messages vocaux"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Pour accéder à la messagerie vocale, vous devrez composer *86. Définissez un nouveau NIP de messagerie vocale pour continuer."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Définir le NIP"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-fr/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-fr/strings.xml
index eefd5ad..a75cd12 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-fr/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-fr/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activation de la messagerie vocale visuelle..."</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Tant que la messagerie vocale visuelle n\'est pas totalement activée, vous risquez de ne pas être averti de la réception de nouveaux messages. Appelez votre boîte vocale pour consulter ces derniers."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Impossible d\'activer la messagerie vocale visuelle"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Vérifiez que votre téléphone est bien connecté au réseau mobile, puis réessayez."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Vérifiez que votre téléphone est bien connecté au réseau mobile, puis réessayez."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Désactivez le mode Avion, puis réessayez."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Aucune connexion"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Vous ne recevrez aucune notification en cas de nouveau message vocal. Si vous êtes connecté en Wi-Fi, vous pouvez consulter votre messagerie vocale maintenant en effectuant une synchronisation."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Vous ne recevrez aucune notification en cas de nouveau message vocal. Si vous êtes connecté en Wi-Fi, vous pouvez consulter votre messagerie vocale dès à présent en effectuant une synchronisation."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Vous ne recevrez aucune notification en cas de nouveau message. Désactivez le mode Avion pour synchroniser votre messagerie vocale."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Vous devez disposer d\'une connexion de données mobiles pour consulter votre messagerie vocale."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Vous devez disposer d\'une connexion de données mobiles pour consulter votre messagerie vocale."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Impossible d\'activer la messagerie vocale visuelle"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"La consultation de votre messagerie vocale par téléphone est toujours possible."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Réessayez lorsque vous bénéficierez d\'une meilleure connexion au réseau mobile ou Wi-Fi. La consultation de votre messagerie vocale par téléphone est toujours possible."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Réessayez lorsque vous bénéficierez d\'une meilleure connexion de données mobiles. La consultation de votre messagerie vocale par téléphone est toujours possible."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Réessayez lorsque vous bénéficierez d\'une meilleure connexion au réseau mobile ou Wi-Fi. Vous pouvez tout de même consulter votre messagerie vocale par téléphone."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Réessayez lorsque vous bénéficierez d\'une meilleure connexion de données mobiles. Vous pouvez tout de même consulter votre messagerie vocale par téléphone."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"La consultation de votre messagerie vocale par téléphone est toujours possible."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Impossible de mettre à jour la messagerie vocale visuelle"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Problème"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Veuillez contacter le service client au <xliff:g id="NUMBER">%1$s</xliff:g>. Le code d\'erreur à transmettre au conseiller est le 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Conditions d\'utilisation de la messagerie vocale visuelle"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Vous devez accepter les conditions d\'utilisation de Verizon Wireless pour pouvoir utiliser la messagerie vocale visuelle :\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVous devez accepter les conditions d\'utilisation de Verizon Wireless pour pouvoir utiliser la messagerie vocale virtuelle :\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activer la messagerie vocale visuelle"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Si vous refusez les conditions d\'utilisation, la messagerie vocale visuelle sera désactivée."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Désactiver la messagerie vocale visuelle"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"La transcription des messages vocaux sera désactivée en cas de refus des conditions d\'utilisation."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Désactiver la transcription des messages vocaux"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Vous ne pouvez accéder à la messagerie vocale qu\'en composant le *86. Définissez un nouveau code PIN de messagerie vocale pour continuer."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Définir un code"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-gl/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-gl/strings.xml
index efd174f..4cdd5dd 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-gl/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-gl/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Activando correo de voz visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"É posible que non recibas notificacións do correo de voz ata que actives o correo de voz visual. Chama ao correo de voz para consultar as mensaxes novas ata que o correo de voz estea completamente activado."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Non se pode activar o correo de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Asegúrate de que o teléfono ten conexión móbil e téntao de novo."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Asegúrate de que o teu teléfono ten unha conexión de rede móbil e téntao de novo."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desactiva o modo avión e téntao de novo."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sen conexión"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Non recibirás notificacións dos correos de voz novos. Se estás utilizando o sinal wifi, podes comprobar o correo de voz se o sincronizas agora."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Non recibirás notificacións dos correos de voz novos. Se estás utilizando o sinal wifi, podes comprobar o correo de voz se o sincronizas agora."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Non recibirás notificacións dos correos de voz novos. Desactiva o modo avión para sincronizar o correo de voz."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"O teléfono necesita conexión de datos móbiles para comprobar o correo de voz."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"O teléfono necesita conexión de datos móbiles para comprobar o correo de voz."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Non se pode activar o correo de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Aínda podes chamar para comprobar o correo de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Non se pode actualizar o correo de voz visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Téntao de novo cando o a conexión móbil ou wifi sexa mellor. Aínda podes chamar para comprobar o correo de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Téntao de novo cando a conexión de datos móbiles sexa mellor. Aínda podes chamar para comprobar o correo de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Téntao de novo cando o a túa conexión de datos móbiles ou wifi sexa mellor. Aínda podes chamar para comprobar o correo de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Téntao de novo cando a túa conexión de datos móbiles sexa mellor. Aínda podes chamar para comprobar o correo de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Non se pode actualizar o correo de voz visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Aínda podes chamar para comprobar o correo de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Non se pode actualizar o correo de voz visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Produciuse un erro"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Ponte en contacto co servizo de atención ao cliente (<xliff:g id="NUMBER">%1$s</xliff:g>) e indica o código de erro 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termos e condicións do correo de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Debes aceptar os termos e condicións de Verizon Wireless para utilizar o correo de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDebes aceptar os termos e condicións de Verizon Wireless para usar o correo de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activar correo de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Se non se aceptan os termos e condicións, desactivarase o correo de voz visual."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desactivar correo de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Se se rexeitan os termos e condicións, desactivarase a transcrición do correo de voz."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desactivar transcrición do correo de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Só poderás acceder ao correo de voz chamando ao *86. Configura un novo PIN do correo de voz para continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Establecer PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-gu/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-gu/strings.xml
index 4463443..68a768b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-gu/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-gu/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"વિઝ્યુઅલ વૉઇસમેઇલ સક્રિય કરી રહ્યાં છે"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"જ્યાં સુધી વિઝ્યુઅલ વૉઇસમેઇલ સંપૂર્ણપણે સક્રિય ન થાય ત્યાં સુધી તમે વૉઇસમેઇલની સૂચનાઓ પ્રાપ્ત કરી શકશો નહીં. વૉઇસમેઇલ સંપૂર્ણપણે સક્રિય ન થાય ત્યાં સુધી નવા સંદેશા પુનઃપ્રાપ્ત કરવા માટે વૉઇસમેઇલને કૉલ કરો."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"વિઝ્યુઅલ વૉઇસમેઇલ સક્રિય કરી શકતાં નથી"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"તમારા ફોન પર સેલ્યુલર કનેક્શન હોવાની ખાતરી કરો અને ફરી પ્રયાસ કરો."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"તમારા ફોન પર મોબાઇલ નેટવર્ક કનેક્શન હોવાની ખાતરી કરો અને ફરી પ્રયાસ કરો."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"એરપ્લેન મોડ બંધ કરો અને ફરી પ્રયાસ કરો."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"કોઈ કનેક્શન નથી"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"નવી વૉઇસમેઇલ્સ માટે તમને સૂચિત કરવામાં આવશે નહીં. જો તમે Wi-Fi પર છો, તો હમણાં સમન્વયિત કરીને વૉઇસમેઇલ માટે તપાસ કરી શકો છો."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"નવા વૉઇસમેઇલ માટે તમને સૂચિત કરવામાં આવશે નહીં. જો તમે Wi-Fi પર છો, તો તમે હમણાં સમન્વયિત કરીને વૉઇસમેઇલ માટે તપાસ કરી શકો છો."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"નવી વૉઇસમેઇલ્સ માટે તમને સૂચિત કરવામાં આવશે નહીં. તમારી વૉઇસમેઇલ સમન્વયિત કરવા માટે એરપ્લેન મોડ બંધ કરો."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"વૉઇસમેઇલને તપાસવા માટે તમારા ફોનને સેલ્યુલર ડેટા કનેક્શનની જરૂર છે."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"વૉઇસમેઇલને તપાસવા માટે તમારા ફોનને મોબાઇલ ડેટા કનેક્શનની જરૂર છે."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"વિઝ્યુઅલ વૉઇસમેઇલ સક્રિય કરી શકતાં નથી"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"વિઝ્યુઅલ વૉઇસમેઇલ અપડેટ કરી શકતાં નથી"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"તમારું Wi-Fi અથવા સેલ્યુલર કનેક્શન બહેતર હોવા પર ફરી પ્રયાસ કરો. તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"તમારું સેલ્યુલર ડેટા કનેક્શન બહેતર હોવા પર ફરી પ્રયાસ કરો. તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"તમારું Wi-Fi અથવા મોબાઇલ ડેટા કનેક્શન બહેતર હોવા પર ફરી પ્રયાસ કરો. તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"તમારું મોબાઇલ ડેટા કનેક્શન બહેતર હોવા પર ફરી પ્રયાસ કરો. તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"વિઝ્યુઅલ વૉઇસમેઇલ અપડેટ કરી શકતાં નથી"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"તમે વૉઇસમેઇલ તપાસવા માટે હજી પણ કૉલ કરી શકો છો."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"વિઝ્યુઅલ વૉઇસમેઇલ અપડેટ કરી શકતાં નથી"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"કંઈક ખોટું થયું"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"કૃપા કરીને <xliff:g id="NUMBER">%1$s</xliff:g> પર ગ્રાહક સેવાનો સંપર્ક કરી અને તેમને ભૂલ કોડ 9999 કહો."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"વિઝ્યુઅલ વૉઇસમેઇલની શરતો અને નિયમો"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"વિઝ્યુઅલ વૉઇસમેઇલનો ઉપયોગ કરવા માટે તમારે Verizon Wireless ની શરતો અને નિયમોનો સ્વીકાર કરવો આવશ્યક છે:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nવિઝ્યુઅલ વૉઇસમેઇલનો ઉપયોગ કરવા માટે તમારે Verizon Wireless નાં નિયમો અને શરતોને સ્વીકારવી આવશ્યક છે:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"વિઝ્યુઅલ વૉઇસમેઇલ ચાલુ કરો"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"જો શરતો અને નિયમો નકારવામાં આવે છે તો વિઝ્યુઅલ વૉઇસમેઇલ અક્ષમ કરવામાં આવશે."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"વિઝ્યુઅલ વૉઇસમેઇલ અક્ષમ કરો"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"જો શરતો અને નિયમો નકારવામાં આવે તો વૉઇસમેઇલ ટ્રાંસ્ક્રિપ્શન અક્ષમ કરવામાં આવશે."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"વૉઇસમેઇલ ટ્રાંસ્ક્રિપ્શન અક્ષમ કરો"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"વૉઇસમેઇલ માત્ર *86 પર કૉલ કરીને જ ઍક્સેસ કરી શકાશે. આગળ વધવા માટે નવો વૉઇસમેઇલ PIN સેટ કરો."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN સેટ કરો"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-hi/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-hi/strings.xml
index bc9c463..5cf42e3 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-hi/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-hi/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"विज़ुअल वॉइसमेल सक्रिय किया जा रहा है"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"विज़ुअल वॉइसमेल के पूरी तरह सक्रिय होने तक हो सकता है कि आपको वॉइसमेल नोटिफ़िकेशन प्राप्त ना हों. वॉइसमेल के पूरी तरह सक्रिय होने तक नए संदेश प्राप्त करने के लिए वॉइसमेल को कॉल करें."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"विज़ुअल वॉइसमेल सक्रिय नहीं किया जा सकता"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"सुनिश्चित करें कि आपके फ़ोन में सेल्यूलर कनेक्शन है और फिर से प्रयास करें."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"सुनिश्चित करें कि आपके फ़ोन में मोबाइल नेटवर्क कनेक्शन है और दोबारा कोशिश करें."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"हवाई जहाज़ मोड बंद करें और फिर से प्रयास करें."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"कोई कनेक्शन नहीं"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"आपको नए वॉइसमेल के लिए सूचित नहीं किया जाएगा. यदि आप वाई-फ़ाई पर हैं, तो आप समन्वयित करके अभी वॉइसमेल देख सकते हैं."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"आपको नए वॉइसमेल की सूचना नहीं दी जाएगी. अगर आप Wi‑Fi का उपयोग कर रहे हैं, तो अभी सिंक करके वॉइसमेल देख सकते हैं."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"आपको नए वॉइसमेल के लिए सूचित नहीं किया जाएगा. अपना वॉइसमेल समन्वयित करने के लिए हवाई जहाज़ मोड बंद करें."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"वॉइसमेल देखने के लिए आपके फ़ोन में सेल्यूलर डेटा की आवश्यकता होगी."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"वॉइसमेल देखने के लिए आपके फ़ोन में मोबाइल डेटा कनेक्शन होना चाहिए."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"विज़ुअल वॉइसमेल सक्रिय नहीं किया जा सकता"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"आप वॉइसमेल देखने के लिए अभी भी कॉल कर सकते हैं."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"विज़ुअल वॉइसमेल अपडेट नहीं किया जा सकता"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"अपना वाई-फ़ाई या सेल्यूलर कनेक्शन बेहतर होने पर फिर से प्रयास करें. आप वॉइसमेल देखने के लिए अभी भी कॉल कर सकते हैं."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"अपना सेल्यूलर डेटा कनेक्शन बेहतर होने पर फिर से प्रयास करें. आप वॉइसमेल देखने के लिए अभी भी कॉल कर सकते हैं."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"आपका Wi‑Fi या मोबाइल डेटा कनेक्शन बेहतर होने पर दोबारा कोशिश करें. आप अभी भी वॉइसमेल देखने के लिए कॉल कर सकते हैं."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"आपका मोबाइल डेटा कनेक्शन बेहतर होने पर दोबारा कोशिश करें. आप अभी भी वॉइसमेल देखने के लिए कॉल कर सकते हैं."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"विज़ुअल वॉइसमेल अपडेट नहीं किया जा सकता"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"आप वॉइसमेल देखने के लिए अभी भी कॉल कर सकते हैं."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"विज़ुअल वॉइसमेल अपडेट नहीं किया जा सकता"</string>
@@ -55,7 +55,7 @@
     <string name="voicemail_action_set_pin" msgid="958510049866316228">"पिन सेट करें"</string>
     <string name="voicemail_action_retry" msgid="4450307484541052511">"पुन: प्रयास करें"</string>
     <string name="voicemail_action_turn_archive_on" msgid="6008444955560830591">"चालू करें"</string>
-    <string name="voicemail_action_dimiss" msgid="6018415798136796966">"नहीं धन्यवाद"</string>
+    <string name="voicemail_action_dimiss" msgid="6018415798136796966">"रहने दें"</string>
     <string name="voicemail_action_sync" msgid="5139315923415392787">"समन्वयित करें"</string>
     <string name="voicemail_action_call_voicemail" msgid="6701710720535556395">"वॉइसमेल को कॉल करें"</string>
     <string name="voicemail_action_call_customer_support" msgid="7698973007656462748">"ग्राहक सहायता को कॉल करें"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"कुछ गलत हुआ"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"कृपया <xliff:g id="NUMBER">%1$s</xliff:g> पर ग्राहक सेवा से संपर्क करें और उन्हें बताएं कि गड़बड़ी कोड 9999 है."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"विज़ुअल वॉइसमेल नियम और शर्तें"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"विज़ुअल वॉइसमेल का उपयोग करने के लिए आपको Verizon वायरलेस के नियम और शर्तों को स्वीकार करना होगा:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nआपको विज़ुअल वॉइसमेल का उपयोग करने के लिए Verizon Wireless के नियम और शर्तों को स्वीकार करना होगा:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"विज़ुअल वॉयसमेल चालू करें"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"नियम और शर्तों को अस्वीकार किए जाने पर विज़ुअल वॉइसमेल अक्षम कर दिया जाएगा."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"विज़ुअल वॉइसमेल अक्षम करें"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"अगर नियम और शर्तों को अस्वीकार कर दिया जाता है, तो वॉइसमेंल ट्रांसक्रिप्शन अक्षम हो जाएगा."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"वॉइसमेल ट्रांसक्रिप्शन अक्षम करें"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"वॉइसमेल को केवल *86 पर कॉल करके एक्सेस किया जा सकेगा. आगे बढ़ने के लिए नया वॉइसमेल पिन सेट करें."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"पिन सेट करें"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-hr/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-hr/strings.xml
index a310d59..46bee91 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-hr/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-hr/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiviranje vizualne govorne pošte"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Možda nećete primiti obavijesti o govornoj pošti dok se vizualna govorna pošta u potpunosti ne aktivira. Nazovite službu za govornu poštu da biste dohvatili nove poruke dok se govorna pošta u potpunosti ne aktivira."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizualna govorna pošta ne može se aktivirati"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Provjerite mobilnu vezu telefona i pokušajte ponovno."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Provjerite mobilnu vezu telefona i pokušajte ponovno."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Isključite način rada u zrakoplovu i pokušajte ponovno."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nema veze"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nećete primati obavijesti o novim govornim porukama. Ako upotrebljavate Wi-Fi mrežu, govornu poštu možete provjeriti tako da se odmah sinkronizirate."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nećete primati obavijesti o novim govornim porukama. Ako upotrebljavate Wi-Fi mrežu, govornu poštu možete provjeriti tako da se odmah sinkronizirate."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nećete primati obavijesti o novim govornim porukama. Isključite način rada u zrakoplovu da biste sinkronizirali govornu poštu."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefon mora imati mobilnu podatkovnu vezu da biste provjerili govornu poštu."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefon mora imati mobilnu podatkovnu vezu da biste provjerili govornu poštu."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizualna govorna pošta ne može se aktivirati"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"I dalje možete nazvati govornu poštu i provjeriti je."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizualna govorna pošta ne može se ažurirati"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Pokušajte ponovno kad uspostavite bolju Wi-Fi ili mobilnu vezu. I dalje možete nazvati govornu poštu i provjeriti je."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Pokušajte ponovno kad uspostavite bolju mobilnu podatkovnu vezu. I dalje možete nazvati govornu poštu i provjeriti je."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Pokušajte ponovno kad uspostavite bolju Wi-Fi ili mobilnu vezu. I dalje možete nazvati govornu poštu i provjeriti je."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Pokušajte ponovno kad uspostavite bolju mobilnu podatkovnu vezu. I dalje možete nazvati govornu poštu i provjeriti je."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizualna govorna pošta ne može se ažurirati"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"I dalje možete nazvati govornu poštu i provjeriti je."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizualna govorna pošta ne može se ažurirati"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Nešto je pošlo po zlu"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Obratite se korisničkoj službi na broj <xliff:g id="NUMBER">%1$s</xliff:g> i recite da je kôd pogreške 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Uvjeti i odredbe za vizualnu govornu poštu"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Da biste koristili vizualnu govornu poštu morate prihvatiti uvjete i odredbe Verizon Wirelessa:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDa biste koristili vizualnu govornu poštu, morate prihvatiti uvjete i odredbe Verizon Wirelessa:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Uključivanje vizualne govorne pošte"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ako odbijete uvjete i odredbe, onemogućit ćete vizualnu govornu poštu."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Onemogući vizualnu govornu poštu"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ako odbijete uvjete i odredbe, onemogućit ćete prijepis govorne pošte."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Onemogućavanje prijepisa govorne pošte"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Govornoj pošti moći će se pristupiti samo pozivanjem broja *86. Postavite novi PIN za govornu poštu da biste nastavili."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Postavljanje PIN-a"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-hu/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-hu/strings.xml
index cc3eb7e..5d3915d 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-hu/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-hu/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Vizuális hangpostaüzenetek aktiválása"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"A vizuális hangposta teljes aktiválásáig nem feltétlenül kap értesítést a hangpostaüzenetekről. A szolgáltatás teljes aktiválásáig a hangpostát felhívva kérheti le új üzeneteit."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nem sikerült aktiválni a vizuális hangpostaüzeneteket"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Győződjön meg róla, hogy van adatkapcsolat, és próbálja újra."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Győződjön meg róla, hogy van mobil-adatkapcsolat, és próbálja újra."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Kapcsolja ki a repülős üzemmódot, és próbálja újra."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nincs kapcsolat"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nem kap értesítést az új hangpostaüzenetekről. Ha Wi-Fi-t használ, szinkronizálással lekérheti a hangpostaüzeneteket."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nem kap értesítést az új hangpostaüzenetekről. Ha Wi-Fi-t használ, szinkronizálással lekérheti a hangpostaüzeneteket."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nem kap értesítést az új hangpostaüzenetekről. Kapcsolja ki a repülős üzemmódot, és szinkronizálja a hangpostaüzeneteket."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"A hangpostaüzenetek lekéréshez adatkapcsolattal kell rendelkeznie."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"A hangpostaüzenetek lekéréshez adatkapcsolattal kell rendelkeznie."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nem sikerült aktiválni a vizuális hangpostaüzeneteket"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nem sikerült frissíteni a vizuális hangpostaüzeneteket"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Próbálja újra, amikor a Wi-Fi- vagy adatkapcsolat erősebb lesz. Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Próbálja újra, amikor az adatkapcsolat erősebb lesz. Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Próbálja újra, amikor a Wi-Fi- vagy adatkapcsolat erősebb lesz. Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Próbálja újra, amikor a mobil-adatkapcsolat erősebb lesz. Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nem sikerült frissíteni a vizuális hangpostaüzeneteket"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Hívással továbbra is lekérheti a hangpostaüzeneteket."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nem sikerült frissíteni a vizuális hangpostaüzeneteket"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Hiba történt"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Forduljon az ügyfélszolgálathoz a következő telefonszámon, és adja meg a 9999-es hibakódot: <xliff:g id="NUMBER">%1$s</xliff:g>."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"A vizuális hangposta általános szerződési feltételei"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"A vizuális hangposta használatához el kell fogadnia a Verizon Wireless általános szerződési feltételeit:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nA virtuális hangposta használatához el kell fogadnia a Verizon Wireless Általános Szerződési Feltételeit:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"A vizuális hangposta bekapcsolása"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ha nem fogadja el az általános szerződési feltételeket, letiltjuk a vizuális hangpostát."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"A vizuális hangposta letiltása"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ha nem fogadja el az általános szerződési feltételeket, letiltjuk a hangpostaüzenetek átírását."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Hangpostaüzenetek átírásának letiltása"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"A hangpostát a *86 számot tárcsázva érheti el. A folytatáshoz állítson be új PIN-kódot."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN-kód beállítása"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-hy/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-hy/strings.xml
index 4a9c2ed..60b6ce5 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-hy/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-hy/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ձայնային փոստի ցուցադրման ակտիվացում"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Ձայնային հաղորդագրությունների մասին ծանուցումներ չեք ստանա, քանի որ չեք ակտիվացրել ձայնային փոստի ցուցադրումը: Մինչ այդ, նոր հաղորդագրությունները լսելու համար զանգեք ձայնային փոստի ծառայություն:"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Չհաջողվեց ակտիվացնել ձայնային փոստի ցուցադրումը"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Համոզվեք, որ հեռախոսը միացած է բջջային ցանցին և նորից փորձեք:"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Համոզվեք, որ հեռախոսը միացած է բջջային ցանցին և նորից փորձեք:"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Անջատեք ինքնաթիռի ռեժիմը և նորից փորձեք:"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Կապ չկա"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Նոր ձայնային հաղորդագրությունների մասին ծանուցումներ չեք ստանա: Եթե միացած եք Wi-Fi-ին, կարող եք ստուգել ձայնային փոստը՝ կատարելով համաժամեցում:"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Նոր ձայնային հաղորդագրությունների մասին ծանուցումներ չեք ստանա: Եթե միացած եք Wi-Fi-ին, կարող եք ստուգել ձայնային փոստը՝ կատարելով համաժամեցում:"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Նոր ձայնային հաղորդագրությունների մասին ծանուցումներ չեք ստանա: Անջատեք ինքնաթիռի ռեժիմը՝ ձայնային փոստը համաժամեցնելու համար:"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Ձայնային փոստը ստուգելու համար ձեր հեռախոսի բջջային ինտերնետը պետք է միացած լինի:"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Ձայնային փոստը ստուգելու համար ձեր հեռախոսի բջջային ինտերնետը պետք է միացած լինի:"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Չհաջողվեց ակտիվացնել ձայնային փոստի ցուցադրումը"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Չհաջողվեց թարմացնել ձայնային փոստի ցուցադրումը"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Նորից փորձեք, երբ Wi-Fi-ը կամ բջջային կապը լավանա: Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Նորից փորձեք, երբ բջջային ինտերնետը լավանա: Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Նորից փորձեք, երբ Wi-Fi-ը կամ բջջային ինտերնետը լավանա: Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Նորից փորձեք, երբ բջջային ինտերնետը լավանա: Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Չհաջողվեց թարմացնել ձայնային փոստի ցուցադրումը"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Ձայնային փոստը ստուգելու համար զանգահարեք հատուկ համարին:"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Չհաջողվեց թարմացնել ձայնային փոստի ցուցադրումը"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Սխալ առաջացավ"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"<xliff:g id="NUMBER">%1$s</xliff:g> համարով կապվեք hաճախորդների սպասարկման ծառայության հետ և հայտնեք սխալի 9999 կոդը:"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Տեսողական ձայնային փոստի օգտագործման պայմաններ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Տեսողական ձայնային փոստն օգտագործելու համար ընդունեք Verizon Wireless-ի օգտագործման պայմանները՝\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nՏեսողական ձայնային փոստն օգտագործելու համար ընդունեք Verizon Wireless-ի օգտագործման պայմանները՝\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Միացնել տեսողական ձայնային փոստը"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Եթե չընդունեք օգտագործման պայմանները, տեսողական ձայնային փոստը կանջատվի:"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Անջատել տեսողական ձայնային փոստը"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Եթե չընդունեք օգտագործման պայմանները, ձայնային փոստի տառադրումը կանջատվի:"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Անջատել ձայնային փոստի տառադրումը"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Ձայնային փոստը հասանելի կլինի միայն *86 համարով: Շարունակելու համար ընտրեք ձայնային փոստի նոր PIN:"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Ընտրել PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-in/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-in/strings.xml
index 948afae..eed7a37 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-in/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-in/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Mengaktifkan pesan suara visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Anda mungkin tidak menerima pemberitahuan pesan suara hingga visual pesan suara sepenuhnya diaktifkan. Panggil pesan suara untuk mengambil pesan baru hingga pesan suara sepenuhnya diaktifkan."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Tidak dapat mengaktifkan pesan suara visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Pastikan ponsel Anda memiliki koneksi seluler, lalu coba lagi."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Pastikan ponsel memiliki koneksi jaringan seluler, dan coba lagi."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Nonaktifkan mode pesawat, lalu coba lagi."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Tidak ada sambungan internet"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Anda tidak akan menerima notifikasi pesan suara baru. Jika menggunakan Wi-Fi, pesan suara dapat diperiksa dengan menyinkronkannya sekarang."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Anda tidak akan menerima notifikasi pesan suara baru. Jika menggunakan Wi-Fi, pesan suara dapat diperiksa dengan menyinkronkannya sekarang."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Anda tidak akan menerima notifikasi pesan suara baru. Nonaktifkan mode pesawat untuk menyinkronkan pesan suara."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Ponsel Anda memerlukan koneksi data seluler untuk memeriksa pesan suara."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Ponsel memerlukan koneksi data seluler untuk memeriksa pesan suara."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Tidak dapat mengaktifkan pesan suara visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Anda masih dapat menelepon untuk memeriksa pesan suara."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Tidak dapat memperbarui pesan suara visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Coba lagi ketika koneksi Wi-Fi atau seluler lebih baik. Anda masih dapat menelepon untuk memeriksa pesan suara."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Coba lagi ketika koneksi data seluler lebih baik. Anda masih dapat menelepon untuk memeriksa pesan suara."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Coba lagi ketika koneksi Wi-Fi atau data seluler lebih baik. Anda masih bisa menelepon untuk memeriksa pesan suara."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Coba lagi ketika koneksi data seluler lebih baik. Anda masih bisa menelepon untuk memeriksa pesan suara."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Tidak dapat memperbarui pesan suara visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Anda masih dapat menelepon untuk memeriksa pesan suara."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Tidak dapat memperbarui pesan suara visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Terjadi Kesalahan"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Hubungi Layanan Pelanggan melalui nomor telepon <xliff:g id="NUMBER">%1$s</xliff:g> dan beri tahukan kode kesalahan 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Persyaratan dan Ketentuan Pesan Suara Visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Anda harus menerima persyaratan dan ketentuan Verizon Wireless untuk menggunakan pesan suara visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nAnda harus menerima persyaratan dan ketentuan Verizon Wireless untuk menggunakan pesan suara visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Aktifkan Pesan Suara Visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Pesan suara visual akan dinonaktifkan jika persyaratan dan ketentuan ditolak."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Nonaktifkan pesan suara visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripsi pesan suara akan dinonaktifkan jika persyaratan dan ketentuan ditolak."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Nonaktifkan transkripsi pesan suara"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Pesan suara hanya dapat diakses dengan menghubungi *86. Setel PIN pesan suara baru untuk melanjutkan."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Setel PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-is/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-is/strings.xml
index ae0497e..5965a04 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-is/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-is/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Virkjar myndrænt talhólf"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Þú getur ekki fengið tilkynningar um talhólfsskilaboð fyrr en myndrænt talhólf er virkjað að fullu. Hringdu í talhólfið til að sækja ný skilaboð þar til talhólfið hefur verið virkjað að fullu."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Ekki hægt að virkja myndrænt talhólf"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Gakktu úr skugga um að síminn sé tengdur farsímakerfi og reyndu aftur."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Gakktu úr skugga um að síminn sé tengdur farsímakerfi og reyndu aftur."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Slökktu á flugstillingu og reyndu aftur."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Engin tenging"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Þú færð ekki tilkynningu um ný talhólfsskilaboð. Ef þú ert með Wi-Fi tengingu geturðu athugað talhólfið með því að samstilla núna."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Þú færð ekki tilkynningar um ný talhólfsskilaboð. Ef þú ert með Wi-Fi tengingu geturðu athugað talhólfið með því að samstilla núna."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Þú færð ekki tilkynningu um ný talhólfsskilaboð. Slökktu á flugstillingu til að samstilla talhólfið."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Síminn þarf tengingu við farsímanet til að athuga talhólf."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Síminn þarf tengingu við farsímanet til að athuga talhólf."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Ekki hægt að virkja myndrænt talhólf"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Þú getur samt hringt til að athuga talhólfið."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Ekki hægt að uppfæra sjónrænt talhólf"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Reyndu aftur þegar Wi-Fi eða farsímanettengingin þín er betri. Þú getur samt hringt til að athuga talhólfið."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Reyndu aftur þegar farsímanettengingin þín er betri. Þú getur samt hringt til að athuga talhólfið."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Reyndu aftur þegar Wi-Fi eða farsímanettengingin þín er betri. Þú getur samt hringt til að athuga talhólfið."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Reyndu aftur þegar farsímanettengingin þín er betri. Þú getur samt hringt til að athuga talhólfið."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Ekki hægt að uppfæra sjónrænt talhólf"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Þú getur samt hringt til að athuga talhólfið."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Ekki hægt að uppfæra sjónrænt talhólf"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Eitthvað fór úrskeiðis"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Hafðu samband við þjónustudeild í síma <xliff:g id="NUMBER">%1$s</xliff:g> og gefðu upp villukóðann 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Skilmálar myndræns talhólfs"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Þú verður að samþykkja skilmála Verizon Wireless til að geta notað myndrænt talhólf:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nÞú verður að samþykkja skilmála Verizon Wireless til að nota myndrænt talhólf:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Kveikja á myndrænu talhólfi"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Slökkt verður á myndrænu talhólfi ef skilmálum er hafnað."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Slökkva á myndrænu talhólfi"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Slökkt verður á umritun talhólfsskilaboða ef skilmálarnir eru ekki samþykktir."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Slökkva á umritun talhólfsskilaboða"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Talhólf er einungis aðgengilegt með því að hringja í *86. Stilltu nýtt PIN-númer fyrir talhólfið til að halda áfram."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Stilla PIN-númer"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-it/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-it/strings.xml
index 1df608a..0133be5 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-it/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-it/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Attivazione della lettura della segreteria"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Potresti non ricevere le notifiche dei messaggi vocali fino a che non avrai attivato completamente la funzione di lettura della segreteria. Fino ad allora, chiama la segreteria per recuperare i nuovi messaggi."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Impossibile attivare la lettura della segreteria"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Assicurati che il telefono abbia una connessione alla rete dati e riprova."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Assicurati che il telefono abbia una connessione alla rete mobile e riprova."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Disattiva la modalità aereo e riprova."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nessuna connessione"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Non riceverai notifiche per i nuovi messaggi vocali. Se sei connesso a una rete Wi-Fi, puoi consultare la segreteria effettuando subito la sincronizzazione."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Non riceverai notifiche per i nuovi messaggi vocali. Se sei connesso a una rete Wi-Fi, puoi consultare la segreteria effettuando subito la sincronizzazione."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Non riceverai notifiche per i nuovi messaggi vocali. Disattiva la modalità aereo per sincronizzare la segreteria."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Per poter consultare la segreteria, il telefono deve essere connesso a una rete dati."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Per poter consultare la segreteria, il telefono deve essere connesso a una rete mobile."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Impossibile attivare la lettura della segreteria"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Puoi ancora consultare la segreteria tramite chiamata."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Impossibile aggiornare la lettura della segreteria"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Riprova quando la connessione alla rete Wi-Fi o dati sarà migliore. Puoi ancora consultare la segreteria tramite chiamata."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Riprova quando la connessione alla rete dati sarà migliore. Puoi ancora consultare la segreteria tramite chiamata."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Riprova quando la connessione alla rete Wi-Fi o mobile sarà migliore. Puoi ancora consultare la segreteria tramite chiamata."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Riprova quando la connessione dati mobile sarà migliore. Puoi ancora consultare la segreteria tramite chiamata."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Impossibile aggiornare la lettura della segreteria"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Puoi ancora consultare la segreteria tramite chiamata."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Impossibile aggiornare la lettura della segreteria"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Si è verificato un problema"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Contatta l\'assistenza clienti al numero <xliff:g id="NUMBER">%1$s</xliff:g> indicando il seguente codice di errore: 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termini e condizioni della lettura della segreteria"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Devi accettare i termini e condizioni di Verizon Wireless per utilizzare la lettura della segreteria:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDevi accettare termini e condizioni di Verizon Wireless per utilizzare la lettura della segretaria:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Attiva la lettura della segreteria"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"La lettura della segreteria verrà disattivata se non accetti i termini e condizioni."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Disattiva la lettura della segreteria"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"La trascrizione della segreteria verrà disattivata se non accetti termini e condizioni."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Disattiva la trascrizione della segreteria"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"La segreteria sarà accessibile unicamente chiamando il numero *86. Imposta un nuovo PIN per la segreteria per procedere."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Imposta PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-iw/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-iw/strings.xml
index c05a02f..a3fce07 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-iw/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-iw/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"מפעיל את הדואר הקולי הוויזואלי"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ייתכן שלא תקבל עדכונים על הודעות חדשות בדואר הקולי עד שהדואר הקולי הוויזואלי יופעל במלואו. עד אז, תצטרך להתקשר לדואר הקולי כדי להאזין להודעות החדשות."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"לא ניתן להפעיל את הדואר הקולי הוויזואלי"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ודא שלטלפון יש חיבור לרשת סלולרית ונסה שוב."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ודא שהטלפון מחובר לרשת סלולרית ונסה שוב."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"השבת את מצב טיסה ונסה שוב."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"אין חיבור"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"‏לא תקבל עדכונים על הודעות חדשות בדואר הקולי. אם אתה משתמש בחיבור Wi-Fi, סנכרן עכשיו כדי לבדוק את הדואר הקולי."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"‏לא תקבל עדכונים על הודעות קוליות חדשות. אם אתה משתמש בחיבור Wi-Fi, סנכרן עכשיו כדי לבדוק אם יש לך הודעות קוליות."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"לא תקבל עדכונים על הודעות חדשות בדואר הקולי. השבת את מצב הטיסה כדי לסנכרן את הדואר הקולי שלך."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"כדי שתוכל לבדוק את הדואר הקולי, נדרש חיבור לנתונים סלולריים בטלפון."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"כדי לבדוק הודעות קוליות נדרש חיבור לרשת סלולרית בטלפון."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"לא ניתן להפעיל את הדואר הקולי הוויזואלי"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"עדיין תוכל להתקשר כדי לבדוק את הדואר הקולי."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"לא ניתן לעדכן את הדואר הקולי הוויזואלי"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"‏נסה שוב כשיהיה חיבור טוב יותר ל-Wi-Fi או לרשת הסלולרית. עדיין תוכל להתקשר כדי לבדוק את הדואר הקולי."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"נסה שוב כשיהיה חיבור טוב יותר לרשת הסלולרית. עדיין תוכל להתקשר כדי לבדוק את הדואר הקולי."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"‏נסה שוב כשיהיה חיבור טוב יותר ל-Wi-Fi או לרשת הסלולרית. אפשר גם להתקשר כדי לבדוק הודעות קוליות."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"נסה שוב כשיהיה חיבור טוב יותר לרשת הסלולרית. אפשר גם להתקשר כדי לבדוק הודעות קוליות."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"לא ניתן לעדכן את הדואר הקולי הוויזואלי"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"עדיין תוכל להתקשר כדי לבדוק את הדואר הקולי."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"לא ניתן לעדכן את הדואר הקולי הוויזואלי"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"משהו השתבש"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"התקשר לשירות הלקוחות בטלפון <xliff:g id="NUMBER">%1$s</xliff:g> ואמור לנציג שקוד השגיאה הוא 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"התנאים וההגבלות של הדואר הקולי הוויזואלי"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"‏עליך לקבל את התנאים וההגבלות של Verizon Wireless כדי להשתמש בדואר הקולי הוויזואלי:\n\n‎%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"‏%1$s\n\nעליך לאשר את התנאים וההגבלות של Verizon Wireless כדי להשתמש בדואר הקולי הוויזואלי:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"הפעלה של דואר קולי ויזואלי"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"‎%s‎"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"אם תדחה את התנאים וההגבלות הדואר הקולי הוויזואלי יושבת."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"השבת את הדואר הקולי הוויזואלי"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"אם התנאים וההגבלות לא יאושרו, התמלולים של ההודעות הקוליות יושבתו."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"השבתת התמלולים של ההודעות הקוליות"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"תוכל לבדוק את הדואר הקולי רק על ידי חיוג 86*. כדי להמשיך, הגדר קוד גישה חדש לדואר הקולי."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"הגדרת קוד גישה"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ja/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ja/strings.xml
index 5d47a9c..dc4bc90 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ja/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ja/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ビジュアル ボイスメールを有効化中"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ビジュアル ボイスメールの有効化が完了するまでボイスメール通知を受信できません。ボイスメールの有効化が完了するまでは、ボイスメールを呼び出して新しいメッセージを取得してください。"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ビジュアル ボイスメールを有効化できません"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"スマートフォンがモバイル ネットワークに接続済みであることを確認してから、もう一度お試しください。"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"スマートフォンがモバイル ネットワークに接続済みであることを確認してから、もう一度お試しください。"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"機内モードをオフにしてから、もう一度お試しください。"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"接続なし"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"新しいボイスメールの通知を受信できません。Wi-Fi をご利用の場合、同期してボイスメールを確認できます。"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"新しいボイスメールの通知を受信できません。Wi-Fi をご利用の場合は同期してボイスメールを確認できます。"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"新しいボイスメールの通知を受信できません。ボイスメールを同期するには機内モードをオフにしてください。"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ボイスメールを確認するには、スマートフォンでモバイルデータ接続を使用する必要があります。"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ボイスメールを確認するには、スマートフォンでモバイルデータ接続を使用する必要があります。"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ビジュアル ボイスメールを有効化できません"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ビジュアル ボイスメールを更新できません"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fi かモバイルデータの接続状態が良好なときにもう一度お試しください。ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"モバイルデータの接続状態が良好なときにもう一度お試しください。ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Wi-Fi かモバイルデータの接続状態が良好なときにもう一度お試しください。ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"モバイルデータの接続状態が良好なときにもう一度お試しください。ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ビジュアル ボイスメールを更新できません"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ボイスメール サービスを呼び出してボイスメールを確認することは可能です。"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ビジュアル ボイスメールを更新できません"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"エラー"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"カスタマー サービス（<xliff:g id="NUMBER">%1$s</xliff:g>）にご連絡いただき、エラーコード 9999 をお伝えください。"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ビジュアル ボイスメールの利用規約"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ビジュアル ボイスメールを利用するには Verizon Wireless の利用規約に同意していただく必要があります。\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nビジュアル ボイスメールを利用するには Verizon Wireless の利用規約に同意していただく必要があります。\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ビジュアル ボイスメールの有効化"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"利用規約に同意いただけない場合は、ビジュアル ボイスメールが無効となります。"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ビジュアル ボイスメールを無効にする"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"利用規約に同意いただけない場合は、ボイスメールの音声文字変換が無効になります。"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ボイスメールの音声文字変換を無効にする"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*86 への発信によってのみ、ボイスメールにアクセスできます。続行するには、新しいボイスメール PIN を設定してください。"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN の設定"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ka/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ka/strings.xml
index c5f6a12..f6d21b4 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ka/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ka/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ვიზუალური ხმოვანი ფოსტა აქტიურდება"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ვიზუალური ხმოვანი ფოსტის სრულად გააქტიურებამდე შეიძლება ხმოვანი ფოსტის შეტყობინებები არ მიიღოთ. დარეკეთ ხმოვან ფოსტაში, რათა მიიღოთ ახალი შეტყობინებები ხმოვანი ფოსტის ბოლომდე გააქტიურებამდე."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ვიზუალური ხმოვანი ფოსტის გააქტიურება შეუძლებელია"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"დარწმუნდით, რომ თქვენს ტელეფონს აქვს ფიჭური კავშირი და სცადეთ ხელახლა."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"დარწმუნდით, რომ თქვენს ტელეფონს აქვს მობილურ ქსელთან კავშირი და სცადეთ ხელახლა."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"გამორთეთ თვითმფრინავის რეჟიმი და სცადეთ ხელახლა."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"კავშირი არ არის"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ახალი ხმოვანი ფოსტის შესახებ არ გეცნობებათ. თუ იყენებთ Wi-Fi-ს, შეგიძლიათ ახლავე შეამოწმოთ ხმოვანი ფოსტა სინქრონიზაციის მეშვეობით."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ახალი ხმოვანი ფოსტის შესახებ შეტყობინებას არ მიიღებთ. თუ იყენებთ Wi-Fi-ს, შეგიძლიათ შეამოწმოთ ხმოვანი ფოსტა ახლავე სინქრონიზაციის მეშვეობით."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ახალი ხმოვანი ფოსტის შესახებ არ გეცნობებათ. გამორთეთ თვითმფრინავის რეჟიმი ხმოვანი ფოსტის სინქრონიზაციისთვის."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ხმოვანი ფოსტის შესამოწმებლად თქვენი ტელეფონი საჭიროებს მობილურ ინტერნეტთან კავშირს."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ხმოვანი ფოსტის შესამოწმებლად თქვენი ტელეფონი საჭიროებს მობილურ ინტერნეტთან კავშირს."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ვიზუალური ხმოვანი ფოსტის გააქტიურება შეუძლებელია"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ხმოვანი ფოსტის შესამოწმებლად დარეკვა მაინც შეგიძლიათ."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ვიზუალური ხმოვანი ფოსტის განახლება შეუძლებელია"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"სცადეთ ხელახლა, როდესაც Wi-Fi ან ფიჭური კავშირი გაუმჯობესდება. ხმოვანი ფოსტის შესამოწმებლად დარეკვა მაინც შეგიძლიათ."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"სცადეთ ხელახლა, როდესაც ფიჭური კავშირი გაუმჯობესდება. ხმოვანი ფოსტის შესამოწმებლად დარეკვა მაინც შეგიძლიათ."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"სცადეთ ხელახლა, როდესაც Wi‑Fi ან მობილურ ინტერნეტთან კავშირი გაუმჯობესდება. ხმოვანი ფოსტის შესამოწმებლად დარეკვა ახლაც შეგიძლიათ."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"სცადეთ ხელახლა, როდესაც მობილურ ინტერნეტთან კავშირი გაუმჯობესდება. ხმოვანი ფოსტის შესამოწმებლად დარეკვა ახლაც შეგიძლიათ."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ვიზუალური ხმოვანი ფოსტის განახლება შეუძლებელია"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ხმოვანი ფოსტის შესამოწმებლად დარეკვა მაინც შეგიძლიათ."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ვიზუალური ხმოვანი ფოსტის განახლება შეუძლებელია"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"მოხდა რაღაც შეცდომა"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"გთხოვთ, დაუკავშირდეთ კლიენტთა მხარდაჭერის ცენტრს ნომერზე <xliff:g id="NUMBER">%1$s</xliff:g> და უთხრათ, რომ შეცდომის კოდია 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ვიზუალური ხმოვანი ფოსტის მომსახურების პირობები"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"თქვენ უნდა დაეთანხმოთ Verizon Wireless-ის მომსახურების პირობებს, რათა გამოიყენოთ ვიზუალური ხმოვანი ფოსტა:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nვიზუალური ხმოვანი ფოსტის გამოსაყენებლად თქვენ უნდა დაეთანხმოთ Verizon Wireless-ის მომსახურების პირობებს:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ვიზუალური ხმოვანი ფოსტის ჩართვა"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"თუ მომსახურების პირობებს უარყოფთ, ვიზუალური ხმოვანი ფოსტა გამოირთვება."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ვიზუალური ხმოვანი ფოსტის გამორთვა"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"მომსახურების პირობების უარყოფის შემთხვევაში ხმოვანი ფოსტის ტრანსკრიბირება გამოირთვება."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ხმოვანი ფოსტის ტრანსკრიბირების გამორთვა"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"ხმოვანი ფოსტა ხელმისაწვდომი იქნება მხოლოდ *86-ზე დარეკვით. გასაგრძელებლად დააყენეთ ხმოვანი ფოსტის ახალი PIN-კოდი."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"დააყენეთ PIN-კოდი"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-kk/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-kk/strings.xml
index ad164c8..ed37db3 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-kk/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-kk/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Визуалды дауыстық хабарды іске қосу"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Визуалды дауыстық пошта толығымен белсендірілгенше, дауыстық пошта хабарландыруларын қабылдай алмайсыз. Дауыстық пошта толығымен белсендірілгенше, жаңа хабарлар шығарып алу үшін дауыстық поштаға қоңырау шалыңыз."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Визуалды дауыстық хабарды іске қосу мүмкін болмады"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Телефоныңыздың ұялы байланысын тексеріп, әрекетті қайталаңыз."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Телефоныңыздың мобильдік байланысын тексеріп, әрекетті қайталаңыз."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Ұшақ режимін өшіріп, әрекетті қайталаңыз."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Байланыс жоқ"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Жаңа дауыстық хабарлар туралы сізге хабарланбайды. Wi-Fi байланысыңыз болса, дауыстық хабарды қазір синхрондау арқылы тексере аласыз."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Сізге жаңа дауыстық хабарлар туралы ескерту жіберілмейді. Егер Wi-Fi байланысын қолдансаңыз, қазір синхрондап, дауыстық хабарларды қазір тексеруіңізге болады."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Жаңа дауыстық хабарлар туралы сізге хабарланбайды. Дауыстық хабарды синхрондау үшін ұшақ режимін өшіріңіз."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Дауыстық хабарды тексеру үшін телефоныңызда ұялы деректер байланысы болуы керек."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Дауыстық хабарларды тексеру үшін телефоныңызда мобильдік байланыс болуы керек."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Визуалды дауыстық хабарды іске қосу мүмкін болмады"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Визуалды дауыстық хабарды жаңарту мүмкін болмады."</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fi немесе ұялы байланыс жақсарғанда, әрекетті қайталаңыз. Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Ұялы деректер байланысы жақсарғанда, әрекетті қайталаңыз. Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Wi-Fi немесе мобильдік байланыс жақсарғанда қайталап көріңіз. Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Мобильдік байланыс жақсарғанда қайталап көріңіз. Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Визуалды дауыстық хабарды жаңарту мүмкін болмады"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Дауыстық хабарды тексеру үшін қоңырау шалуыңызға болады."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Визуалды дауыстық хабарды жаңарту мүмкін болмады"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Бірдеңе дұрыс болмады"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Тұтынушыларға қызмет көрсету орталығына <xliff:g id="NUMBER">%1$s</xliff:g> бойынша хабарласыңыз және қате коды 9999 екенін айтыңыз."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Визуалды дауыстық хабар функциясының шарттары мен талаптары"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Визуалды дауыстық хабар функциясын қолдану үшін Verizon Wireless шарттарын қабылдауыңыз қажет:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nВизуалды дауыстық хабар функциясын қолдану үшін Verizon Wireless шарттарын қабылдауыңыз қажет:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Visual дауыстық хабарын қосу"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Шарттары мен талаптары қабылданбаса, визуалды дауыстық хабар функциясы өшіріледі."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Визуалды дауыстық хабар функциясын өшіру"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Шарттары мен талаптары қабылданбаса, визуалды дауыстық хабар транскрипциясы өшіріледі."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Дауыстық хабар транскрипциясын өшіру"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Дауыстық хабарлар поштасына кіру *86 нөміріне қоңырау шалғанда ғана мүмкін болады. Жалғастыру үшін жаңа PIN кодын тағайындаңыз."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN кодын тағайындау"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-km/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-km/strings.xml
index f0ebf04..4b37c8b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-km/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-km/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ធ្វើ​ឲ្យ​សកម្ម​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"អ្នក​ប្រហែលជា​​មិន​ទទួល​បាន​ការ​ជូនដំណឹង​ជា​សារ​សំឡេង​រហូត​​ទាល់តែ​ធ្វើ​ឲ្យ​សកម្ម​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ​ពេញលេញ​​។ ហៅ​ជា​សារ​សំឡេង​ដើម្បី​​ទទួល​បាន​សារ​ថ្មី​រហូត​សារ​ជា​សំឡេង​ត្រូវ​បាន​ធ្វើ​ឲ្យ​សកម្ម​ពេញលេញ។"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"មិន​អាច​ធ្វើ​ឲ្យ​សកម្ម​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ​បាន​ទេ"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"សូម​ប្រាកដ​ថា​ទូរសព្ទ​របស់​អ្នក​​បាន​ភ្ជាប់​​បណ្ដាញ​អ៊ីនធឺណិត និង​​ព្យាយាម​​ម្ដង​ទៀត។"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ប្រាកដ​ថា ទូរសព្ទ​របស់​អ្នក​មាន​ភ្ជាប់​បណ្ដាញ​ទូរសព្ទ​ចល័ត រួច​ព្យាយាម​ម្ដង​ទៀត។"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"បិទ​របៀប​លើ​យន្តហោះ និង​ព្យាយាម​ម្ដង​ទៀត។"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"គ្មាន​បណ្ដាញ​អ៊ីនធឺណិត"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ពេល​មាន​សារ​ជា​សំឡេង​ថ្មី​នឹង​មិន​ជូន​ដំណឹង​ទៅ​អ្នក​ឡើយ។ បើ​អ្នក​​បាន​ភ្ជាប់​វ៉ាយហ្វាយ អ្នក​អាច​ឆែក​រក​មើល​សារ​ជា​សំឡេង​ដោយ​ទាញ​យក​ឥឡូវ​នេះ។"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"អ្នក​នឹង​មិន​ទទួល​បាន​ការជូនដំណឹង នៅពេល​មាន​សារ​ជា​សំឡេង​ថ្មី​ទេ។ បើ​អ្នក​​ភ្ជាប់​ទៅ Wi-Fi អ្នក​អាច​ពិនិត្យមើល​​សារ​ជា​សំឡេង​ដោយ​ធ្វើ​សមកាលកម្ម​ឥឡូវ​នេះ។"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ពេល​មាន​សារ​ជា​សំឡេង​ថ្មី​នឹង​មិន​ជូន​ដំណឹង​ទៅ​អ្នក​ឡើយ។ សូម​បិទ​របៀប​លើ​យន្តហោះ​ដើម្បី​ទាញយក​សារ​សំឡេង​របស់​អ្នក។"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ទូរសព្ទ​របស់​អ្នក​ត្រូវ​​ភ្ជាប់​អ៊ីនធឺណិតតាម​ទិន្នន័យ​ទូរសព្ទ​​​ចល័ត​ដើម្បី​អាច​ពិនិត្យ​មើល​សារ​​ជា​សំឡេង​បាន​។"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ទូរសព្ទ​របស់​អ្នក​ត្រូវ​​ភ្ជាប់​អ៊ីនធឺណិតតាម​ទិន្នន័យ​ទូរសព្ទ​​​ចល័ត​ ដើម្បី​អាច​ពិនិត្យ​មើល​សារ​​ជា​សំឡេង​បាន​។"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"មិន​អាច​ធ្វើ​ឲ្យ​សកម្ម​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ​បាន​ទេ"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"អ្នក​នៅ​តែ​អាច​ហៅ​​ទូរសព្ទ​ដើម្បី​ស្ដាប់​សារ​ជា​សំឡេង។"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"មិន​អាច​ធ្វើ​បច្ចុប្បន្នភាព​សារ​​ជា​សំឡេង​ដែល​មើល​ឃើញ​បាន​​​ទេ។"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ព្យាយាម​ម្ដង​ទៀត នៅពេល​ Wi-Fi ឬ​ការតភ្ជាប់​បណ្ដាញ​ទូរសព្ទ​ចល័ត​ប្រសើរ។ អ្នក​នៅ​តែ​អាច​ហៅ​ទូរសព្ទ​ដើម្បី​​ស្ដាប់​សារ​ជា​សំឡេង​។"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ព្យាយាម​ម្ដង​ទៀត នៅពេល​​​ការតភ្ជាប់​បណ្ដាញ​ទូរសព្ទ​ចល័ត​ប្រសើរ។ អ្នក​នៅ​តែ​អាច​ហៅ​ទូរសព្ទ​ដើម្បី​​ស្ដាប់​សារ​ជា​សំឡេង​។"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"ព្យាយាម​ម្ដង​ទៀត នៅពេល​មាន Wi-Fi ឬ​អ៊ីនធឺណិត​​តាម​​ទិន្នន័យ​​ទូរសព្ទ​ចល័ត​ប្រសើរ។ អ្នក​នៅ​តែ​អាច​ហៅ​ទូរសព្ទ​ ដើម្បី​​ពិនិត្យមើល​សារ​ជា​សំឡេង​​បាន។"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"ព្យាយាម​ម្ដង​ទៀត នៅពេល​​​​មាន​អ៊ីនធឺណិត​តាម​ទិន្នន័យ​​ទូរសព្ទ​ចល័ត​ប្រសើរ។ អ្នក​នៅ​តែ​អាច​ហៅ​ទូរសព្ទ​ ដើម្បី​​ស្ដាប់​សារ​ជា​សំឡេង​។"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"មិន​អាច​ធ្វើ​បច្ចុប្បន្នភាព​សារ​​ជា​សំឡេង​ដែល​មើល​ឃើញ​​បាន​ទេ។"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"អ្នក​នៅ​តែ​អាច​ហៅ​​ទូរសព្ទ​ដើម្បី​ស្ដាប់​សារ​ជា​សំឡេង។"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"មិន​អាច​ធ្វើ​បច្ចុប្បន្នភាព​សារ​​ជា​សំឡេង​ដែល​មើល​ឃើញ​បាន​​​ទេ។"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"មានអ្វីមួយមិនប្រក្រតី"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"សូម​ទាក់ទង​ផ្នែក​បម្រើ​សេវា​អតិថិជន​តាមរយៈ <xliff:g id="NUMBER">%1$s</xliff:g> និង​ប្រាប់​ពួកគេ​កូដ​មាន​បញ្ហា គឺ 9999។"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"លក្ខខណ្ឌ​ប្រើប្រាស់​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"អ្នក​ត្រូវតែ​យល់ព្រម​នឹង​​លក្ខខណ្ឌ​ប្រើប្រាស់​របស់​ Verizon Wireless ដើម្បី​អាច​ប្រើប្រាស់​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ៖\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nអ្នក​ត្រូវតែ​យល់ព្រម​នឹង​​គោលការណ៍ និង​លក្ខខណ្ឌ​របស់ Verizon Wireless ដើម្បី​ប្រើប្រាស់​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ៖\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"បើក​សារ​ជា​សំឡេង​ដែល​មើល​ឃើញ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"សារ​ជា​សំឡេង​ដែល​​មើល​ឃើញ​នឹង​ត្រូវ​បាន​បិទ បើ​លក្ខខណ្ឌ​ប្រើប្រាស់​ត្រូវ​បាន​បដិសេធ។"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"បិទសារជាសំឡេងដែលមើលឃើញ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"ការធ្វើ​ប្រតិចារឹក​សារ​ជាសំឡេង​នឹង​ត្រូវ​បិទ ប្រសិនបើ​គោលការណ៍ និង​លក្ខខណ្ឌ​ត្រូវបាន​បដិសេធ។"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"បិទ​ការធ្វើ​ប្រតិចារឹក​សារ​ជា​សំឡេង"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"សារ​ជា​សំឡេង​នឹង​អាច​ចូល​ស្ដាប់​បាន​​ដោយ​ហៅ​ទៅ *86។ កំណត់​កូដ PIN នៃ​សារ​ជា​សំឡេង​ថ្មី ដើម្បី​ចាប់ផ្ដើម​ដំណើរការ។"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"កំណត់​កូដ PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-kn/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-kn/strings.xml
index 7840fca..2f5169a 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-kn/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-kn/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಸಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತಿದೆ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಪೂರ್ಣವಾಗಿ ಸಕ್ರಿಯಗೊಳಿಸುವವರೆಗೂ ನಿಮಗೆ ಧ್ವನಿಮೇಲ್‌ ಅಧಿಸೂಚನೆಗಳನ್ನು ಸ್ವೀಕರಿಸಲು ಸಾಧ್ಯವಾಗದೇ ಇರಬಹುದು. ಧ್ವನಿಮೇಲ್‌ಗಳು ಪೂರ್ಣವಾಗಿ ಸಕ್ರಿಯವಾಗುವವರೆಗೆ ಹೊಸ ಸಂದೇಶಗಳನ್ನು ಹಿಂಪಡೆಯಲು ಧ್ವನಿಮೇಲ್‌ನಲ್ಲಿ ಕರೆಮಾಡಿ."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ನಿಮ್ಮ ಫೋನ್‌ ಸೆಲ್ಯುಲಾರ್ ಸಂಪರ್ಕವನ್ನು ಹೊಂದಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ ಹಾಗೂ ನಂತರ ಪ್ರಯತ್ನಿಸಿ."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ನಿಮ್ಮ ಫೋನ್‌ ಮೊಬೈಲ್ ಸಂಪರ್ಕವನ್ನು ಹೊಂದಿದೆಯೇ ಎಂದು ಖಚಿತಪಡಿಸಿಕೊಳ್ಳಿ ಹಾಗೂ ನಂತರ ಪ್ರಯತ್ನಿಸಿ."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ಏರ್‌ಪ್ಲೇನ್ ಮೋಡ್ ಆಫ್ ಮಾಡಿ ಹಾಗೂ ನಂತರ ಪ್ರಯತ್ನಿಸಿ."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ಯಾವುದೇ ಸಂಪರ್ಕವಿಲ್ಲ"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ಹೊಸ ಧ್ವನಿಮೇಲ್‌ಗಳ ಕುರಿತು ನಿಮಗೆ ಸೂಚಿಸಲಾಗುವುದಿಲ್ಲ. ನೀವು ವೈ-ಫೈನಲ್ಲಿದ್ದರೆ, ನೀವು ಈಗಲೇ ಸಿಂಕ್ ಮಾಡುವ ಮೂಲಕ ಧ್ವನಿಮೇಲ್‌ಗೆ ಪರಿಶೀಲಿಸಬಹುದು."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ಹೊಸ ಧ್ವನಿಮೇಲ್‌ಗಳ ಕುರಿತು ನಿಮಗೆ ಸೂಚಿಸಲಾಗುವುದಿಲ್ಲ. ನೀವು ವೈ-ಫೈ ನಲ್ಲಿದ್ದರೆ, ನೀವು ಈಗಲೇ ಸಿಂಕ್ ಮಾಡುವ ಮೂಲಕ ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಬಹುದು."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ಹೊಸ ಧ್ವನಿಮೇಲ್‌ಗಳ ಕುರಿತು ನಿಮಗೆ ಸೂಚಿಸಲಾಗುವುದಿಲ್ಲ. ನಿಮ್ಮ ಧ್ವನಿಮೇಲ್‌ ಸಿಂಕ್ ಮಾಡಲು ಏರ್‌ಪ್ಲೇನ್ ಮೋಡ್ ಅನ್ನು ಆಫ್ ಮಾಡಿ."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ಧ್ವನಿಮೇಲ್‌ ಅನ್ನು ಪರಿಶೀಲಿಸಲು ನಿಮ್ಮ ಫೋನ್‌‌ಗೆ ಸೆಲ್ಯುಲಾರ್ ಡೇಟಾ ಸಂಪರ್ಕ ಅಗತ್ಯವಿದೆ."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ಧ್ವನಿಮೇಲ್‌ ಅನ್ನು ಪರಿಶೀಲಿಸಲು ನಿಮ್ಮ ಫೋನ್‌‌ಗೆ ಮೊಬೈಲ್ ಡೇಟಾ ಸಂಪರ್ಕದ ಅಗತ್ಯವಿದೆ."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ನಿಮ್ಮ ವೈ-ಫೈ ಅಥವಾ ಸೆಲ್ಯುಲಾರ್ ಸಂಪರ್ಕವು ಉತ್ತಮವಾದಾಗ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ. ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ನಿಮ್ಮ ಸೆಲ್ಯುಲಾರ್ ಡೇಟಾ ಸಂಪರ್ಕವು ಉತ್ತಮವಾದಾಗ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ. ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"ನಿಮ್ಮ ವೈ-ಫೈ ಅಥವಾ ಮೊಬೈಲ್ ಸಂಪರ್ಕವು ಉತ್ತಮವಾದಾಗ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ. ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"ನಿಮ್ಮ ಮೊಬೈಲ್ ಡೇಟಾ ಸಂಪರ್ಕವು ಉತ್ತಮವಾದಾಗ ಮತ್ತೆ ಪ್ರಯತ್ನಿಸಿ. ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ನೀವು ಧ್ವನಿಮೇಲ್‌ ಪರಿಶೀಲಿಸಲು ಈಗಲೂ ಕರೆ ಮಾಡಬಹುದು."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ಅಪ್‌ಡೇಟ್‌ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"ಯಾವುದೋ ತಪ್ಪು ಸಂಭವಿಸಿದೆ"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"ಗ್ರಾಹಕ ಸೇವೆ ಸಂಖ್ಯೆ <xliff:g id="NUMBER">%1$s</xliff:g> ಗೆ ಸಂಪರ್ಕಿಸಿ ಮತ್ತು 9999 ದೋಷದ ಕೋಡ್‌ ಅನ್ನು ಅವರಿಗೆ ತಿಳಿಸಿ."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್‌ನ ನಿಯಮಗಳು ಮತ್ತು ನಿಬಂಧನೆಗಳು"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಬಳಸಲು ವೆರಿಜೋನ್ ವೈರ್‌ಲೆಸ್‌ನ ನಿಯಮಗಳು ಮತ್ತು ನಿಬಂಧನೆಗಳನ್ನು ನೀವು ಒಪ್ಪಿಕೊಳ್ಳಬೇಕು:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಬಳಸಲು Verizon Wireless ನಿಯಮಗಳು ಮತ್ತು ನಿಬಂಧನೆಗಳನ್ನು ನೀವು ಒಪ್ಪಿಕೊಳ್ಳಬೇಕು:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಆನ್ ಮಾಡಿ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"ನಿಯಮಗಳು ಮತ್ತು ನಿಬಂಧನೆಗಳುಗಳನ್ನು ನಿರಾಕರಿಸಿದಲ್ಲಿ ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತದೆ."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ದೃಶ್ಯ ಧ್ವನಿಮೇಲ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"ನಿಯಮಗಳು ಮತ್ತು ನಿಬಂಧನೆಗಳನ್ನು ನಿರಾಕರಿಸಿದಲ್ಲಿ ಧ್ವನಿಮೇಲ್ ಟ್ರಾನ್ಸ್‌ಕ್ರಿಪ್ಶನ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಲಾಗುತ್ತದೆ."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ಧ್ವನಿಮೇಲ್ ಟ್ರಾನ್ಸ್‌ಕ್ರಿಪ್ಶನ್ ಅನ್ನು ನಿಷ್ಕ್ರಿಯಗೊಳಿಸಿ"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*86 ಗ ಕರೆ ಮಾಡುವ ಮೂಲಕ ಮಾತ್ರ ಧ್ವನಿಮೇಲ್‌ಗೆ ಪ್ರವೇಶಿಸಲು ಸಾಧ್ಯ. ಮುಂದುವರೆಯಲು ಒಂದು ಹೊಸ ಧ್ವನಿಮೇಲ್ ಪಿನ್ ಹೊಂದಿಸಿ."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"ಪಿನ್ ಹೊಂದಿಸಿ"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ko/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ko/strings.xml
index 092214d..00893f5 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ko/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ko/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"시각적 음성사서함 활성화 중"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"시각적 음성사서함이 완전히 활성화될 때까지 음성사서함 알림을 받지 못할 수 있습니다. 음성사서함이 완전히 활성화될 때까지 음성사서함으로 전화하여 새 메시지를 가져오세요."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"시각적 음성사서함을 활성화할 수 없음"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"휴대전화가 모바일 데이터에 연결되었는지 확인한 다음 다시 시도해 주세요."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"휴대전화가 모바일 네트워크에 연결되었는지 확인한 다음 다시 시도해 주세요."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"비행기 모드를 사용 중지한 다음 다시 시도해 주세요."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"네트워크 연결 없음"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"새로운 음성사서함에 대한 알림이 전송되지 않습니다. Wi-Fi에 연결되어 있는 경우 지금 동기화하여 음성사서함을 확인할 수 있습니다."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"새로운 음성 메시지에 관한 알림이 전송되지 않습니다. Wi-Fi에 연결되어 있는 경우 지금 동기화하여 음성사서함을 확인할 수 있습니다."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"새로운 음성사서함에 대한 알림이 전송되지 않습니다. 음성사서함을 동기화하려면 비행기 모드를 사용 중지하세요."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"음성사서함을 확인하려면 모바일 데이터에 연결되어야 합니다."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"음성사서함을 확인하려면 휴대전화가 모바일 데이터에 연결되어야 합니다."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"시각적 음성사서함을 활성화할 수 없음"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"여전히 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"시각적 음성사서함을 업데이트할 수 없음"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fi 또는 모바일 데이터 연결이 개선되면 다시 시도해 주세요. 여전히 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"모바일 데이터 연결이 개선되면 다시 시도해 주세요. 여전히 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Wi-Fi 또는 모바일 데이터 연결이 개선되면 다시 시도해 주세요. 지금도 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"모바일 데이터 연결이 개선되면 다시 시도해 주세요. 지금도 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"시각적 음성사서함을 업데이트할 수 없음"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"여전히 전화를 걸어 음성사서함을 확인할 수 있습니다."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"시각적 음성사서함을 업데이트할 수 없음"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"문제 발생"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"고객 서비스 담당자(<xliff:g id="NUMBER">%1$s</xliff:g>)에게 문의하고 오류 코드가 9999임을 알려주시기 바랍니다."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"시각적 음성사서함 이용약관"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"시각적 음성사서함을 사용하려면 Verizon Wireless의 이용약관을 수락해야 합니다.\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVerizon Wireless의 이용약관에 동의한 후 시각적 음성사서함을 사용할 수 있습니다:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"시각적 음성사서함 사용"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"이용약관을 거부하는 경우 시각적 음성사서함이 사용 중지됩니다."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"시각적 음성사서함 사용 중지"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"이용약관을 거부하면 음성사서함 텍스트 변환은 사용 중지됩니다."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"음성사서함 텍스트 변환 사용 중지"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"음성사서함은 *86번으로 통화해야만 액세스가 가능합니다. 계속하려면 새 음성사서함 PIN을 설정하세요."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN 설정"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ky/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ky/strings.xml
index 0fffb06..d976cb2 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ky/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ky/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Визуалдык үн почтасын иштетүү"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Визуалдык үн почтасы толук иштетилмейинче үн почтасынын эскертмелерин ала албайсыз. Үн почтасы толугу менен иштетилгенче жаңы билдирүүлөрдү алуу үчүн үн почтасына чалыңыз."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Визуалдык үн почтасы иштебей жатат"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Телефонуңузда мобилдик байланыш бар экенин текшерип, кайра аракет кылыңыз."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Телефонуңузда мобилдик байланыш бар экенин текшерип, кайра аракет кылыңыз."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Учак режимин өчүрүп, кайра аракет кылыңыз."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Байланыш жок"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Жаңы билдирүүлөр жөнүндө эскертмелер келбейт. Эгер телефонуңуз Wi-Fi тармагына туташып турса, аны үн почтасы менен шайкештириңиз."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Жаңы билдирүүлөр жөнүндө эскертмелер келбейт. Эгер телефонуңуз Wi-Fi тармагына туташып турса, аны үн почтасы менен шайкештириңиз."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Жаңы билдирүүлөр жөнүндө эскертмелер келбейт. Учак режимин өчүрүп, телефонуңузду үн почтаңыз менен шайкештириңиз."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Үн почтаңызды текшерүү үчүн мобилдик интернетти иштетиңиз."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Үн почтаңызды текшерүү үчүн мобилдик интернетти иштетиңиз."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Визуалдык үн почтасы иштебей жатат"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Үн почтасын текшерүү үчүн атайын номерге чалсаңыз болот."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Визуалдык үн почтасы жаңырбай жатат"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fi сигналы же мобилдик интернет туруктуу болгончо күтө туруп, анан кайра аракет кылыңыз. Эгер почтаны азыр текшергиңиз келсе, атайын номерге чалыңыз."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Мобилдик интернет туруктуу болгончо күтө туруп, анан кайра аракет кылыңыз. Эгер почтаны азыр текшергиңиз келсе, атайын номерге чалыңыз."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Wi-Fi сигналы же мобилдик интернет туруктуу болгончо күтө туруп, анан кайра аракет кылыңыз. Эгер почтаны азыр текшергиңиз келсе, атайын номерге чалыңыз."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Мобилдик интернет туруктуу болгончо күтө туруп, анан кайра аракет кылыңыз. Эгер почтаны азыр текшергиңиз келсе, атайын номерге чалыңыз."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Визуалдык үн почтасы жаңырбай жатат"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Үн почтасын текшерүү үчүн атайын номерге чалсаңыз болот."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Визуалдык үн почтасы жаңырбай жатат"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Бир жерден ката кетти"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Кардарларды колдоо кызматынын <xliff:g id="NUMBER">%1$s</xliff:g> номерине чалып, ката коду 9999 деп айтыңыз."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Визуалдык үн почтасынын колдонуу жоболору жана шарттары"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Сиз Verizon Wireless\'тин визуалдык үн почтасын колдонуу жоболору менен шарттарына макул болушуңуз керек:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nСиз Verizon Wireless\'тин визуалдык үн почтасын колдонуу жоболору менен шарттарына макул болушуңуз керек:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Визуалдык үн почтасын күйгүзүңүз"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Эгер колдонуу жоболору менен шарттары четке кагылган болсо, визуалдык үн почтасы өчүрүлөт."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Визуалдык үн почтасын өчүрүү"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Эгер колдонуу жоболору менен шарттары четке кагылган болсо, үн почтасы өчүрүлөт."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Үн почтасынын транскрипциясын өчүрүңүз"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Үн почтасын угуу үчүн *86 номерине чалыңыз. Улантуу үчүн, үн почтасына жаңы PIN-кодду коюңуз."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN-код коюу"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-lo/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-lo/strings.xml
index d6293d2..baa1a8e 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-lo/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-lo/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ກຳລັງເປີດໃຊ້ຂໍ້ຄວາມສຽງແບບພາບ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"You might not receive voicemail notifications until visual voicemail is fully activated. Call voicemail to retrieve new messages until voicemail is fully activated."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ບໍ່ສາມາດເປີດໃຊ້ຂໍ້ຄວາມສຽງແບບພາບໄດ້"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ໃຫ້ກວດສອບເບິ່ງວ່າໂທລະສັບຂອງທ່ານເຊື່ອມຕໍ່ເຄືອຂ່າຍມືຖືແລ້ວ ຈາກນັ້ນລອງໃໝ່ອີກຄັ້ງ."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ໃຫ້ກວດສອບວ່າໂທລະສັບຂອງທ່ານມີການເຊື່ອມຕໍ່ອິນເຕີເນັດ ແລ້ວລອງໃໝ່ອີກຄັ້ງ"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ປິດໂໝດຢູ່ໃນຍົນແລ້ວລອງໃໝ່ອີກຄັ້ງ."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ບໍ່ມີການເຊື່ອມຕໍ່"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ທ່ານຈະບໍ່ໄດ້ຮັບການແຈ້ງເຕືອນເມື່ອມີຂໍ້ຄວາມສຽງໃໝ່. ຫາກທ່ານໃຊ້ Wi-Fi, ທ່ານສາມາດກວດສອບຂໍ້ຄວາມສຽງໄດ້ໂດຍການຊິ້ງຂໍ້ມູນຕອນນີ້."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ທ່ານຈະບໍ່ໄດ້ຮັບການແຈ້ງເຕືອນເມື່ອມີຂໍ້ຄວາມສຽງໃໝ່. ຫາກທ່ານໃຊ້ Wi-Fi, ທ່ານສາມາດກວດສອບຂໍ້ຄວາມສຽງໄດ້ໂດຍການຊິ້ງຂໍ້ມູນຕອນນີ້."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ທ່ານຈະບໍ່ໄດ້ຮັບການແຈ້ງເຕືອນເມື່ອມີຂໍ້ຄວາມສຽງໃໝ່. ກະລຸນາປິດໂໝດຢູ່ໃນຍົນເພື່ອຊິ້ງຂໍ້ຄວາມສຽງຂອງທ່ານ."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ໂທລະສັບຂອງທ່ານຕ້ອງມີການເຊື່ອມຕໍ່ເຄືອຂ່າຍມືຖືເພື່ອກວດສອບຂໍ້ຄວາມສຽງ."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ໂທລະສັບຂອງທ່ານຕ້ອງມີການເຊື່ອມຕໍ່ອິນເຕີເນັດມືຖືເພື່ອກວດສອບຂໍ້ຄວາມສຽງ."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ບໍ່ສາມາດເປີດໃຊ້ຂໍ້ຄວາມສຽງແບບພາບໄດ້"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ທ່ານສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງໄດ້ຢູ່."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ບໍ່ສາມາດອັບເດດຂໍ້ຄວາມສຽງແບບພາບໄດ້"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ໃຫ້ລອງອີກຄັ້ງເມື່ອການເຊື່ອມຕໍ່ Wi-Fi ຫຼື ເຄືອຂ່າຍມືຖືຂອງທ່ານດີຂຶ້ນ. ທ່ານຍັງຄົງສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງຂອງທ່ານໄດ້ຢູ່."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ໃຫ້ລອງອີກຄັ້ງເມື່ອການເຊື່ອມຕໍ່ເຄືອຂ່າຍມືຖືຂອງທ່ານດີຂຶ້ນ. ທ່ານຍັງຄົງສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງຂອງທ່ານໄດ້ຢູ່."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"ໃຫ້ລອງໃໝ່ອີກຄັ້ງເມື່ອການເຊື່ອມຕໍ່ Wi‑Fi ຫຼື ອິນເຕີເນັດມືຖືຂອງທ່ານໄວຂຶ້ນກວ່ານີ້. ທ່ານຍັງຄົງສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງຂອງທ່ານໄດ້ຢູ່."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"ໃຫ້ລອງອີກຄັ້ງເມື່ອການເຊື່ອມຕໍ່ອິນຕີເນັດມືຖືຂອງທ່ານໄວຂຶ້ນກວ່ານີ້. ທ່ານຍັງຄົງສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງຂອງທ່ານໄດ້ຢູ່."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ບໍ່ສາມາດອັບເດດຂໍ້ຄວາມສຽງແບບພາບໄດ້"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ທ່ານສາມາດໂທເພື່ອກວດສອບຂໍ້ຄວາມສຽງໄດ້ຢູ່."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ບໍ່ສາມາດອັບເດດຂໍ້ຄວາມສຽງແບບພາບໄດ້"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"ມີບາງສິ່ງຜິດປົກກະຕິເກີດຂຶ້ນ"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Please contact Customer Service at <xliff:g id="NUMBER">%1$s</xliff:g> and tell them the error code is 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ຂໍ້ກຳນົດ ແລະ ເງື່ອນໄຂຂໍ້ຄວາມສຽງສະເໝືອນ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ທ່ານຕ້ອງຍອມຮັບຂໍ້ກຳນົດ ແລະ ເງື່ອນໄຂຂອງ Verizon Wireless ເພື່ອໃຊ້ຂໍ້ຄວາມສຽງສະເໝືອນ:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nທ່ານຈະຕ້ອງຍອມຮັບຂໍ້ກຳນົດ ແລະ ເງື່ອນໄຂຂອງ Verizon Wireless ກ່ອນເພື່ອໃຊ້ຂໍ້ຄວາມສຽງສະເໝືອນ:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ເປີດໃຊ້ຂໍ້ຄວາມສຽງສະເໝືອນ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"ຂໍ້ຄວາມສຽງສະເໝືອນຈະຖືກປິດການນຳໃຊ້ຫາກປະຕິເສດຂໍ້ກຳນົດ ແລະ ເງື່ອນໄຂດັ່ງກ່າວ."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ປິດການນຳໃຊ້ຂໍ້ຄວາມສຽງສະເໝືອນ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"ການຖອດຂໍ້ຄວາມສຽງຈະຖືກປິດການນຳໃຊ້ຫາກປະຕິເສດຂໍ້ກຳນົດ ແລະ ເງື່ອນໄຂ."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ປິດການນຳໃຊ້ການຖອດຂໍ້ຄວາມສຽງ"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"ຂໍ້ຄວາມສຽງສາມາດເຂົ້າເຖິງໄດ້ສະເພາະການໂທຜ່ານ *86 ເທົ່ານັ້ນ. ຕັ້ງລະຫັດ PIN ຂໍ້ຄວາມສຽງໃໝ່ເພື່ອດຳເນີນການຕໍ່."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"ຕັ້ງລະຫັດ PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-lt/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-lt/strings.xml
index 92f3316..08ba359 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-lt/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-lt/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Suaktyvinamas vaizdinis balso paštas"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Kol vaizdinis balso paštas nebus visiškai suaktyvintas, galite negauti balso pašto pranešimų. Jei norite gauti naujus pranešimus, kol jis nėra visiškai suaktyvintas, paskambinkite į balso paštą."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nepavyksta suaktyvinti vaizdinio balso pašto"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Įsitikinkite, kad telefone veikia korinis ryšys, ir bandykite dar kartą."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Įsitikinkite, kad telefone veikia mobilusis ryšys, ir bandykite dar kartą."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Išjunkite lėktuvo režimą ir bandykite dar kartą."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nėra ryšio"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Jums nebus pranešta apie naujus balso pašto pranešimus. Jei esate prisijungę prie „Wi-Fi“, dabar įjungę sinchronizavimą galite patikrinti, ar yra naujų balso pašto pranešimų."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Jums nebus pranešta apie naujus balso pašto pranešimus. Jei esate prisijungę prie „Wi-Fi“, dabar įjungę sinchronizavimą galite patikrinti, ar yra balso pašto pranešimų."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Jums nebus pranešta apie naujus balso pašto pranešimus. Išjunkite lėktuvo režimą, kad galėtumėte sinchronizuoti balso pašto pranešimus."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"kad galėtumėte patikrinti balso pašto pranešimus, telefone turi būti įjungti mobiliojo ryšio duomenys."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Kad galėtumėte patikrinti balso pašto pranešimus, telefone turi būti įjungti mobiliojo ryšio duomenys."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nepavyksta suaktyvinti vaizdinio balso pašto"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Vis tiek galite skambinti ir tikrinti balso pašto pranešimus."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nepavyksta atnaujinti vaizdinio balso pašto"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Bandykite dar kartą, kai „Wi-Fi“ arba mobiliųjų duomenų ryšys bus geresnis. Vis tiek galite skambinti ir tikrinti balso pašto pranešimus."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Bandykite dar kartą, kai mobiliųjų duomenų ryšys bus geresnis. Vis tiek galite skambinti ir tikrinti balso pašto pranešimus."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Bandykite dar kartą, kai „Wi-Fi“ arba mobiliųjų duomenų ryšys bus geresnis. Vis tiek galite paskambinti ir patikrinti balso pašto pranešimus."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Bandykite dar kartą, kai mobiliųjų duomenų ryšys bus geresnis. Vis tiek galite paskambinti ir patikrinti balso pašto pranešimus."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nepavyksta atnaujinti vaizdinio balso pašto"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Vis tiek galite skambinti ir tikrinti balso pašto pranešimus."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nepavyksta atnaujinti vaizdinio balso pašto"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Kažkas ne taip"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Susisiekite su klientų aptarnavimo tarnyba numeriu <xliff:g id="NUMBER">%1$s</xliff:g> ir pasakykite klaidos kodą 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vaizdinio balso pašto taisyklės ir nuostatos"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Norėdami naudoti vaizdinį balso paštą, turite sutikti su „Verizon Wireless“ taisyklėmis ir nuostatomis:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nTurite sutikti su „Verizon Wireless“ taisyklėmis ir nuostatomis, kad galėtumėte naudoti vaizdinį balso paštą:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Vaizdinio balso pašto įjungimas"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Atmetus taisykles ir nuostatas, vaizdinis balso paštas bus išjungtas."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Išjungti vaizdinį balso paštą"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Atmetus taisykles ir nuostatas, balso pašto transkribavimas bus išjungtas."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Išjungti balso pašto transkribavimą"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Balso paštas bus pasiekiamas tik paskambinus numeriu *86. Nustatykite naują balso pašto PIN kodą, kad galėtumėte tęsti."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN kodo nustatymas"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-lv/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-lv/strings.xml
index e27de6f..e5d0d80 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-lv/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-lv/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Vizuālā balss pasta aktivizēšana"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Kamēr vizuālais balss pasts nebūs pilnībā aktivizēts, iespējams, nesaņemsiet balss pasta paziņojumus. Lai izgūtu jaunus ziņojumus, kamēr balss pasts nav pilnībā aktivizēts, zvaniet balss pastam."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nevar aktivizēt vizuālo balss pastu."</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Pārbaudiet, vai tālrunim ir mobilo datu savienojums, un mēģiniet vēlreiz."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Pārbaudiet, vai tālrunim ir mobilo datu savienojums, un mēģiniet vēlreiz."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Izslēdziet lidojuma režīmu un mēģiniet vēlreiz."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nav savienojuma."</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Jums netiks paziņots par jauniem balss pasta ziņojumiem. Ja ir izveidots Wi-Fi savienojums, varat pārbaudīt balss pastu, veicot sinhronizāciju tūlīt."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Jums netiks paziņots par jauniem balss pasta ziņojumiem. Ja ir izveidots Wi-Fi savienojums, varat pārbaudīt balss pastu, tagad veicot sinhronizāciju."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Jums netiks paziņots par jauniem balss pasta ziņojumiem. Lai sinhronizētu balss pastu, izslēdziet lidojuma režīmu."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Lai pārbaudītu balss pastu, tālrunim ir nepieciešams mobilo datu savienojums."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Lai pārbaudītu balss pastu, tālrunim ir nepieciešams mobilo datu savienojums."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nevar aktivizēt vizuālo balss pastu."</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nevar atjaunināt vizuālo balss pastu."</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Mēģiniet vēlreiz, kad būs stiprāks Wi-Fi vai mobilo datu savienojuma signāls. Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Mēģiniet vēlreiz, kad būs stiprāks mobilo datu savienojuma signāls. Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Mēģiniet vēlreiz, kad būs spēcīgāks Wi-Fi vai mobilo datu savienojuma signāls. Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Mēģiniet vēlreiz, kad būs spēcīgāks mobilo datu savienojuma signāls. Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nevar atjaunināt vizuālo balss pastu."</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Joprojām varat piezvanīt, lai pārbaudītu balss pastu."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nevar atjaunināt vizuālo balss pastu."</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Radās problēma"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Lūdzu, sazinieties ar klientu apkalpošanas dienestu, izmantojot tālāk norādīto tālruņa numuru, un nosauciet kļūdas kodu “9999”: <xliff:g id="NUMBER">%1$s</xliff:g>."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vizuālā balss pasta pakalpojumu sniegšanas noteikumi"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Lai izmantotu vizuālo balss pastu, jums ir jāpiekrīt Verizon Wireless pakalpojumu sniegšanas noteikumiem:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nJums ir jāpiekrīt Verizon Wireless pakalpojumu sniegšanas noteikumiem, lai izmantotu vizuālo balss pastu:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ieslēgt vizuālo balss pastu"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ja tiks noraidīti pakalpojumu sniegšanas noteikumi, vizuālais balss pasts tiks atspējots."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Atspējot vizuālo balss pastu"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ja tiks noraidīti pakalpojumu sniegšanas noteikumi, balss pasta transkripcija tiks atspējota."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Atspējot balss pasta transkripciju"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Balss pasts būs pieejams, tikai zvanot uz numuru *86. Lai turpinātu, iestatiet jaunu balss pasta PIN."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN iestatīšana"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-mk/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-mk/strings.xml
index 3ff8b87..6ad7e19 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-mk/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-mk/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Се активира визуелна говорна пошта"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Може да не добивате известувања за говорна пошта сѐ додека говорната пошта не се активира во целост. Дотогаш, повикувајте ја говорната пошта за преслушување на новите пораки."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Не може да се активира визуелна говорна пошта"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Проверете дали телефонот има мобилна врска и обидете се повторно."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Проверете дали телефонот е поврзан на мобилна мрежа и обидете се повторно."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Исклучете го авионскиот режим и обидете се повторно."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Нема мрежа"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Нема да добивате известувања за нова говорна пошта. Ако сте поврзани на Wi-Fi, може да ја проверите говорната пошта со синхронизирање сега."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Нема да добивате известувања за нови говорни пораки. Ако сте поврзани на Wi-Fi, може да ја проверите говорната пошта со синхронизирање сега."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Нема да добивате известувања за нова говорна пошта. Исклучете го авионскиот режим за синхронизирање на говорната пошта."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"За проверување говорна пошта, телефонот треба да се поврзе на интернет."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"За проверување говорна пошта, телефонот треба да се поврзе на мобилен интернет."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Не може да се активира визуелна говорна пошта"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Сѐ уште може да повикате за да ја проверите говорната пошта"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Не може да се ажурира визуелната говорна пошта"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Обидете се повторно кога Wi-Fi или мобилната врска ќе се подобрат. Сѐ уште може да повикате за да ја проверите говорната пошта."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Обидете се повторно кога ќе се подобри интернет-врската. Сѐ уште може да повикате за да ја проверите говорната пошта."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Обидете се повторно кога Wi-Fi или мобилниот интернет ќе се подобрат. Сѐ уште може да повикате за да ја проверите говорната пошта."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Обидете се повторно кога ќе се подобри мобилниот интернет. Сѐ уште може да повикате за да ја проверите говорната пошта."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Не може да се ажурира визуелната говорна пошта"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Сѐ уште може да повикате за да ја проверите говорната пошта."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Не може да се ажурира визуелната говорна пошта"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Нешто тргна наопаку"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Контактирајте со Грижа за корисници на <xliff:g id="NUMBER">%1$s</xliff:g> и кажете им дека кодот за грешка е 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Одредби и услови на визуелна говорна пошта"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Мора да ги прифатите Одредбите и условите на Verizon Wireless за да користите говорна пошта:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nМора да ги прифатите Одредбите и условите на Verizon Wireless за да користите визуелна говорна пошта:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Вклучи „Визуелна говорна пошта“"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ако ги одбиете Одредбите и условите, визуелната говорна пошта ќе се оневозможи."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Оневозможете визуелна говорна пошта"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ако ги одбиете Одредбите и условите, транскрипцијата на говорната пошта ќе се оневозможи."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Оневозможи транскрипција на говорна пошта"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Говорната пошта ќе биде достапна само со повикување *86. За да продолжите, поставете нов PIN на говорната пошта."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Поставете PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ml/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ml/strings.xml
index 84d221e..096b929 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ml/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ml/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"വിഷ്വൽ വോയ്‌സ്മെയിൽ സജീവമാക്കുന്നു"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ പൂർണ്ണമായും സജീവമാകുന്നത് വരെ നിങ്ങൾക്ക് വോയ്‌സ്‌മെയിൽ അറിയിപ്പുകൾ ലഭിക്കാനിടയില്ല. വോയ്‌സ്‌മെയിൽ പൂർണ്ണമായും സജീവമാകുന്നത് വരെ പുതിയ സന്ദേശങ്ങൾ വീണ്ടെടുക്കാൻ വോയ്‌സ്‌മെയിലിലേക്ക് വിളിക്കുക."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ സജീവമാക്കാനാവുന്നില്ല"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"നിങ്ങളുടെ ഫോണിന് സെല്ലുലാർ കണക്ഷനുണ്ടെന്ന് ഉറപ്പാക്കി, വീണ്ടും ശ്രമിക്കുക."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"നിങ്ങളുടെ ഫോണിന് മൊബൈൽ നെറ്റ്‌വർക്ക് കണക്ഷനുണ്ടെന്ന് ഉറപ്പാക്കിയശേഷം വീണ്ടും ശ്രമിക്കുക."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ഫ്ലൈറ്റ് മോഡ് ഓഫാക്കി, വീണ്ടും ശ്രമിക്കുക."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"കണക്ഷൻ ഇല്ല"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"പുതിയ വോയ്‌സ്‌മെയിലുകൾ വരുമ്പോൾ നിങ്ങളെ അറിയിക്കില്ല. നിങ്ങൾ Wi-Fi ഉപയോഗിക്കുകയാണെങ്കിൽ, ഇപ്പോൾ സമന്വയിപ്പിക്കുന്നതിലൂടെ വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാനാവും."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"പുതിയ വോയ്‌സ്‌മെയിലുകൾ വരുമ്പോൾ നിങ്ങളെ അറിയിക്കില്ല. നിങ്ങൾ വൈഫൈ ഉപയോഗിക്കുകയാണെങ്കിൽ, ഇപ്പോൾ സമന്വയിപ്പിക്കുന്നതിലൂടെ വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാനാവും."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"പുതിയ വോയ്‌സ്‌മെയിലുകൾ വരുമ്പോൾ നിങ്ങളെ അറിയിക്കില്ല. വോയ്‌സ്‌മെയിൽ സമന്വയിപ്പിക്കാൻ ഫ്ലൈറ്റ് മോഡ് ഓഫാക്കുക."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ നിങ്ങളുടെ ഫോണിന് ഒരു സെല്ലുലാർ ഡാറ്റ കണക്ഷൻ ആവശ്യമാണ്."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ നിങ്ങളുടെ ഫോണിന് ഒരു മൊബൈൽ ഡാറ്റ കണക്ഷൻ ആവശ്യമാണ്."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ സജീവമാക്കാനാവുന്നില്ല"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ അപ്‌ഡേറ്റുചെയ്യാനാകുന്നില്ല"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"നിങ്ങൾക്ക് മെച്ചപ്പെട്ട Wi-Fi അല്ലെങ്കിൽ സെല്ലുലാർ കണക്ഷൻ ലഭിക്കുമ്പോൾ, വീണ്ടും ശ്രമിക്കുക. വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"നിങ്ങൾക്ക് മെച്ചപ്പെട്ട സെല്ലുലാർ ഡാറ്റ കണക്ഷൻ ലഭിക്കുമ്പോൾ വീണ്ടും ശ്രമിക്കുക. വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"നിങ്ങൾക്ക് മെച്ചപ്പെട്ട വൈഫൈ അല്ലെങ്കിൽ മൊബൈൽ ഡാറ്റ കണക്ഷൻ ലഭിക്കുമ്പോൾ, വീണ്ടും ശ്രമിക്കുക. വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"നിങ്ങൾക്ക് മെച്ചപ്പെട്ട മൊബൈൽ ഡാറ്റ കണക്ഷൻ ലഭിക്കുമ്പോൾ വീണ്ടും ശ്രമിക്കുക. വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ അപ്‌ഡേറ്റുചെയ്യാനാകുന്നില്ല"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"വോയ്‌സ്‌മെയിൽ പരിശോധിക്കാൻ തുടർന്നും നിങ്ങൾക്ക് കോൾ ചെയ്യാനാവും."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ അപ്‌ഡേറ്റുചെയ്യാനാകുന്നില്ല"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"എന്തോ കുഴപ്പം സംഭവിച്ചു"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"<xliff:g id="NUMBER">%1$s</xliff:g>-ൽ ഉപയോക്തൃ സേവനവുമായി ബന്ധപ്പെട്ട്, പിശക് കോഡ് 9999 ആണെന്ന് പറയുക."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"വിഷ്വൽ വോയ്‌സ് മെയിൽ നിബന്ധനകളും വ്യവസ്ഥകളും"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"വിഷ്വൽ വോയ്‌സ് മെയിൽ ഉപയോഗിക്കാൻ, നിങ്ങൾ Verizon Wireless-ന്റെ നിബന്ധനകളും വ്യവസ്ഥകളും അംഗീകരിക്കേണ്ടതുണ്ട്:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nവിഷ്വൽ വോയ്‌സ്‌മെയിൽ ഉപയോഗിക്കുന്നതിന് നിങ്ങൾ Verizon Wireless-ന്റെ നിബന്ധനകളും വ്യവസ്ഥകളും അംഗീകരിക്കേണ്ടതുണ്ട്:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"വിഷ്വൽ വോയ്‌സ്‌മെയിൽ ഓണാക്കുക"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"നിബന്ധനകളും വ്യവസ്ഥകളും നിരസിക്കപ്പെട്ടാൽ വിഷ്വൽ വോയ്‌സ്‌ മെയിൽ പ്രവർത്തനരഹിതമാവും."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"വിഷ്വൽ വോയ്‌സ്‌‌മെയിൽ പ്രവർത്തനരഹിതമാക്കുക"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"നിബന്ധനകളും വ്യവസ്ഥകളും നിരസിക്കപ്പെടുകയാണെങ്കിൽ വിഷ്വൽ വോയ്‌സ്‌മെയിൽ ട്രാൻസ്‌ക്രിപ്‌ഷൻ പ്രവർത്തനരഹിതമാക്കും."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"വോയ്‌സ്‌മെയിൽ ട്രാൻസ്‌ക്രിപ്‌ഷൻ പ്രവർത്തനരഹിതമാക്കുക"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*86-ൽ വിളിച്ച്‌ മാത്രമേ വോയ്‌സ്‌മെയിൽ ആക്‌സസ്‌ ചെയ്യാനാവൂ. തുടരാൻ, പുതിയൊരു വോയ്‌സ്‌മെയിൽ പിൻ‌ നമ്പർ‌ സജ്ജമാക്കുക."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"പിൻ സജ്ജമാക്കുക"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-mn/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-mn/strings.xml
index 99fc29d..5d0edbb 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-mn/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-mn/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Уншиж болох дуут шууданг идэвхжүүлж байна"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Уншиж болох дуут шууданг бүрэн идэвхжүүлэхээс өмнө танд дуут шуудангийн мэдэгдэл ирэхгүй байж магадгүй. Дуут шууданг бүрэн идэвхжих хүртэл шинэ зурвас авахын тулд дуут шуудан руу залгана уу."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Уншиж болох дуут шууданг идэвхжүүлэх боломжгүй"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Утасны үүрэн холболт байгаа эсэхийг шалгаад дахин оролдоно уу."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Утасны мобайл холболт байгаа эсэхийг шалгаад дахин оролдоно уу."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Нислэгийн горимыг идэвхгүй болгоод дахин оролдоно уу."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Холболт байхгүй"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Шинэ дуут шуудангийн талаар танд мэдэгдэхгүй. Хэрэв та Wi-Fi дээр байвал одоо синк хийж дуут шуудангаа шалгана уу."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Шинэ дуут шуудангийн талаар танд мэдэгдэхгүй. Хэрэв та Wi-Fi-тай холбогдсон бол одоо синк хийж дуут шуудангаа шалгана уу."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Шинэ дуут шуудангийн талаар танд мэдэгдэхгүй. Дуут шуудангаа синк хийхийн тулд нислэгийн горимыг идэвхгүй болгоно уу."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Дуут шууданг шалгахын тулд таны утсанд үүрэн датаны холболт шаардлагатай."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Дуут шууданг шалгахын тулд таны утсанд мобайл датаны холболт шаардлагатай."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Уншиж болох дуут шууданг идэвхжүүлэх боломжгүй"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Та дуут шууданг дуудлага хийж сонсох боломжтой хэвээр байна."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Уншиж болох дуут шууданг шинэчлэх боломжгүй"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Та Wi-Fi дээр байх буюу үүрэн холболт илүү сайн үед дахин оролдоно уу. Та дуудлага хийж дуут шуудангаа сонсох боломжтой хэвээр байна."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Таны үүрэн датаны холболт илүү сайн үед дахин оролдоно уу. Та дуудлага хийж дуут шуудангаа сонсох боломжтой хэвээр байна."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Та Wi-Fi эсвэл мобайл холболт илүү сайн үед дахин оролдоно уу. Та дуудлага хийж дуут шуудангаа сонсох боломжтой хэвээр байна."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Таны мобайл датаны холболт илүү сайн үед дахин оролдоно уу. Та дуудлага хийж дуут шуудангаа сонсох боломжтой хэвээр байна."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Уншиж болох дуут шууданг шинэчлэх боломжгүй"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Та дуудлага хийж дуут шуудангаа сонсох боломжтой хэвээр байна."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Уншиж болох дуут шууданг шинэчлэх боломжгүй"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ямар нэг алдаа гарлаа"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Хэрэглэгчийн үйлчилгээ <xliff:g id="NUMBER">%1$s</xliff:g> руу залгаж алдааны код 9999 гэж хэлнэ үү."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Уншиж болохуйц дуут шуудангийн нөхцөл"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Та уншиж болох дуут шууданг ашиглахын тулд Verizon Wireless-н нөхцөлийг зөвшөөрөх шаардлагатай:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nТа уншиж болох дуут шууданг ашиглахын тулд Verizon Wireless-н нөхцөлийг зөвшөөрөх шаардлагатай:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Уншиж болох дуут шууданг идэвхжүүлэх"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Нөхцөлийг зөвшөөрөхгүй бол уншиж болохуйц дуут шууданг идэвхгүй болгоно."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Уншиж болохуйц дуут шууданг идэвхгүй болгох"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Нөхцөлийг зөвшөөрөхгүй бол дуут шуудан сийрүүлэхийг идэвхгүй болгоно."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Дуут шуудан сийрүүлэхийг идэвхгүй болгох"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Дуут шууданд зөвхөн *86 руу залгаж хандах боломжтой. Үргэлжлүүлэхийн тулд шинэ дуут шуудангийн PIN тохируулна уу."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN тохируулах"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-mr/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-mr/strings.xml
index 43c8bdd..b5c39e9 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-mr/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-mr/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"दृश्‍यमान व्हॉइसमेल सक्रिय करीत आहे"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"व्हिज्युअल व्हॉइसमेल पूर्णपणे सक्रिय होईपर्यंत आपल्याला व्हॉइसमेल सूचना प्राप्त होऊ शकत नाहीत. व्हॉइसमेल पूर्णपणे सक्रिय होईपर्यंत नवीन संदेश पुनर्प्राप्त करण्यासाठी व्हॉइसमेल बोलवा."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"दृश्‍यमान व्हॉइसमेल सक्रिय करू शकत नाही"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"आपल्‍या फोनवर सेल्युलर कनेक्‍शन असल्याची खात्री करा आणि पुन्हा प्रयत्न करा."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"आपल्या फोनमध्‍ये मोबाइल नेटवर्क कनेक्शन आहे याची खात्री करा आणि पुन्हा प्रयत्न करा."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"विमान मोड बंद करा आणि पुन्हा प्रयत्न करा."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"कोणतेही कनेक्शन नाही"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"आपल्याला नवीन व्हॉइसमेलसाठी सूचित केले जाणार नाही. आपण वाय-फाय वर असल्यास आपण आता संकालित करून व्हॉइसमेलसाठी तपासू शकता."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"आपल्याला नवीन व्हॉइसमेलसाठी सूचित केले जाणार नाही. आपण वाय-फाय वर असल्यास, आपण आता संकालित करून व्हॉइसमेल तपासू शकता."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"आपल्याला नवीन व्हॉइसमेलसाठी सूचित केले जाणार नाही. आपला व्हॉइसमेल संकालित करण्यासाठी विमान मोड बंद करा."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"व्हॉइसमेल तपासण्यासाठी आपल्या फोनला सेल्युलर डेटा कनेक्शनची आवश्यकता आहे."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"व्हॉइसमेल तपासण्यासाठी आपल्या फोनसाठी मोबाइल डेटा कनेक्शनची आवश्यकता आहे."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"दृश्‍यमान व्हॉइसमेल सक्रिय करू शकत नाही"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"आपण व्हॉइसमेल तपासण्यासाठी अद्याप कॉल करू शकता."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"दृश्यमान व्हॉइसमेल अद्यतनित करू शकत नाही"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"आपले वाय-फाय किंवा सेल्युलर कनेक्शन चांगले असताना पुन्हा प्रयत्न करा. आपण अद्याप व्हॉइसमेल तपासण्यासाठी कॉल करू शकता."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"आपले सेल्युलर डेटा कनेक्शन चांगले असताना पुन्हा प्रयत्न करा. आपण अद्याप व्हॉइसमेल तपासण्यासाठी कॉल करू शकता."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"आपले वाय‑फाय किंवा मोबाइल डेटा कनेक्शन चांगले असताना पुन्हा प्रयत्न करा. आपण व्हॉइसमेल तपासण्‍यासाठी अद्याप कॉल करू शकता."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"आपले मोबाइल डेटा कनेक्शन चांगले असताना पुन्हा प्रयत्न करा. आपण  व्हॉइसमेल तपासण्यासाठी अद्याप कॉल करू शकता."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"दृश्यमान व्हॉइसमेल अद्यतनित करू शकत नाही"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"आपण व्हॉइसमेल तपासण्यासाठी अद्याप कॉल करू शकता."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"दृश्यमान व्हॉइसमेल अद्यतनित करू शकत नाही"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"काहीतरी चूक झाली."</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"ग्राहक सेवा संपर्काशी <xliff:g id="NUMBER">%1$s</xliff:g> येथे संपर्क साधाा आणि त्यांना त्रुटी कोड 9999 सांगा."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"व्हिज्युअल व्हॉइसमेल अटी आणि नियम"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"आपण व्हिज्युअल व्हॉइसमेल वापरण्यासाठी Verizon वायरलेसच्या अटी आणि नियम स्वीकारणे आवश्यक आहे: \n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nव्हिज्युअल व्हॉइसेमल वापरण्‍यासाठी आपण Verizon Wireless च्या अटी आणि नियम स्वीकारणे  आवश्‍यक आहे:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"व्हिज्युअल व्हॉइसमेल चालू करा"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"अटी आणि नियम नाकारल्या गेल्यास व्हिज्युअल व्हॉइसमेल अक्षम केले जाईल."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"व्हिज्युअल व्हॉइसमेल अक्षम करा"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"अटी आणि नियम नाकारल्यास व्हॉइसमेल प्रतिलेखन अक्षम केले जाईल."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"व्हॉइसमेल प्रतिलेखन अक्षम करा"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"व्हॉइसमेल केवळ *86 वर कॉल करून प्रवेश करण्यायोग्य असेल. सुरू ठेवण्यासाठी नवीन व्हॉइसमेल पिन सेट करा."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"पिन सेट करा"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ms/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ms/strings.xml
index c8b70d5..210e478 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ms/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ms/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Mengaktifkan mel suara visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Anda mungkin tidak menerima pemberitahuan mel suara sehingga mel suara visual diaktifkan sepenuhnya. Panggil mel suara untuk mengambil mesej baharu sehingga mel suara diaktifkan sepenuhnya."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Tidak dapat mengaktifkan mel suara visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Pastikan telefon anda mempunyai sambungan selular, kemudian cuba lagi."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Pastikan telefon anda mempunyai sambungan rangkaian mudah alih, kemudian cuba lagi."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Matikan mod pesawat, kemudian cuba lagi."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Tiada sambungan"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Anda tidak akan dimaklumkan tentang mel suara baharu. Jika anda menggunakan Wi-Fi, anda boleh menyemak mel suara dengan menyegerak sekarang."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Anda tidak akan dimaklumi tentang mel suara baharu. Jika anda menggunakan Wi-Fi, anda boleh menyemak mel suara dengan menyegerak sekarang."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Anda tidak akan diberitahu tentang mel suara baharu. Matikan mod pesawat untuk menyegerakkan mel suara anda."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefon anda memerlukan sambungan data selular untuk menyemak mel suara."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefon anda memerlukan sambungan data mudah alih untuk menyemak mel suara."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Tidak dapat mengaktifkan mel suara visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Tidak dapat mengemas kini mel suara visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Cuba lagi apabila sambungan Wi-Fi atau selular anda lebih bagus. Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Cuba lagi apabila sambungan data selular anda lebih bagus. Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Cuba lagi apabila sambungan Wi-Fi atau data mudah alih anda lebih bagus. Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Cuba lagi apabila sambungan data mudah alih anda lebih bagus. Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Tidak dapat mengemas kini mel suara visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Anda masih dapat membuat panggilan untuk menyemak mel suara."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Tidak dapat mengemas kini mel suara visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Berlaku Kesilapan"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Sila hubungi Khidmat Pelanggan melalui <xliff:g id="NUMBER">%1$s</xliff:g> dan beritahu mereka kod ralatnya ialah 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Terma dan Syarat Mel Suara Visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Anda mesti menerima terma dan syarat Verizon Wireless untuk menggunakan mel suara visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nAnda mesti menerima terma dan syarat Verizon Wireless untuk menggunakan mel suara:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Hidupkan Mel Suara Visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Mel suara visual akan dilumpuhkan jika terma dan syarat ditolak."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Lumpuhkan mel suara visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripsi mel suara akan dilumpuhkan jika terma dan syarat ditolak."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Lumpuhkan transkripsi mel suara"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Mel suara hanya dapat diakses dengan memanggil *86. Tetapkan PIN mel suara baharu untuk meneruskan."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Tetapkan PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-my/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-my/strings.xml
index 686d37d..7f10cb2 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-my/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-my/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"မြင်နိုင်သောအသံမေးလ်ကို ဖွင့်နေသည်"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"မြင်ရသောအသံမေးလ်ကို အပြည့်အဝစမဖွင့်သရွေ့ အသံမေးလ်အကြောင်းကြားချက်များကို လက်ခံရရှိနိုင်မည်မဟုတ်ပါ။ အသံမေးလ်ကို အပြည့်အဝစဖွင့်မပြီးမချင်း မက်ဆေ့ဂျ်အသစ်များရယူရန် အသံမေးလ်ခေါ်ဆိုပါ။"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"မြင်ရသောအသံမေးလ်ကို ဖွင့်၍မရပါ"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"သင့်ဖုန်းတွင် ဆယ်လူလာချိတ်ဆက်မှုရှိကြောင်း စစ်ဆေး၍ ထပ်စမ်းကြည့်ပါ။"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"သင့်ဖုန်းတွင် မိုဘိုင်းကွန်ရက် ချိတ်ဆက်မှုရှိကြောင်း စစ်ဆေး၍ ထပ်စမ်းကြည့်ပါ။"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"လေယာဉ်ပျံမုဒ်ပိတ်၍ ထပ်စမ်းကြည့်ပါ။"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ချိတ်ဆက်မှုမရှိပါ"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"အသံမေးလ်အသစ်များအတွက် သင့်ကို အကြောင်းကြားလိမ့်မည်မဟုတ်ပါ။ Wi-Fi သုံးနေပါက ယခုပင် ပြိုင်တူညှိခြင်းဖြင့် အသံမေးလ်ကို စစ်ဆေးနိုင်ပါသည်။"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"အသံမေးလ်အသစ်များအတွက် သင့်ကို အကြောင်းကြားလိမ့်မည်မဟုတ်ပါ။ Wi-Fi သုံးနေပါက ယခုပင် စင့်ခ်လုပ်ခြင်းဖြင့် အသံမေးလ်ကို စစ်ဆေးနိုင်ပါသည်။"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"အသံမေးလ်အသစ်များအတွက် သင့်ကို အကြောင်းကြားလိမ့်မည်မဟုတ်ပါ။ သင့်အသံမေးလ်ပြိုင်တူညှိရန် လေယာဉ်ပျံမုဒ်ပိတ်ပါ။"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"အသံမေးလ်စစ်ရန်အတွက် သင့်ဖုန်းတွင် ဆယ်လူလာဒေတာချိတ်ဆက်မှုတစ်ခု လိုပါသည်။"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"အသံမေးလ်စစ်ရန်အတွက် သင့်ဖုန်းတွင် မိုဘိုင်းဒေတာချိတ်ဆက်မှုတစ်ခု လိုပါသည်။"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"မြင်ရသောအသံမေးလ် ဖွင့်၍မရပါ"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"မြင်ရသောအသံမေးလ်ကို အပ်ဒိတ်လုပ်၍မရပါ"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"သင်၏ Wi-Fi (သို့) ဆယ်လူလာချိတ်ဆက်မှု လိုင်းပိုကောင်းမှ ထပ်စမ်းကြည့်ပါ။ အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"သင်၏ဆယ်လူလာချိတ်ဆက်မှု လိုင်းပိုကောင်းမှ ထပ်စမ်းကြည့်ပါ။ အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"သင်၏ Wi-Fi (သို့) မိုဘိုင်းဒေတာချိတ်ဆက်မှု လိုင်းပိုကောင်းမှ ထပ်စမ်းကြည့်ပါ။ အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"သင်၏ မိုဘိုင်းဒေတာ ချိတ်ဆက်မှု လိုင်းပိုကောင်းမှ ထပ်စမ်းကြည့်ပါ။ အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"မြင်ရသောအသံမေးလ်ကို အပ်ဒိတ်လုပ်၍မရပါ"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"အသံမေးလ်စစ်ရန်အတွက် ဖုန်းခေါ်နိုင်ပါသေးသည်။"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"မြင်ရသောအသံမေးလ်ကို အပ်ဒိတ်လုပ်၍မရပါ"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"တစ်စုံတစ်ခု လွဲချော်နေပါသည်"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"သုံးစွဲသူဝန်ဆောင်ရေးကို <xliff:g id="NUMBER">%1$s</xliff:g> တွင် ဆက်သွယ်ပြီး အမှားအယွင်းကုဒ်သည် ၉၉၉၉ ဖြစ်ကြောင်း ပြောပါ။"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"မြင်နိုင်သောအသံမေးလ် ဝန်ဆောင်မှုဆိုင်ရာစည်းမျဉ်းများ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"သင်သည် မြင်နိုင်သောအသံမေးလ်ကို အသုံးပြုရန် Verizon Wireless ၏ ဝန်ဆောင်မှုဆိုင်ရာစည်းမျဉ်းများကို လက်ခံရပါမည် - \n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nစာသားမှတ်တမ်းပါ အသံမေးလ်ကို အသုံးပြုရန် Verizon ကြိုးမဲ့စနစ်၏ ဝန်ဆောင်မှုဆိုင်ရာစည်းမျဉ်းများကို လက်ခံရပါမည် - \n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"စာသားမှတ်တမ်းပါ အသံမေးလ်ဖွင့်ခြင်း"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"ဝန်ဆောင်မှုဆိုင်ရာစည်းမျဉ်းများကို ငြင်းပယ်ပါက မြင်နိုင်သောအသံမေးလ်ကို ပိတ်ပစ်ပါလိမ့်မည်။"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"မြင်နိုင်သောအသံမေးလ် ပိတ်ပါ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"ဝန်ဆောင်မှုဆိုင်ရာစည်းမျဉ်းများကို ငြင်းပယ်ပါက အသံမေးလ် စာသားမှတ်တမ်းများကို ပိတ်ပစ်ပါလိမ့်မည်။"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"အသံမေးလ် စာသားမှတ်တမ်းကို ပိတ်ရန်"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*၈၆ သို့ ခေါ်ဆိုခြင်းဖြင့်သာ အသံမေးလ်ကို ဝင်သုံးနိုင်ပါမည်။ ဆက်သွားရန် အသံမေးလ်ပင်နံပါတ်အသစ်ကို သတ်မှတ်ပါ။"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"ပင်နံပါတ်ကို သတ်မှတ်ပါ"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-nb/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-nb/strings.xml
index 6fc7561..9e64ee7 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-nb/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-nb/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Slår på visuell talepostkasse"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Det er ikke sikert at du kan motta talepostvarsler før visuell talepost er fullt aktivert. Ring talepost for å hente nye meldinger før aktiveringen er fullført."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Kan ikke slå på visuell talepost"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Sjekk at telefonen din har mobilforbindelse og prøv igjen."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Sjekk at telefonen din har mobilforbindelse, og prøv på nytt."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Slå av flymodus og prøv igjen."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ingen tilkobling"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Du blir ikke varslet om nye talemeldinger. Hvis du er på Wi-Fi, kan du sjekke taleposten ved å synkronisere nå."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Du blir ikke varslet om nye talemeldinger. Hvis du er på Wi-Fi, kan du sjekke taleposten ved å synkronisere nå."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Du blir ikke varslet om nye talemeldinger. Slå av flymodus for å synkronisere talepost."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefonen din trenger mobildatatilkobling for å kunne sjekke talepost."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefonen må ha mobildataforbindelse for at du skal kunne sjekke talepost."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Kan ikke slå på visuell talepost"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Kan ikke oppdatere visuell talepost"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Prøv igjen når Wi-Fi- eller mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Prøv igjen når mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Prøv på nytt når Wi‑Fi- eller mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Prøv igjen når mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Kan ikke oppdatere visuell talepost"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Kan ikke oppdatere visuell talepost"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Noe gikk galt"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontakt kundeservice på <xliff:g id="NUMBER">%1$s</xliff:g> og referer til feilkode 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vilkår for visuell talepost"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Du må godta vilkårene til Verizon Wireless før du kan ta i bruk visuell talepost:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDu må godta Verizon Wireless sine vilkår for å kunne bruke visuell talepost:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Slå på visuell talepost"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuell talepost blir slått av hvis vilkårene ikke godtas."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Slå av visuell talepost"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripsjon av talepost blir slått av hvis vilkårene blir avvist."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Slå av transkripsjon av talepost"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Talemeldinger er bare tilgjengelig ved å ringe *86. Angi en ny PIN-kode for å fortsette."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Angi PIN-kode"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ne/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ne/strings.xml
index ff06fa0..08741f2 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ne/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ne/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"भिजुअल भ्वाइसमेललाई सक्रिय पार्दै"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"भिजुअल भ्वाइसमेल पूर्णतया सक्रिय नभएसम्म तपाईँलाई भ्वाइसमेलका सूचनाहरू प्राप्त नहुन सक्छन्। भ्वाइसमेल पूर्णतया सक्रिय नहुन्जेल नयाँ सन्देशहरू प्राप्त गर्न भ्वाइसमेल सेवामा कल गर्नुहोस्।"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"भिजुअल भ्वाइस मेललाई सक्रिय पार्न सकिँदैन"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"आफ्नो फोन सेलुलरमा जडान भएको छ भन्ने निश्चित गर्नुहोस् र फेरि प्रयास गर्नुहोस्।"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"आफ्नो फोन मोबाइल नेटवर्कमा जडान भएको छ भन्ने निश्चित गर्नुहोस् र फेरि प्रयास गर्नुहोस्।"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"हवाइजहाज मोड बन्द गर्नुहोस् र फेरि प्रयास गर्नुहोस्।"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"जडान छैन"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"तपाईंलाई नयाँ भ्वाइस मेल सम्बन्धी सूचना दिइने छैन। तपाईं Wi-Fi चलाउँदै हुनुहुन्छ भने, अब सिङ्क गरी भ्वाइस मेल जाँच गर्न सक्नुहुन्छ।"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"तपाईंलाई नयाँ भ्वाइस मेल सम्बन्धी सूचना दिइने छैन। तपाईं Wi-Fi चलाउँदै हुनुहुन्छ भने, अब सिङ्क गरी भ्वाइस मेल जाँच गर्न सक्नुहुन्छ।"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"तपाईंलाई नयाँ भ्वाइस मेल सम्बन्धी सूचना दिइने छैन। आफ्नो भ्वाइस मेल सिङ्क गर्न हवाइजहाज मोड बन्द गर्नुहोस्।"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"भ्वाइस मेल जाँच गर्न तपाईंको फोन सेलुलर डेटामा जडान हुनु आवश्यक हुन्छ।"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"भ्वाइस मेल जाँच गर्न तपाईंको फोन मोबाइल डेटामा जडान हुनु आवश्यक हुन्छ।"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"भिजुअल भ्वाइस मेललाई सक्रिय गर्न सकिँदैन"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"तपाईं अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"भिजुअल भ्वाइस मेल अद्यावधिक गर्न सकिँदैन"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"तपाईंको Wi-Fi वा सेलुलर जडान राम्रो भएका बेला पुन: प्रयास गर्नुहोस्। तपाईं अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"तपाईंको Wi-Fi वा सेलुलर जडान अझ राम्रो भएका बेला पुन: प्रयास गर्नुहोस्। तपाईं अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"तपाईंको Wi-Fi वा मोबाइल जडान राम्रो भएका बेला पुन: प्रयास गर्नुहोस्। तपाईंले अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"तपाईंको मोबाइल डेटा जडान अझ राम्रो भएका बेला पुन: प्रयास गर्नुहोस्। तपाईंले अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"भिजुअल भ्वाइस मेल अद्यावधिक गर्न सकिँदैन"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"तपाईं अझै पनि भ्वाइस मेल जाँच गर्न कल गर्न सक्नुहुन्छ।"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"भिजुअल भ्वाइस मेल अद्यावधिक गर्न सकिँदैन"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"केही गडबड भयो"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"कृपया <xliff:g id="NUMBER">%1$s</xliff:g> मा ग्राहक सेवामा सम्पर्क गर्नुहोस् र तिनीहरूलाई त्रुटिको कोड ९९९९ हो भनी बताउनुहोस्।"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"भिजुअल भ्वाइस मेल सम्बन्धी सेवाका सर्तहरू"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"भिजुअल भ्वाइस मेल प्रयोग गर्नका लागि तपाईंले अनिवार्य रूपले Verizon Wireless का सेवाका सर्तहरू स्वीकार गर्नुपर्छ:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\n भिजुअल भ्वाइस मेल प्रयोग गर्नका लागि तपाईंले अनिवार्य रूपले Verizon Wireless का सेवाका सर्तहरू स्वीकार गर्नुपर्छ:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"भिजुअल भ्वाइस मेल सक्रिय गर्नुहोस्"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"सेवाका सर्तहरू अस्वीकार गरिएमा भिजुअल भ्वाइस मेल असक्षम पारिने छ।"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"भिजुअल भ्वाइस मेल असक्षम पार्नुहोस्"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"सेवाका सर्तहरू अस्वीकार गरिएमा भिजुअल ट्रान्स्क्रिप्सनलाई असक्षम पारिने छ।"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"भ्वाइस मेल ट्रान्स्क्रिप्सन असक्षम पार्नुहोस्"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*८६ मा कल गरेर मात्र भ्वाइस मेलमाथि पहुँच राख्न सकिने छ। अघि बढ्न भ्वाइस मेलको नयाँ PIN सेट गर्नुहोस्।"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN सेट गर्नुहोस्"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-nl/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-nl/strings.xml
index f74a37d..a5e7d54 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-nl/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-nl/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Visuele voicemail activeren"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Je ontvangt mogelijk geen voicemailmeldingen totdat visuele voicemail volledig is geactiveerd. Bel je voicemail om nieuwe berichten op te halen totdat visuele voicemail volledig is geactiveerd."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Kan visuele voicemail niet activeren"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Zorg dat je telefoon een mobiele verbinding heeft en probeer het opnieuw."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Zorg dat je telefoon een mobiele netwerkverbinding heeft en probeer het opnieuw."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Schakel de vliegtuigmodus uit en probeer het opnieuw."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Geen verbinding"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Je ontvangt geen meldingen voor nieuwe voicemails. Als je wifi gebruikt, kun je je voicemail controleren door nu te synchroniseren."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Je ontvangt geen meldingen voor nieuwe voicemails. Als je wifi gebruikt, kun je je voicemail controleren door nu te synchroniseren."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Je ontvangt geen meldingen voor nieuwe voicemails. Schakel de vliegtuigmodus uit om je voicemail te synchroniseren."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Je telefoon heeft een mobiele dataverbinding nodig om je voicemail te controleren."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Je telefoon heeft een mobiele dataverbinding nodig om je voicemail te controleren."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Kan visuele voicemail niet activeren"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Je kunt nog steeds bellen om je voicemail te controleren."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Kan visuele voicemail niet updaten"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Probeer het opnieuw als er een betere wifi- of mobiele verbinding beschikbaar is. Je kunt nog steeds bellen om je voicemail controleren."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Probeer het opnieuw wanneer er een betere mobiele dataverbinding beschikbaar is. Je kunt nog steeds bellen om je voicemail te controleren."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Probeer het opnieuw als er een betere wifi- of mobiele dataverbinding beschikbaar is. Je kunt nog steeds bellen om je voicemail te controleren."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Probeer het opnieuw wanneer er een betere mobiele dataverbinding beschikbaar is. Je kunt nog steeds bellen om je voicemail te controleren."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Kan visuele voicemail niet updaten"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Je kunt nog steeds bellen om je voicemail te controleren."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Kan visuele voicemail niet updaten"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Er is iets misgegaan"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Neem via <xliff:g id="NUMBER">%1$s</xliff:g> contact op met de klantenservice en geef de foutcode 9999 door."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Algemene voorwaarden voor visuele voicemail"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Je moet de Algemene voorwaarden van Verizon accepteren om visuele voicemail te gebruiken:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nJe moet de Algemene voorwaarden van Verizon Wireless accepteren om visuele voicemail te kunnen gebruiken:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Visuele voicemail inschakelen"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuele voicemail wordt uitgeschakeld als de Algemene voorwaarden worden geweigerd."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Visuele voicemail uitschakelen"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Voicemail-transcriptie wordt uitgeschakeld als de Algemene voorwaarden worden geweigerd."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Voicemail-transcriptie uitschakelen"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Voicemail is alleen toegankelijk door *86 te bellen. Stel een nieuwe pincode voor de voicemail in om door te gaan."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Pincode instellen"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-no/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-no/strings.xml
index 6fc7561..9e64ee7 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-no/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-no/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Slår på visuell talepostkasse"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Det er ikke sikert at du kan motta talepostvarsler før visuell talepost er fullt aktivert. Ring talepost for å hente nye meldinger før aktiveringen er fullført."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Kan ikke slå på visuell talepost"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Sjekk at telefonen din har mobilforbindelse og prøv igjen."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Sjekk at telefonen din har mobilforbindelse, og prøv på nytt."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Slå av flymodus og prøv igjen."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ingen tilkobling"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Du blir ikke varslet om nye talemeldinger. Hvis du er på Wi-Fi, kan du sjekke taleposten ved å synkronisere nå."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Du blir ikke varslet om nye talemeldinger. Hvis du er på Wi-Fi, kan du sjekke taleposten ved å synkronisere nå."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Du blir ikke varslet om nye talemeldinger. Slå av flymodus for å synkronisere talepost."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefonen din trenger mobildatatilkobling for å kunne sjekke talepost."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefonen må ha mobildataforbindelse for at du skal kunne sjekke talepost."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Kan ikke slå på visuell talepost"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Kan ikke oppdatere visuell talepost"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Prøv igjen når Wi-Fi- eller mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Prøv igjen når mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Prøv på nytt når Wi‑Fi- eller mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Prøv igjen når mobildatadekningen er bedre. Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Kan ikke oppdatere visuell talepost"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Du kan fortsatt ringe for å sjekke talepost."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Kan ikke oppdatere visuell talepost"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Noe gikk galt"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontakt kundeservice på <xliff:g id="NUMBER">%1$s</xliff:g> og referer til feilkode 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vilkår for visuell talepost"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Du må godta vilkårene til Verizon Wireless før du kan ta i bruk visuell talepost:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDu må godta Verizon Wireless sine vilkår for å kunne bruke visuell talepost:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Slå på visuell talepost"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuell talepost blir slått av hvis vilkårene ikke godtas."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Slå av visuell talepost"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkripsjon av talepost blir slått av hvis vilkårene blir avvist."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Slå av transkripsjon av talepost"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Talemeldinger er bare tilgjengelig ved å ringe *86. Angi en ny PIN-kode for å fortsette."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Angi PIN-kode"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-pa/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-pa/strings.xml
index 2a07b45..93302b0 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-pa/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-pa/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਕਿਰਿਆਸ਼ੀਲ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"ਜਦੋਂ ਤੱਕ ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਪੂਰੀ ਤਰ੍ਹਾਂ ਕਿਰਿਆਸ਼ੀਲ ਨਹੀਂ ਹੋ ਜਾਂਦੀ, ਹੋ ਸਕਦਾ ਹੈ ਕਿ ਤੁਹਾਨੂੰ ਵੌਇਸਮੇਲ ਸੂਚਨਾਵਾਂ ਪ੍ਰਾਪਤ ਨਾ ਹੋਣ। ਵੌਇਸਮੇਲ ਦੇ ਪੂਰੀ ਤਰ੍ਹਾਂ ਕਿਰਿਆਸ਼ੀਲ ਹੋਣ ਤੱਕ ਨਵੇਂ ਸੁਨੇਹੇ ਪ੍ਰਾਪਤ ਕਰਨ ਲਈ ਵੌਇਸਮੇਲ ਨੂੰ ਕਾਲ ਕਰੋ।"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਕਿਰਿਆਸ਼ੀਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਹਾਡੇ ਫ਼ੋਨ ਵਿੱਚ ਸੈਲਿਊਲਰ ਕਨੈਕਸ਼ਨ ਹੈ ਅਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ਯਕੀਨੀ ਬਣਾਓ ਕਿ ਤੁਹਾਡੇ ਫ਼ੋਨ \'ਤੇ ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਕਨੈਕਸ਼ਨ ਹੈ ਅਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ਹਵਾਈ ਜਹਾਜ਼ ਮੋਡ ਬੰਦ ਕਰੋ ਅਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ।"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ਕੋਈ ਕਨੈਕਸ਼ਨ ਨਹੀਂ"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ਤੁਹਾਨੂੰ ਨਵੀਆਂ ਵੌਇਸਮੇਲਾਂ ਲਈ ਸੂਚਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਜੇਕਰ ਤੁਸੀਂ Wi-Fi \'ਤੇ ਹੋ, ਤਾਂ ਹੁਣੇ ਸਮਕਾਲੀਕਰਨ ਕਰਨ ਦੁਆਰਾ ਵੌਇਸਮੇਲਾਂ ਦੀ ਜਾਂਚ ਕਰ ਸਕਦੇ ਹੋ।"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ਤੁਹਾਨੂੰ ਨਵੀਆਂ ਵੌਇਸਮੇਲਾਂ ਲਈ ਸੂਚਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਜੇਕਰ ਤੁਸੀਂ Wi-Fi \'ਤੇ ਹੋ, ਤਾਂ ਹੁਣੇ ਸਮਕਾਲੀਕਰਨ ਕਰਕੇ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰ ਸਕਦੇ ਹੋ।"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ਤੁਹਾਨੂੰ ਨਵੀਆਂ ਵੌਇਸਮੇਲਾਂ ਲਈ ਸੂਚਿਤ ਨਹੀਂ ਕੀਤਾ ਜਾਵੇਗਾ। ਆਪਣੀਆਂ ਵੌਇਸਮੇਲਾਂ ਸਮਕਾਲੀਕਿਰਤ ਕਰਨ ਲਈ ਹਵਾਈ ਜਹਾਜ਼ ਮੋਡ ਬੰਦ ਕਰੋ।"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"ਵੌਇਸਮੇਲਾਂ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਤੁਹਾਡੇ ਫ਼ੋਨ ਨੂੰ ਇੱਕ ਸੈਲਿਊਲਰ ਕਨੈਕਸ਼ਨ ਦੀ ਲੋੜ ਹੈ।"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਤੁਹਾਡੇ ਫ਼ੋਨ ਨੂੰ ਇੱਕ ਸੈਲਿਊਲਰ ਕਨੈਕਸ਼ਨ ਦੀ ਲੋੜ ਹੈ।"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਕਿਰਿਆਸ਼ੀਲ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਅੱਪਡੇਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ਤੁਹਾਡੇ Wi-Fi ਜਾਂ ਸੈਲਿਊਲਰ ਕਨੈਕਸ਼ਨ ਦੇ ਬਿਹਤਰ ਹੋਣ \'ਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ਤੁਹਾਡੇ ਸੈਲਿਊਲਰ ਡੈਟਾ ਕਨੈਕਸ਼ਨ ਦੇ ਬਿਹਤਰ ਹੋਣ \'ਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"ਤੁਹਾਡੇ Wi-Fi ਜਾਂ ਮੋਬਾਈਲ ਡੈਟਾ ਕਨੈਕਸ਼ਨ ਦੇ ਬਿਹਤਰ ਹੋਣ \'ਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"ਤੁਹਾਡੇ ਮੋਬਾਈਲ ਡੈਟਾ ਕਨੈਕਸ਼ਨ ਦੇ ਬਿਹਤਰ ਹੋਣ \'ਤੇ ਦੁਬਾਰਾ ਕੋਸ਼ਿਸ਼ ਕਰੋ। ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਅੱਪਡੇਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ਤੁਸੀਂ ਹਾਲੇ ਵੀ ਵੌਇਸਮੇਲ ਦੀ ਜਾਂਚ ਕਰਨ ਲਈ ਕਾਲ ਕਰ ਸਕਦੇ ਹੋ।"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਅੱਪਡੇਟ ਨਹੀਂ ਕੀਤਾ ਜਾ ਸਕਦਾ"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"ਕੁਝ ਗਲਤ ਹੋ ਗਿਆ"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"ਕਿਰਪਾ ਕਰਕੇ <xliff:g id="NUMBER">%1$s</xliff:g> \'ਤੇ ਗਾਹਕ ਸੇਵਾ ਨੂੰ ਸੰਪਰਕ ਕਰੋ ਅਤੇ ਉਹਨਾਂ ਨੂੰ ਦੱਸੋ ਕਿ ਗੜਬੜ ਕੋਡ 9999 ਹੈ।"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ਵਿਜੁਅਲ ਵੌਇਸਮੇਲ ਮਦਾਂ ਅਤੇ ਸ਼ਰਤਾਂ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਨੂੰ ਵਰਤਣ ਲਈ ਤੁਸੀਂ ਲਾਜ਼ਮੀ ਤੌਰ \'ਤੇ Verizon ਵਾਇਰਲੈੱਸ ਦੀਆਂ ਮਦਾਂ ਅਤੇ ਸ਼ਰਤਾਂ ਨੂੰ ਸਵੀਕਾਰ ਕਰੋ:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nਦ੍ਰਿਸ਼ਟਾਂਤਕ ਵੌਇਸਮੇਲ ਨੂੰ ਵਰਤਣ ਲਈ ਤੁਸੀਂ ਲਾਜ਼ਮੀ ਤੌਰ \'ਤੇ Verizon ਵਾਇਰਲੈੱਸ ਦੀਆਂ ਮਦਾਂ ਅਤੇ ਸ਼ਰਤਾਂ ਨੂੰ ਸਵੀਕਾਰ ਕਰੋ:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"ਦ੍ਰਿਸ਼ਟਾਂਤਕ ਵੌਇਸਮੇਲ ਨੂੰ ਚਾਲੂ ਕਰੋ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਅਯੋਗ ਹੋ ਜਾਵੇਗੀ ਜੇਕਰ ਮਦਾਂ ਅਤੇ ਸ਼ਰਤਾਂ ਨੂੰ ਅਸਵੀਕਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ਵਿਜ਼ੁਅਲ ਵੌਇਸਮੇਲ ਅਯੋਗ ਬਣਾਓ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"ਵੌਇਸਮੇਲ ਪ੍ਰਤਿਲਿਪੀ ਅਯੋਗ ਹੋ ਜਾਵੇਗੀ ਜੇਕਰ ਮਦਾਂ ਅਤੇ ਸ਼ਰਤਾਂ ਨੂੰ ਅਸਵੀਕਾਰ ਕੀਤਾ ਜਾਂਦਾ ਹੈ।"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ਵੌਇਸਮੇਲ ਪ੍ਰਤਿਲਿਪੀ ਨੂੰ ਅਯੋਗ ਬਣਾਓ"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"ਵੌਇਸਮੇਲ ਸਿਰਫ਼ *86 \'ਤੇ ਕਾਲ ਕਰਨ ਦੁਆਰਾ ਪਹੁੰਚਯੋਗ ਹੋਵੇਗੀ। ਜਾਰੀ ਰੱਖਣ ਲਈ ਇੱਕ ਨਵਾਂ ਵੌਇਸਮੇਲ PIN ਸੈੱਟ ਕਰੋ।"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN ਸੈੱਟ ਕਰੋ"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-pl/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-pl/strings.xml
index b122908..18b0902 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-pl/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-pl/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktywuję wizualną pocztę głosową"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Powiadomienia poczty głosowej mogą być dostępne dopiero po pełnej aktywacji wizualnej poczty głosowej. Do tego momentu nowe wiadomości możesz pobierać, dzwoniąc na pocztę głosową."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nie udało się aktywować wizualnej poczty głosowej"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Upewnij się, że telefon ma połączenie z internetem, i spróbuj jeszcze raz."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Upewnij się, że telefon ma połączenie z siecią komórkową, i spróbuj jeszcze raz."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Wyłącz tryb samolotowy i spróbuj jeszcze raz."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Brak połączenia"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nie otrzymasz powiadomień o nowych wiadomościach głosowych. Jeśli masz połączenie Wi-Fi, możesz teraz sprawdzić dostępność nowych wiadomości przez zsynchronizowanie urządzenia."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nie otrzymasz powiadomień o nowych wiadomościach głosowych. Jeśli masz połączenie Wi-Fi, możesz teraz sprawdzić dostępność nowych wiadomości przez zsynchronizowanie urządzenia."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nie otrzymasz powiadomień o nowych wiadomościach głosowych. Wyłącz tryb samolotowy, aby zsynchronizować pocztę głosową."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Aby sprawdzić pocztę głosową, telefon musi mieć połączenie z internetem."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Aby sprawdzić pocztę głosową, telefon musi mieć połączenie z internetem."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nie udało się aktywować wizualnej poczty głosowej"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nie udało się zaktualizować wizualnej poczty głosowej"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Spróbuj jeszcze raz, gdy znajdziesz lepszy zasięg sieci komórkowej lub Wi-Fi. Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Spróbuj jeszcze raz, gdy znajdziesz lepszy zasięg sieci komórkowej. Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Spróbuj jeszcze raz, gdy znajdziesz lepszy zasięg sieci komórkowej lub Wi-Fi. Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Spróbuj jeszcze raz, gdy znajdziesz lepszy zasięg sieci komórkowej. Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nie udało się zaktualizować wizualnej poczty głosowej"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Możesz też zadzwonić do poczty głosowej, aby odsłuchać wiadomości."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nie udało się zaktualizować wizualnej poczty głosowej"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Coś poszło nie tak"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Skontaktuj się z obsługą klienta pod numerem <xliff:g id="NUMBER">%1$s</xliff:g>, podając kod błędu 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Warunki korzystania z wizualnej poczty głosowej"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Aby korzystać z wizualnej poczty głosowej, musisz zaakceptować warunki operatora Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nAby korzystać z wizualnej poczty głosowej, musisz zaakceptować warunki operatora Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Włącz wizualną pocztę głosową"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Jeśli odrzucisz warunki korzystania z usługi, wizualna poczta głosowa zostanie wyłączona."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Wyłącz wizualną pocztę głosową"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Jeśli odrzucisz warunki korzystania z usługi, transkrypcja wiadomości w poczcie głosowej zostanie wyłączona."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Wyłącz transkrypcję wiadomości w poczcie głosowej"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Poczta głosowa będzie dostępna tylko przez połączenie telefoniczne z numerem *86. Ustaw nowy kod PIN poczty głosowej, aby przejść dalej."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Ustaw kod PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-pt-rBR/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-pt-rBR/strings.xml
index bbe9340..ce2b4ee 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-pt-rBR/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ativando correio de voz visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Talvez você não receba notificações do correio de voz até que o correio de voz visual esteja totalmente ativado. Enquanto isso não acontecer, ligue para o correio de voz para receber as novas mensagens."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Não foi possível ativar o correio de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Verifique se seu smartphone tem uma conexão celular e tente novamente."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Verifique se seu smartphone tem uma conexão por rede móvel e tente novamente."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desative o modo avião e tente novamente."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sem conexão"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Você não será notificado sobre novos correios de voz. Se estiver usando Wi-Fi, sincronize agora para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Você não será notificado sobre novos correios de voz. Se estiver usando Wi-Fi, sincronize agora para verificar o correio de voz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Você não será notificado sobre novos correios de voz. Desative o modo avião para sincronizar seu correio de voz."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Seu smartphone precisa de uma conexão de dados da rede celular para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Seu smartphone precisa de uma conexão de dados móveis para verificar o correio de voz."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Não foi possível ativar o correio de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Não foi possível atualizar o correio de voz visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Tente novamente quando estiver com uma conexão celular ou Wi-Fi melhor. Você ainda pode ligar para verificar o correio de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Tente novamente quando estiver com uma conexão de dados da rede celular melhor. Você ainda pode ligar para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Tente novamente quando estiver com uma conexão de dados móveis ou Wi‑Fi melhor. Você ainda pode ligar para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Tente novamente quando estiver com uma conexão de dados móveis melhor. Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Não foi possível atualizar o correio de voz visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Não foi possível atualizar o correio de voz visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ocorreu um erro"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Entre em contato com o atendimento ao cliente pelo número <xliff:g id="NUMBER">%1$s</xliff:g> e forneça o código de erro 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termos e Condições do correio de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Você precisa aceitar os termos e condições da Verizon Wireless para usar o correio de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVocê precisa aceitar os Termos e Condições da Verizon Wireless para usar o correio de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ativar correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"O correio de voz visual será desativado se os termos e condições forem recusados."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desativar correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"A transcrição do correio de voz será desativada se os Temos e Condições forem recusados."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desativar transcrição do correio de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"O correio de voz só estará acessível quando você ligar para *86. Defina um novo PIN do correio de voz para continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Definir PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-pt-rPT/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-pt-rPT/strings.xml
index 364b278..3b8ba1b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-pt-rPT/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"A ativar o correio de voz visual..."</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Poderá não receber notificações de correio de voz até o correio de voz visual estar completamente ativado. Ligue para o correio de voz para obter novas mensagens até o correio de voz estar completamente ativado."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Não é possível ativar o correio de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Certifique-se de que o seu telemóvel tem uma ligação de rede móvel e tente novamente."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Certifique-se de que o seu telemóvel tem uma ligação de rede móvel e tente novamente."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desative o modo de avião e tente novamente."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sem ligação"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Não será notificado quando receber novas mensagens de correio de voz. Se estiver numa ligação Wi-Fi, pode verificar se existem mensagens de correio de voz ao sincronizar agora."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Não será notificado quando receber novas mensagens de correio de voz. Se estiver numa ligação Wi-Fi, pode verificar se existem mensagens de correio de voz ao sincronizar agora."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Não será notificado quando receber novas mensagens de correio de voz. Desative o modo de avião para sincronizar as suas mensagens de correio de voz."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"O seu telemóvel precisa de uma ligação de dados móveis para verificar se existem mensagens de correio de voz."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"O seu telemóvel precisa de uma ligação de dados móveis para verificar se existem mensagens de correio de voz."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Não é possível ativar o correio de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Não é possível atualizar as mensagens de correio de voz visuais"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Tente novamente quando a sua ligação Wi-Fi ou de rede móvel for mais forte. Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Tente novamente quando a sua ligação de rede móvel for mais forte. Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Tente novamente quando a sua ligação Wi-Fi ou de dados móveis for mais forte. Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Tente novamente quando a sua ligação de dados móveis for mais forte. Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Não é possível atualizar as mensagens de correio de voz visuais"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Ainda pode efetuar chamadas para consultar as mensagens de correio de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Não é possível atualizar as mensagens de correio de voz visuais"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ocorreu um erro"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Contacte o serviço de apoio ao cliente através do número <xliff:g id="NUMBER">%1$s</xliff:g> e indique que o código de erro é 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termos de Utilização do Correio de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Tem de aceitar os Termos de Utilização da Verizon Wireless para utilizar o correio de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nTem de aceitar os Termos de Utilização da Verizon Wireless para utilizar o correio de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ativar o correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"O correio de voz visual será desativado se tiver recusado os Termos de Utilização."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desativar o correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"A transcrição das mensagens de correio de voz será desativada se tiver recusado os Termos de Utilização."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desativar a transcrição das mensagens de correio de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"O correio de voz está apenas disponível ao ligar para *86. Defina um novo PIN do correio de voz para continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Definir PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-pt/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-pt/strings.xml
index bbe9340..ce2b4ee 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-pt/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-pt/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ativando correio de voz visual"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Talvez você não receba notificações do correio de voz até que o correio de voz visual esteja totalmente ativado. Enquanto isso não acontecer, ligue para o correio de voz para receber as novas mensagens."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Não foi possível ativar o correio de voz visual"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Verifique se seu smartphone tem uma conexão celular e tente novamente."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Verifique se seu smartphone tem uma conexão por rede móvel e tente novamente."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Desative o modo avião e tente novamente."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Sem conexão"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Você não será notificado sobre novos correios de voz. Se estiver usando Wi-Fi, sincronize agora para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Você não será notificado sobre novos correios de voz. Se estiver usando Wi-Fi, sincronize agora para verificar o correio de voz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Você não será notificado sobre novos correios de voz. Desative o modo avião para sincronizar seu correio de voz."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Seu smartphone precisa de uma conexão de dados da rede celular para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Seu smartphone precisa de uma conexão de dados móveis para verificar o correio de voz."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Não foi possível ativar o correio de voz visual"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Não foi possível atualizar o correio de voz visual"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Tente novamente quando estiver com uma conexão celular ou Wi-Fi melhor. Você ainda pode ligar para verificar o correio de voz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Tente novamente quando estiver com uma conexão de dados da rede celular melhor. Você ainda pode ligar para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Tente novamente quando estiver com uma conexão de dados móveis ou Wi‑Fi melhor. Você ainda pode ligar para verificar o correio de voz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Tente novamente quando estiver com uma conexão de dados móveis melhor. Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Não foi possível atualizar o correio de voz visual"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Você ainda pode ligar para verificar o correio de voz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Não foi possível atualizar o correio de voz visual"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ocorreu um erro"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Entre em contato com o atendimento ao cliente pelo número <xliff:g id="NUMBER">%1$s</xliff:g> e forneça o código de erro 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termos e Condições do correio de voz visual"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Você precisa aceitar os termos e condições da Verizon Wireless para usar o correio de voz visual:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVocê precisa aceitar os Termos e Condições da Verizon Wireless para usar o correio de voz visual:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Ativar correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"O correio de voz visual será desativado se os termos e condições forem recusados."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Desativar correio de voz visual"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"A transcrição do correio de voz será desativada se os Temos e Condições forem recusados."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Desativar transcrição do correio de voz"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"O correio de voz só estará acessível quando você ligar para *86. Defina um novo PIN do correio de voz para continuar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Definir PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ro/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ro/strings.xml
index 263ab00..046df48 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ro/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ro/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Se activează mesageria vocală vizuală"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"E posibil să nu primiți notificări de la mesageria vocală până când mesageria vocală vizuală nu este activată complet. Apelați mesageria vocală pentru a prelua mesajele noi până la activarea completă a mesageriei."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Nu se poate activa mesagerie vocală vizuală"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Asigurați-vă că telefonul are conexiune mobilă și încercați din nou."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Asigurați-vă că telefonul are o conexiune la o rețea mobilă și încercați din nou."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Dezactivați modul avion și încercați din nou."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nicio conexiune"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nu veți primi notificări pentru mesaje vocale noi. Dacă folosiți Wi-Fi, puteți verifica mesageria sincronizând acum."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nu veți primi notificări pentru mesaje vocale noi. Dacă folosiți Wi-Fi, puteți verifica mesageria sincronizând acum."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nu veți primi notificări pentru mesajele vocale noi. Dezactivați modul avion pentru a vă sincroniza mesageria."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefonul dvs. are nevoie de conexiune mobilă pentru a verifica mesageria vocală."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefonul dvs. are nevoie de conexiune mobilă pentru a verifica mesageria vocală."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Nu se poate activa mesagerie vocală vizuală"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Nu se poate actualiza mesageria vocală vizuală"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Încercați din nou când aveți o conexiune Wi-Fi sau mobilă mai bună. Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Încercați din nou când aveți o conexiune mobilă mai bună. Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Încercați din nou când aveți o conexiune Wi-Fi sau mobilă mai bună. Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Încercați din nou când aveți o conexiune mobilă mai bună. Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Nu se poate actualiza mesageria vocală vizuală"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Puteți totuși să apelați pentru a verifica mesageria vocală."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Nu se poate actualiza mesageria vocală vizuală"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"A apărut o eroare"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Contactați Serviciul de asistență pentru clienți la <xliff:g id="NUMBER">%1$s</xliff:g> și comunicați-le codul erorii: 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Termeni și condiții pentru mesageria vocală vizuală"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Trebuie să acceptați termenii și condițiile Verizon Wireless pentru a folosi mesageria vocală vizuală:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nTrebuie să acceptați Termenii și condițiile Verizon Wireless pentru a folosi mesageria vocală vizuală:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Activați Mesageria vocală vizuală"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Mesageria vocală vizuală va fi dezactivată dacă nu acceptați termenii și condițiile."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Dezactivați mesageria vocală vizuală"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transcrierea mesajelor vocale va fi dezactivată dacă termenii și condițiile sunt refuzate."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Dezactivați transcrierea mesajelor vocale"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Mesageria vocală va fi accesibilă numai apelând *86. Setați un cod PIN nou pentru mesageria vocală pentru a continua."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Setați codul PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ru/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ru/strings.xml
index 1989f26..4994b46 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ru/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ru/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Включение просмотра голосовой почты"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Вы не будете получать оповещения, пока не активируете визуальную голосовую почту. Позвоните, чтобы прослушать новые сообщения."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Не удалось включить просмотр голосовой почты"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Проверьте подключение к мобильной сети и повторите попытку."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Убедитесь, что телефон подключен к мобильной сети, и повторите попытку."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Отключите режим полета и повторите попытку."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Нет соединения"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Вы не будете получать оповещения о новых голосовых сообщениях. Если телефон подключен к Wi-Fi, выполните синхронизацию."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Вы не будете получать оповещения о новых голосовых сообщениях. Если телефон подключен к Wi-Fi, то вы можете выполнить синхронизацию и проверить голосовую почту сейчас."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Вы не будете получать оповещения о новых сообщениях. Чтобы выполнить синхронизацию, отключите режим полета."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Чтобы проверить голосовую почту, подключите мобильные данные."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Чтобы проверить голосовую почту, подключитесь к мобильному Интернету."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Не удалось включить просмотр голосовой почты"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Чтобы проверить голосовую почту, вы можете позвонить на специальный номер."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Не удалось обновить страницу просмотра голосовой почты"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Дождитесь стабильного сигнала Wi-Fi или мобильной сети и повторите попытку. Если вы хотите проверить почту сейчас, позвоните на специальный номер."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Дождитесь стабильного сигнала мобильной сети и повторите попытку. Если вы хотите проверить почту сейчас, позвоните на специальный номер."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Дождитесь стабильного сигнала Wi-Fi или мобильного Интернета и повторите попытку. Если вы хотите проверить голосовую почту сейчас, позвоните на специальный номер."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Дождитесь стабильного сигнала мобильного Интернета и повторите попытку. Если вы хотите проверить голосовую почту сейчас, позвоните на специальный номер."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Не удалось обновить страницу просмотра голосовой почты"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Чтобы проверить голосовую почту, вы можете позвонить на специальный номер."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Не удалось обновить страницу просмотра голосовой почты"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ошибка"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Свяжитесь со службой поддержки по номеру <xliff:g id="NUMBER">%1$s</xliff:g> и сообщите им код ошибки 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Условия использования визуальной голосовой почты"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Чтобы работать с визуальной голосовой почтой, примите Условия использования Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nЧтобы работать с визуальной голосовой почтой, примите Условия использования Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Включить визуальную голосовую почту"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Если вы не примете Условия использования, визуальная голосовая почта будет отключена."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Отключение визуальной голосовой почты"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Если вы не примете Условия использования, транскрипция голосовых сообщений будет отключена."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Отключение транскрипции голосовых сообщений"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Для прослушивания голосовой почты необходимо будет отправить вызов по номеру *86. Чтобы продолжить, установите новый PIN-код голосовой почты."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Установка PIN-кода"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-si/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-si/strings.xml
index 2a057fa..ddba002 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-si/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-si/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"දෘශ්‍ය හඬ තැපෑල ක්‍රියාත්මක කිරීම"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"දෘශ්‍ය හඬ තැපෑල සම්පූර්ණයෙන් සක්‍රිය කරන තෙක් ඔබට හඩ තැපැල් දැනුම් දීම් නොලැබීමට හැකිය. දෘශ්‍ය හඬ තැපෑල සම්පූර්ණයෙන් සක්‍රිය කරන තෙක් නව පණිවිඩ යළි ලබා ගැනීමට හඬ තැපෑල අමතන්න."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"දෘශ්‍ය හඬ තැපෑල ක්‍රියාත්මක කළ නොහැකිය"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"ඔබේ දුරකථනයට සෙලියුලර් සම්බන්ධතාවක් ඇති බව පරීක්ෂා කර නැවත උත්සාහ කරන්න."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"ඔබේ දුරකථනයට ජංගම ජාල සම්බන්ධතාවක් ඇති බව සහතික කරගෙන නැවත උත්සාහ කරන්න."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ගුවන් යානා ප්‍රකාරය ක්‍රියාවිරහිත කර නැවත උත්සාහ කරන්න."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"සම්බන්ධතාවය නැත"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"ඔබට නව හඬ තැපැල් සඳහා දැනුම් දීම් නොලැබෙනු ඇත. ඔබ Wi-Fi මත සිටින්නේ නම්, ඔබට දැන් සමමුහුර්ත කිරීමෙන් හඬ තැපැල් සඳහා පරීක්ෂා කළ හැකිය."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"ඔබට නව හඬ තැපැල් සඳහා දැනුම් දීම් නොලැබෙනු ඇත. ඔබ Wi-Fi වල සිටින්නේ නම්, ඔබට දැන් සමමුහුර්ත කිරීමෙන් හඬ තැපෑල සඳහා පරීක්ෂා කළ හැකිය."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"ඔබට නව හඬ තැපැල් සඳහා දැනුම් දීම් නොලැබෙනු ඇත. ඔබේ හඬ තැපැල් සමමුහුර්ත කිරීමට ගුවන් යානා ප්‍රකාරය ක්‍රියාවිරහිත කරන්න."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"හඬ තැපැල් පරීක්ෂා කිරීමට ඔබේ දුරකථනයට සෙලියුලර් දත්ත සබැඳුමක් අවශ්‍යය."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"හඬ තැපෑල පරීක්ෂා කිරීමට ඔබේ දුරකථනයට ජංගම දත්ත සම්බන්ධතාවක් අවශ්‍යයි."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"දෘශ්‍ය හඬ තැපෑල ක්‍රියාත්මක කළ නොහැකිය"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"දෘශ්‍ය හඬ තැපෑල යාවත්කාලීන කළ නොහැකිය"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ඔබේ Wi-Fi හෝ සෙලියුලර් සබැඳුම වඩා යහපත් විට නැවත උත්සාහ කරන්න. ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ඔබේ සෙලියුලර් දත්ත සබැඳුම වඩා යහපත් විට නැවත උත්සාහ කරන්න. ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"ඔබේ Wi-Fi හෝ ජංගම දත්ත සම්බන්ධතාව වඩා යහපත් විට නැවත උත්සාහ කරන්න. ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"ඔබේ ජංගම දත්ත සම්බන්ධතාව වඩා යහපත් විට නැවත උත්සාහ කරන්න. ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"දෘශ්‍ය හඬ තැපෑල යාවත්කාලීන කළ නොහැකිය"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"ඔබට තවම හඬ තැපෑල පරීක්ෂා කිරීමට ඇමතිය හැකිය."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"දෘශ්‍ය හඬ තැපෑල යාවත්කාලීන කළ නොහැකිය"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"යම් දෙයක් වැරදිණි"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"කරුණාකර <xliff:g id="NUMBER">%1$s</xliff:g> අංකයට පාරිභෝගික සේවාව අමතා දෝෂ කේතය 9999 බව ඔවුන්ට පවසන්න."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"දෘශ්‍ය හඬ තැපෑල් නියම සහ කොන්දේසි"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"ඔබ දෘශ්‍ය හඬ තැපෑල භාවිත කිරීමට Verizon Wireless හි නියම සහ කොන්දේසි පිළිගත යුතුය:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nඔබ දෘශ්‍ය හඬ තැපෑල භාවිත කිරීමට Verizon Wireless හි නියම සහ කොන්දේසි පිළිගත යුතුය:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"දෘශ්‍ය හඬ තැපෑල ක්‍රියාත්මක කරන්න"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"නියම සහ කොන්දේසි ප්‍රතික්ෂේප කර ඇති නම් දෘශ්‍ය හඬ තැපෑල අබල කරනු ඇත."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"දෘශ්‍ය හඬ තැපෑල අබල කරන්න"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"නියම සහ කොන්දේසි ප්‍රතික්ෂේප කර ඇති නම් හඬ තැපැල් පිටපත් කිරීම අබල කරනු ඇත."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"හඬ තැපැල් පිටපත් කිරීම අබල කරන්න"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"හඩ තැපෑල *86 වෙත ඇමතීමෙන් පමණක් ලබා ගත හැකිය. ඉදිරියට යාමට නව හඩ තැපැල් PIN එකක් පිහිටුවන්න."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN අංකය සකසන්න"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sk/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sk/strings.xml
index 165a9f5..692d68b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sk/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sk/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktivuje sa vizuálna hlasová schránka"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Kým nebude vizuálna hlasová schránka úplne aktivovaná, pravdepodobne nebudete dostávať upozornenia hlasovej schránky. Kým nebude hlasová schránka úplne aktivovaná, nové správy môžete načítať zavolaním do hlasovej schránky."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizuálna hlasová schránka sa nedá aktivovať"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Skontrolujte, či má telefón mobilné pripojenie, a skúste to znova."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Skontrolujte, či má telefón pripojenie k mobilnej sieti, a skúste to znova."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Vypnite režim v lietadle a skúste to znova."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Žiadne pripojenie"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nedostanete upozornenia na nové hlasové správy. Ak používate Wi-Fi, synchronizáciou môžete skontrolovať hlasovú schránku."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nedostanete upozornenia na nové hlasové správy. Ak používate Wi‑Fi, hlasovú schránku môžete skontrolovať synchronizáciou."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nedostanete upozornenia na nové hlasové správy. Vypnite režim v lietadle a synchronizujte hlasovú schránku."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Na kontrolu hlasovej schránky potrebuje telefón mobilné dátové pripojenie."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Na kontrolu hlasovej schránky potrebuje telefón mobilné dátové pripojenie."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizuálna hlasová schránka sa nedá aktivovať"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizuálna hlasová schránka sa nedá aktualizovať"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Skúste to znova, keď budete mať lepšie pripojenie cez Wi-Fi alebo lepšie mobilné pripojenie. Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Skúste to znova, keď budete mať lepšie mobilné dátové pripojenie. Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Skúste to znova, keď budete mať lepšie pripojenie cez Wi‑Fi alebo lepšie mobilné dátové pripojenie. Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Skúste to znova, keď budete mať lepšie mobilné dátové pripojenie. Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizuálna hlasová schránka sa nedá aktualizovať"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Hlasovú schránku si stále môžete skontrolovať zavolaním."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizuálna hlasová schránka sa nedá aktualizovať"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Vyskytol sa problém"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Obráťte sa na služby zákazníkom na čísle <xliff:g id="NUMBER">%1$s</xliff:g> a oznámte kód chyby 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Zmluvné podmienky vizuálnej hlasovej schránky"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Ak chcete používať vizuálnu hlasovú schránku, je nutné prijať zmluvné podmienky spoločnosti Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nAk chcete používať vizuálnu hlasovú schránku, prijmite zmluvné podmienky spoločnosti Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Zapnutie vizuálnej hlasovej schránky"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"V prípade odmietnutia zmluvných podmienok bude vizuálna hlasová schránka zakázaná."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Zakázať vizuálnu hlasovú schránku"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"V prípade odmietnutia zmluvných podmienok bude prepis hlasových správ zakázaný."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Zakázať prepis hlasových správ"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Hlasová schránka bude k dispozícii len po zavolaní na číslo *86. Ak chcete pokračovať, nastavte nový PIN hlasovej schránky."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Nastavenie kódu PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sl/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sl/strings.xml
index d4f63c1..50a7199 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sl/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sl/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiviranje vizualnih sporočil v odzivniku"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Dokler niso vizualna sporočila v odzivniku v celoti aktivirana, morda ne boste prejemali obvestil o sporočilih v odzivniku. Pokličite odzivnik, da prenesete nova sporočila, dokler niso sporočila v odzivniku v celoti aktivirana."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizualnih sporočil v odzivniku ni mogoče aktivirati"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Preverite, ali je v telefonu vzpostavljena mobilna internetna povezava, in poskusite znova."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Preverite, ali je v telefonu vzpostavljena povezava z mobilnim omrežjem, in poskusite znova."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Izklopite način za letalo in poskusite znova."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ni povezave"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Obvestil o novih sporočilih v odzivniku ne boste prejemali. Če ste v omrežju Wi-Fi, lahko zdaj zaženete sinhronizacijo in preverite, ali ste prejeli sporočila v odzivniku."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Obvestil o novih sporočilih v odzivniku ne boste prejemali. Če ste v omrežju Wi-Fi, lahko zdaj zaženete sinhronizacijo in preverite, ali ste prejeli sporočila v odzivniku."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Obvestil o novih sporočilih v odzivniku ne boste prejemali. Če želite sinhronizirati sporočila v odzivniku, izklopite način za letalo."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Če želite preveriti sporočila v odzivniku, je treba v telefonu vzpostaviti povezavo za prenos podatkov v mobilnih omrežjih."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Če želite preveriti sporočila v odzivniku, je treba v telefonu vzpostaviti povezavo za prenos podatkov v mobilnem omrežju."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizualnih sporočil v odzivniku ni mogoče aktivirati"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizualnih sporočil v odzivniku ni mogoče posodobiti"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Poskusite znova, ko bo povezava Wi-FI ali mobilna internetna povezava boljša. Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Poskusite znova, ko bo mobilna internetna povezava boljša. Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Poskusite znova, ko bo povezava z omrežjem Wi-Fi ali povezava za prenos podatkov v mobilnem omrežju boljša. Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Poskusite znova, ko bo povezava za prenos podatkov v mobilnem omrežju boljša. Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizualnih sporočil v odzivniku ni mogoče posodobiti"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Sporočila v odzivniku lahko še vedno preverite tako, da pokličete."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizualnih sporočil v odzivniku ni mogoče posodobiti"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Prišlo je do napake"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Obrnite se na podporo za stranke na številki <xliff:g id="NUMBER">%1$s</xliff:g> in jim sporočite to kodo napake: 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Določila in pogoji za vizualna sporočila v odzivniku"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Če želite uporabljati vizualna sporočila v odzivniku, morate sprejeti določila in pogoje podjetja Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nČe želite uporabljati vizualna sporočila v odzivniku, morate sprejeti določila in pogoje podjetja Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Vklop vizualnih sporočil v odzivniku"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Če zavrnete določila in pogoje, bodo vizualna sporočila v odzivniku onemogočena."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Onemogočanje vizualnih sporočil v odzivniku"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Če zavrnete določila in pogoje, bo prepis sporočil v odzivniku onemogočen."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Onemogočanje prepisa sporočil v odzivniku"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Sporočila v odzivniku so na voljo samo tako, da pokličete *86. Če želite nadaljevati, nastavite novo kodo PIN za sporočila v odzivniku."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Nastavitev kode PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sq/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sq/strings.xml
index d400cd8..459760c 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sq/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sq/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Po aktivizon postën zanore vizuale"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Mund të mos marrësh njoftime të postës zanore derisa posta zanore vizuale të aktivizohet plotësisht. Merr në telefon te posta zanore për të marrë mesazhet e reja derisa posta zanore të aktivizohet plotësisht."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Posta zanore vizuale nuk aktivizohet"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Sigurohu që telefoni tënd të ketë lidhje celulare dhe provo përsëri."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Sigurohu që telefoni yt të ketë një lidhje rrjeti celular dhe provo përsëri."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Çaktivizo modalitetin e aeroplanit dhe provo përsëri."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Nuk ka lidhje"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Nuk do të njoftohesh për postë zanore të re. Nëse je në rrjetin Wi-Fi, mund të kontrollosh për postë zanore duke sinkronizuar tani."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Nuk do të njoftohesh për postat e reja zanore. Nëse je në rrjetin Wi-Fi, mund të kontrollosh për postën zanore duke e sinkronizuar tani."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Nuk do të njoftohesh për postë zanore të re. Çaktivizo modalitetin në aeroplan për të sinkronizuar postën zanore."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Telefoni yt ka nevojë për lidhje me të dhënat celulare për të kontrolluar postën zanore."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Telefoni yt ka nevojë për një lidhje të të dhënave celulare për të kontrolluar postën zanore."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Posta zanore vizuale nuk aktivizohet"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Përsëri mund të telefonosh për të kontrolluar postën zanore."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Posta zanore vizuale nuk u përditësua"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Provo përsëri kur lidhja Wi-Fi ose celulare të jetë më e mirë. Përsëri mund të telefonosh për të kontrolluar postën zanore."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Provo përsëri kur lidhja e të dhënave celulare të jetë më e mirë. Përsëri mund të telefonosh për të kontrolluar postën zanore."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Provo përsëri kur lidhja Wi-Fi ose e të dhënave celulare të jetë më e mirë. Mund të telefonosh përsëri për të kontrolluar postën zanore."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Provo përsëri kur lidhja e të dhënave celulare të jetë më e mirë. Mund të telefonosh përsëri për të kontrolluar postën zanore."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Posta zanore vizuale nuk u përditësua"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Përsëri mund të telefonosh për të kontrolluar postën zanore."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Posta zanore vizuale nuk u përditësua"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Ndodhi një gabim"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontakto me \"Shërbimin e klientit\" në <xliff:g id="NUMBER">%1$s</xliff:g> dhe tregoju kodin e gabimit 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Kushtet e përgjithshme të postës zanore vizuale"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Duhet të pranosh kushtet e përgjithshme të Verizon Wireless për të përdorur postën zanore vizuale:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDuhet të pranosh kushtet e përgjithshme të Verizon Wireless për të përdorur postën zanore vizuale:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Aktivizo postën zanore vizuale"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Posta zanore vizuale duhet të çaktivizohet nëse refuzohen kushtet e përgjithshme."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Çaktivizo postën zanore vizuale"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkriptimi i postës zanore do të çaktivizohet nëse refuzohen kushtet e përgjithshme."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Çaktivizo transkriptimin e postës zanore"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Do të mund të qasesh te posta zanore vetëm duke telefonuar në *86. Cakto një kod PIN të ri për postën zanore për të vazhduar."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Konfiguro kodin PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sr/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sr/strings.xml
index da1853a..6c65572 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sr/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sr/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Активира се визуелна говорна пошта"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Можда нећете добијати обавештења о говорној пошти док потпуно не активирате визуелну говорну пошту. Позовите говорну пошту да бисте преузели нове поруке док говорна пошта не буде потпуно активирана."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Активирање визуелне говорне поште није успело"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Проверите да ли телефон има мобилну везу и покушајте поново."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Проверите да ли телефон има везу преко мобилне мреже и пробајте поново."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Искључите режим рада у авиону и покушајте поново."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Веза није успостављена"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Нећете добијати обавештења о новим говорним порукама. Ако сте на Wi-Fi мрежи, синхронизујте да бисте проверили говорну пошту."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Нећете добијати обавештења о новим говорним порукама. Ако сте на Wi‑Fi мрежи, можете да синхронизујете да бисте проверили говорну пошту."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Нећете добијати обавештења о новим говорним порукама. Искључите режим рада у авиону да бисте синхронизовали говорну пошту."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Телефону треба мобилна веза за пренос података да бисте проверили говорну пошту."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Телефону је за проверу говорне поште потребна мобилна веза за пренос података."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Активирање визуелне говорне поште није успело"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"И даље можете да позовете говорну пошту да бисте је проверили."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Ажурирање визуелне говорне поште није успело"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Пробајте поново кад будете имали бољу Wi-Fi или мобилну везу. И даље можете да позовете говорну пошту да бисте је проверили."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Пробајте поново кад будете имали бољу мобилну везу за пренос података. И даље можете да позовете говорну пошту да бисте је проверили."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Пробајте поново кад будете имали бољу Wi‑Fi или мобилну везу за пренос података. И даље можете да позовете говорну пошту да бисте је проверили."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Пробајте поново кад будете имали бољу мобилну везу за пренос података. И даље можете да позовете говорну пошту да бисте је проверили."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Ажурирање визуелне говорне поште није успело"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"И даље можете да позовете говорну пошту да бисте је проверили."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Ажурирање визуелне говорне поште није успело"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Нешто није у реду"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Контактирајте корисничку подршку на <xliff:g id="NUMBER">%1$s</xliff:g> и реците им да је кôд грешке 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Услови и одредбе за визуелну говорну пошту"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Морате да прихватите Verizon Wireless услове и одредбе да бисте користили визуелну говорну пошту:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nМорате да прихватите Verizon Wireless услове и одредбе да бисте користили визуелну говорну пошту:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Укључите визуелну говорну пошту"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Ако одбијете услове и одредбе, онемогућићете визуелну говорну пошту."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Онемогућите визуелну говорну пошту"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Транскрипција говорне поште ће бити онемогућена ако се услови и одредбе одбију."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Онемогућите транскрипцију говорне поште"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Говорној пошти ћете моћи да приступите само ако позовете *86. Подесите нови PIN кôд говорне поште да бисте наставили."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Подесите PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sv/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sv/strings.xml
index cfab830..22dea5e 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sv/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sv/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Aktiverar visuell röstbrevlåda"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Du får kanske inte röstmeddelanden tills visuell röstbrevlåda är helt aktiverad. Ring röstbrevlådan för att hämta nya meddelanden innan den är helt aktiverad."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Det går inte att aktivera visuell röstbrevlåda"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Se till att mobilen har en mobildataanslutning och försök igen."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Se till att mobilen har en mobilnätverksanslutning och försök igen."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Inaktivera flygplansläget och försök igen."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Ingen anslutning"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Du meddelas inte om nya röstmeddelanden. Om du är ansluten till Wi-Fi kan du kontrollera om du har fått nya röstmeddelanden genom att synkronisera."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Du meddelas inte om nya röstmeddelanden. Om du är ansluten till Wi-Fi kan du lyssna på nya röstmeddelanden genom att synkronisera nu."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Du blir inte meddelad om nya röstmeddelanden. Inaktivera flygplansläget om du vill synkronisera röstbrevlådan."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Mobilen måste ha en mobildataanslutning för att du ska kunna lyssna av röstbrevlådan."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Mobilen måste ha en mobildataanslutning för att lyssna av röstbrevlådan."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Det går inte att aktivera visuell röstbrevlåda"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Du kan fortfarande lyssna av röstbrevlådan genom att ringa."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Det går inte att uppdatera den visuella röstbrevlådan"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Försök igen när du har en bättre Wi-Fi- eller mobildataanslutning. Du kan fortfarande lyssna av röstbrevlådan."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Försök igen när du har en bättre mobildataanslutning. Du kan fortfarande lyssna av röstbrevlådan."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Försök igen när du har en bättre Wi-Fi- eller mobildataanslutning. Det går fortfarande att lyssna av röstbrevlådan."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Försök igen när du har en bättre mobildataanslutning. Det går fortfarande att lyssna av röstbrevlådan."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Det går inte att uppdatera den visuella röstbrevlådan"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Du kan fortfarande lyssna av röstbrevlådan genom att ringa."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Det går inte att uppdatera den visuella röstbrevlådan"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Något gick fel"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Kontakta kundtjänst på <xliff:g id="NUMBER">%1$s</xliff:g> och ange felkoden 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Användarvillkor för visuell röstbrevlåda"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Du måste acceptera Verizon Wireless användarvillkor för att använda visuell röstbrevlåda:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nDu måste godkänna Verizon Wireless användarvillkor för att använda visuell röstbrevlåda:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Aktivera visuell röstbrevlåda"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Visuell röstbrevlåda inaktiveras om användarvillkoren avböjs."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Inaktivera visuell röstbrevlåda"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Transkription av röstbrevlådan inaktiveras om användarvillkoren avböjs."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Inaktivera transkription av röstbrevlåda"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Röstbrevlådan är endast tillgänglig genom att ringa *86. Fortsätt genom att ställa in en ny PIN-kod till röstbrevlådan."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Ställ in pinkod"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-sw/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-sw/strings.xml
index 56aad21..6b8b1f3 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-sw/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-sw/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Inawasha kipengele cha ujumbe wa sauti unaoonekana"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Huenda usipokee arifa za ujumbe wa sauti mpaka kipengele cha ujumbe wa sauti unaoonekana kiwe kimewashwa kabisa. Piga nambari ya ujumbe wa sauti ili upate ujumbe mpya mpaka kipengele hicho kitakapokuwa kimewashwa kabisa."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Imeshindwa kuwasha kipengele cha ujumbe wa sauti unaoonekana"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Hakikisha kwamba simu yako ina muunganisho wa mtandao wa simu kisha ujaribu tena."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Hakikisha kwamba simu yako ina muunganisho wa mtandao wa simu kisha ujaribu tena."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Zima hali ya ndegeni kisha ujaribu tena."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Hakuna muunganisho"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Hutaarifiwa ukipata ujumbe mpya wa sauti. Kama unatumia Wi-Fi sasa hivi, unaweza kuangalia kama una ujumbe wa sauti kwa kusawazisha sasa."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Hutaarifiwa ukipata ujumbe mpya wa sauti. Kama unatumia Wi-Fi sasa hivi, unaweza kuangalia kama una ujumbe wa sauti kwa kusawazisha sasa."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Hutaarifiwa ukipata ujumbe mpya wa sauti. Zima hali ya ndegeni ili usawazishe ujumbe wa sauti."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Simu yako inahitaji muunganisho wa mtandao wa simu kufungua ujumbe wa sauti."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Simu yako inahitaji muunganisho wa mtandao wa simu kufungua ujumbe wa sauti."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Imeshindwa kuwasha kipengele cha ujumbe wa sauti unaoonekana"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Imeshindwa kusasisha kipengele cha ujumbe wa sauti unaoonekana"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Jaribu tena baadaye muunganisho wa Wi-Fi au mtandao wa simu ukiimarika. Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Jaribu tena baadaye muunganisho wa data ya simu za mkononi ukiimarika. Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Jaribu tena baadaye muunganisho wa Wi-Fi au mtandao wa simu ukiimarika. Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Jaribu tena baadaye muunganisho wa data ya simu za mkononi ukiimarika. Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Imeshindwa kusasisha kipengele cha ujumbe wa sauti unaoonekana"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Bado unaweza kupiga simu usikilize ujumbe wa sauti."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Imeshindwa kusasisha kipengele cha ujumbe wa sauti unaoonekana"</string>
@@ -102,9 +102,15 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Hitilafu Fulani Imetokea"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Tafadhali wasiliana na Kituo cha Huduma kwa Wateja kupitia <xliff:g id="NUMBER">%1$s</xliff:g> na uwaambie kwamba msimbo wa hitilafu ni 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Sheria na Masharti ya kipengele cha Ujumbe wa Sauti Unaoonekana"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Lazima ukubali sheria na masharti ya Verizon Wireless ili uweze kutumia kipengele cha ujumbe wa sauti unaoonekana:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nNi lazima ukubali sheria na masharti ya Verizon Wireless ili uweze kutumia kipengele cha ujumbe wa sauti:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Washa Kipengele cha Ujumbe wa Sauti Unaoonekana"</string>
+    <!-- String.format failed for translation -->
+    <!-- no translation found for dialer_terms_and_conditions_message (6207219973959897196) -->
+    <skip />
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Kipengele cha ujumbe wa sauti unaoonekana kitazimwa ukikataa sheria na masharti."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Zima kipengele cha ujumbe wa sauti unaoonekana"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Kipengele cha unukuzi wa ujumbe wa sauti kitazimwa ukikataa sheria na masharti."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Zima kipengele cha unukuzi wa ujumbe wa sauti"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Utaweza kupata ujumbe wa sauti kwa kupiga *86 tu. Weka PIN mpya ya ujumbe wa sauti ili uweze kuendelea."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Weka PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ta/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ta/strings.xml
index f2613f0..5a51c94 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ta/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ta/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"விஷூவல் குரலஞ்சலைச் செயல்படுத்துகிறது"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"விஷுவல் குரலஞ்சலை முழுவதுமாக இயக்கும் வரை, உங்களால் குரலஞ்சல் அறிவிப்புகளைப் பெற முடியாமல் போகலாம். குரலஞ்சலை முழுவதுமாக இயக்கும் வரை புதிய செய்திகளைப் பெற, குரலஞ்சலை அழைக்கவும்."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"விஷூவல் குரலஞ்சலைச் செயல்படுத்த முடியவில்லை"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"உங்கள் மொபைலில் செல்லுலார் இணைப்பு உள்ளதை உறுதிசெய்து, மீண்டும் முயலவும்."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"உங்கள் ஃபோனில் மொபைல் நெட்வொர்க் இணைப்பு உள்ளதை உறுதிசெய்து, மீண்டும் முயலவும்."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"விமானப் பயன்முறையை முடக்கி, மீண்டும் முயலவும்."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"இணைப்பு இல்லை"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"புதிய குரலஞ்சல்கள் குறித்த அறிவிப்புகளைப் பெறமாட்டீர்கள். வைஃபை இணைப்பைப் பயன்படுத்திக்கொண்டிருந்தால், இப்போதே ஒத்திசைத்து குரலஞ்சல் உள்ளதா எனப் பார்க்கலாம்."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"புதிய குரலஞ்சல்கள் குறித்த அறிவிப்புகளைப் பெறமாட்டீர்கள். வைஃபை இணைப்பைப் பயன்படுத்திக்கொண்டிருந்தால், இப்போதே ஒத்திசைத்து குரலஞ்சல் உள்ளதா எனப் பார்க்கலாம்."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"புதிய குரலஞ்சல்கள் குறித்த அறிவிப்புகளைப் பெறமாட்டீர்கள். குரலஞ்சலை ஒத்திசைக்க, விமானப் பயன்முறையை முடக்கவும்."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"குரலஞ்சலைப் பார்க்க, உங்கள் மொபைலில் செல்லுலார் தரவு இணைப்பு இருக்க வேண்டும்."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"குரலஞ்சலைக் கேட்க, உங்கள் ஃபோனில் மொபைல் தரவு இணைப்பு இருக்க வேண்டும்."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"விஷூவல் குரலஞ்சலைச் செயல்படுத்த முடியவில்லை"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"விஷூவல் குரலஞ்சலைப் புதுப்பிக்க முடியவில்லை"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"வைஃபை அல்லது செல்லுலார் இணைப்பின் வேகம் முன்பை விட அதிகமாகும் போது, மீண்டும் முயலவும். குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"செல்லுலார் தரவு இணைப்பின் வேகம் முன்பை விட அதிகமாகும் போது, மீண்டும் முயலவும். குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"வைஃபை அல்லது மொபைல் தரவு இணைப்பின் வேகம் முன்பை விட அதிகமாகும் போது, மீண்டும் முயலவும். குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"மொபைல் தரவு இணைப்பின் வேகம் முன்பை விட அதிகமாகும் போது, மீண்டும் முயலவும். குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"விஷூவல் குரலஞ்சலைப் புதுப்பிக்க முடியவில்லை"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"குரலஞ்சலைப் பெற, இப்போதும் நீங்கள் குரலஞ்சல் எண்ணிற்கு அழைக்கலாம்."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"விஷூவல் குரலஞ்சலைப் புதுப்பிக்க முடியவில்லை"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"ஏதோ தவறாகிவிட்டது"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"<xliff:g id="NUMBER">%1$s</xliff:g> என்ற எண்ணில் வாடிக்கையாளர் சேவையை அழைத்து, அவர்களிடம் பிழையின் குறியீடு 9999 எனக் கூறவும்."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"விஷுவல் குரலஞ்சலின் விதிமுறைகள் மற்றும் நிபந்தனைகள்"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"விஷுவல் குரலஞ்சலைப் பயன்படுத்த Verizon Wireless இன் விதிமுறைகள் மற்றும் நிபந்தனைகளை ஏற்க வேண்டும்:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nவிஷுவல் குரலஞ்சலைப் பயன்படுத்த, Verizon Wireless இன் விதிமுறைகளையும் நிபந்தனைகளையும் ஏற்க வேண்டும்:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"விஷுவல் குரலஞ்சலை இயக்கவும்"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"விதிமுறைகள் மற்றும் நிபந்தனைகள் நிராகரிக்கப்பட்டால், விஷுவல் குரலஞ்சல் முடக்கப்படும்."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"விஷுவல் குரலஞ்சலை முடக்கு"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"விதிமுறைகளையும் நிபந்தனைகளையும் நிராகரித்தீர்கள் எனில், குரலஞ்சல் டிரான்ஸ்கிரிப்ஷன் முடக்கப்படும்."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"குரலஞ்சல் டிரான்ஸ்கிரிப்ஷனை முடக்கு"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"*86ஐ அழைத்தால் மட்டுமே, குரலஞ்சலை அணுக முடியும். தொடர, புதிய குரலஞ்சல் பின்னை அமைக்கவும்."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"பின்னை அமை"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-te/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-te/strings.xml
index a881550..f2086c4 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-te/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-te/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"దృశ్య వాయిస్ మెయిల్‌ను సక్రియం చేస్తోంది"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"దృశ్య వాయిస్ మెయిల్ పూర్తిగా సక్రియం అయ్యే వరకు మీరు వాయిస్ మెయిల్ నోటిఫికేషన్‌లను స్వీకరించలేకపోవచ్చు. వాయిస్ మెయిల్ పూర్తిగా సక్రియం అయ్యే వరకు కొత్త సందేశాలను తిరిగి పొందడానికి వాయిస్ మెయిల్‌కి కాల్ చేయండి."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"దృశ్య వాయిస్ మెయిల్‌ను సక్రియం చేయడం సాధ్యపడదు"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"మీ ఫోన్‌కు సెల్యులార్ కనెక్షన్ ఉన్నట్లు నిర్ధారించుకొని, ఆపై మళ్లీ ప్రయత్నించండి."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"మీ ఫోన్‌కు మొబైల్ నెట్‌వర్క్ కనెక్షన్ ఉన్నట్లు నిర్ధారించుకొని, ఆపై మళ్లీ ప్రయత్నించండి."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ఎయిర్‌ప్లైన్ మోడ్‌ను ఆఫ్ చేసి, ఆపై మళ్లీ ప్రయత్నించండి."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"కనెక్షన్ లేదు"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"మీకు కొత్త వాయిస్ మెయిల్‌ల గురించి తెలియజేయబడదు. మీరు Wi-Fiలో ఉంటే, ఇప్పుడే సమకాలీకరించడం ద్వారా వాయిస్ మెయిల్‌‍ను తనిఖీ చేయవచ్చు."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"మీకు కొత్త వాయిస్ మెయిల్‌ల గురించి తెలియజేయబడదు. మీరు Wi-Fiలో ఉంటే, ఇప్పుడే సమకాలీకరించడం ద్వారా వాయిస్ మెయిల్‌‍ను తనిఖీ చేయవచ్చు."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"మీకు కొత్త వాయిస్ మెయిల్‌ల గురించి తెలియజేయబడదు. మీ వాయిస్ మెయిల్‌‍ను సమకాలీకరించడానికి ఎయిర్‌ప్లైన్ మోడ్‌ను ఆఫ్ చేయండి."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి మీ ఫోన్‌కు సెల్యులార్ డేటా కనెక్షన్ అవసరం."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి మీ ఫోన్‌కు మొబైల్ డేటా కనెక్షన్ అవసరం."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"దృశ్య వాయిస్ మెయిల్‌ను సక్రియం చేయడం సాధ్యపడదు"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"మీరు ఇప్పటికీ వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి కాల్ చేయవచ్చు."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"దృశ్య వాయిస్ మెయిల్‌ను నవీకరించడం సాధ్యపడదు"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"మీ Wi-Fi లేదా సెల్యులార్ కనెక్షన్ మెరుగైనప్పుడు మళ్లీ ప్రయత్నించండి. మీరు వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి ఇప్పటికీ కాల్ చేయవచ్చు."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"మీ సెల్యులార్ డేటా కనెక్షన్ మెరుగైనప్పుడు మళ్లీ ప్రయత్నించండి. మీరు ఇప్పటికీ వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి కాల్ చేయవచ్చు."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"మీ Wi-Fi లేదా మొబైల్ డేటా కనెక్షన్ మెరుగైనప్పుడు మళ్లీ ప్రయత్నించండి. మీరు వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి ఇప్పటికీ కాల్ చేయవచ్చు."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"మీ మొబైల్ డేటా కనెక్షన్ మెరుగైనప్పుడు మళ్లీ ప్రయత్నించండి. మీరు ఇప్పటికీ వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి కాల్ చేయవచ్చు."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"దృశ్య వాయిస్ మెయిల్‌ను నవీకరించడం సాధ్యపడదు"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"మీరు ఇప్పటికీ వాయిస్ మెయిల్‌ను తనిఖీ చేయడానికి కాల్ చేయవచ్చు."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"దృశ్య వాయిస్ మెయిల్‌ను నవీకరించడం సాధ్యపడదు"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"ఏదో తప్పు జరిగింది"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"దయచేసి <xliff:g id="NUMBER">%1$s</xliff:g> నంబర్‌లో వినియోగదారు సేవా కేంద్రానికి కాల్ చేసి, వారికి లోపం కోడ్ 9999గా తెలపండి."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"దృశ్య వాయిస్ మెయిల్ నిబంధనలు మరియు షరతులు"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"మీరు దృశ్య వాయిస్ మెయిల్‌ను ఉపయోగించడానికి తప్పనిసరిగా Verizon వైర్‌లెస్ నిబంధనలు మరియు షరతులను ఆమోదించాలి:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nమీరు దృశ్య వాయిస్ మెయిల్‌ను ఉపయోగించాలంటే Verizon Wireless నిబంధనలు మరియు షరతులను తప్పనిసరిగా ఆమోదించాలి:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"దృశ్య వాయిస్ మెయిల్‌ను ఆన్ చేయండి"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"నిబంధనలు మరియు షరతులను తిరస్కరిస్తే దృశ్య వాయిస్ మెయిల్ నిలిపివేయబడుతుంది."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"దృశ్య వాయిస్ మెయిల్‌ను నిలిపివేయండి"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"నిబంధనలు మరియు షరతులను నిరాకరిస్తే వాయిస్ మెయిల్ లిప్యంతరీకరణ నిలిపివేయబడుతుంది."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"వాయిస్ మెయిల్ లిప్యంతరీకరణను నిలిపివేయండి"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"వాయిస్ మెయిల్‌ను కేవలం *86కి కాల్ చేయడం ద్వారా మాత్రమే ప్రాప్యత చేయగలరు. కొనసాగించడానికి కొత్త వాయిస్ మెయిల్ PINని సెట్ చేయండి."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PINని సెట్ చేయండి"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-th/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-th/strings.xml
index 31302cc..fffae99 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-th/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-th/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"กำลังเปิดใช้ข้อความเสียงพร้อมภาพ"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"คุณอาจไม่ได้รับการแจ้งเตือนข้อความเสียงจนกว่าจะเปิดใช้ข้อความเสียงพร้อมภาพแบบเต็มรูปแบบ โทรฟังข้อความเสียงเพื่อเรียกข้อความใหม่จนกว่าจะเปิดใช้ข้อความเสียงพร้อมภาพแบบเต็มรูปแบบ"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"เปิดใช้ข้อความเสียงพร้อมภาพไม่ได้"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"โปรดตรวจสอบว่าโทรศัพท์เชื่อมต่อเครือข่ายมือถืออยู่ แล้วลองใหม่"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"โปรดตรวจสอบว่าโทรศัพท์เชื่อมต่อเครือข่ายมือถืออยู่ แล้วลองใหม่"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ปิดโหมดบนเครื่องบินและลองใหม่"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"ไม่มีการเชื่อมต่อ"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"คุณจะไม่ได้รับข้อความเสียงใหม่ ถ้าเปิด Wi-Fi อยู่ คุณจะตรวจสอบข้อความเสียงได้โดยซิงค์เลย"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"คุณจะไม่ได้รับข้อความเสียงใหม่ ถ้าคุณใช้เครือข่าย Wi-Fi อยู่ สามารถตรวจสอบข้อความเสียงได้โดยซิงค์เดี๋ยวนี้"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"คุณจะไม่ได้รับข้อความเสียงใหม่ ปิดโหมดบนเครื่องบินเพื่อซิงค์ข้อความเสียง"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"โทรศัพท์ต้องเชื่อมต่ออินเทอร์เน็ตมือถือ จึงจะตรวจสอบข้อความเสียงได้"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"โทรศัพท์ต้องเชื่อมต่ออินเทอร์เน็ตมือถือจึงจะตรวจสอบข้อความเสียงได้"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"เปิดใช้ข้อความเสียงพร้อมภาพไม่ได้"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"ไม่สามารถอัปเดตข้อความเสียงพร้อมภาพได้"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"ลองใหม่เมื่อ Wi-Fi หรือสัญญาณเชื่อมต่อเครือข่ายมือถือดีขึ้น คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"ลองใหม่เมื่อสัญญาณเชื่อมต่อเครือข่ายมือถือดีขึ้น คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"ลองใหม่เมื่อ Wi-Fi หรือการเชื่อมต่ออินเทอร์เน็ตมือถือถือดีขึ้น คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"ลองใหม่เมื่อการเชื่อมต่ออินเทอร์เน็ตมือถือดีขึ้น คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"ไม่สามารถอัปเดตข้อความเสียงพร้อมภาพได้"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"คุณยังโทรเพื่อตรวจสอบข้อความเสียงได้"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"ไม่สามารถอัปเดตข้อความเสียงพร้อมภาพได้"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"เกิดข้อผิดพลาด"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"โปรดติดต่อฝ่ายสนับสนุนลูกค้าที่หมายเลข <xliff:g id="NUMBER">%1$s</xliff:g> และแจ้งรหัสข้อผิดพลาด 9999"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"ข้อกำหนดในการให้บริการข้อความเสียงพร้อมภาพ"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"คุณต้องยอมรับข้อกำหนดในการให้บริการของ Verizon Wireless จึงจะใช้ข้อความเสียงพร้อมภาพได้:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nคุณต้องยอมรับข้อกำหนดในการให้บริการของ Verizon Wireless เพื่อใช้ข้อความเสียงพร้อมภาพ:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"เปิดใช้ข้อความเสียงพร้อมภาพ"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"หากคุณไม่ยอมรับข้อกำหนดในการใช้บริการ ข้อความเสียงพร้อมภาพจะถูกปิดใช้งาน"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"ปิดใช้ข้อความเสียงพร้อมภาพ"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"หากคุณไม่ยอมรับข้อกำหนดในการใช้บริการ การถอดข้อความเสียงจะปิดใช้งาน"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"ปิดใช้การถอดข้อความเสียง"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"คุณสามารถรับฟังข้อความเสียงด้วยการโทรไป *86 เท่านั้น และตั้งค่า PIN ข้อความเสียงใหม่เพื่อดำเนินการต่อ"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"ตั้งค่า PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-tl/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-tl/strings.xml
index b99d0c3..b7b0caf 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-tl/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-tl/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Ina-activate ang visual na voicemail"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Maaaring hindi ka makatanggap ng mga notification sa voicemail hanggang sa ganap na ma-activate ang visual na voicemail. Tawagan ang voicemail upang makuha ang mga bagong mensahe hanggang sa ganap na ma-activate ang voicemail."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Hindi ma-activate ang visual na voicemail"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Tiyaking mayroong cellular na koneksyon ang iyong telepono at subukang muli."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Tiyaking mayroong koneksyon sa mobile network ang iyong telepono at subukang muli."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"I-off ang airplane mode at subukang muli."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Walang koneksyon"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Hindi ka aabisuhan para sa mga bagong voicemail. Kung nasa Wi-Fi ka, maaari mong tingnan ang voicemail sa pamamagitan ng pag-sync ngayon."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Hindi ka aabisuhan para sa mga bagong voicemail. Kung nasa Wi-Fi ka, maaari mong tingnan ang voicemail sa pamamagitan ng pag-sync ngayon."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Hindi ka aabisuhan para sa mga bagong voicemail. I-off ang airplane mode para i-sync ang iyong voicemail."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Kailangan ng cellular data na koneksyon ng iyong telepono upang tingnan ang voicemail."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Kailangan ng koneksyon ng mobile data ng iyong telepono upang tingnan ang voicemail."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Hindi ma-activate ang visual na voicemail"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Maaari ka pa ring tumawag upang tingnan ang voicemail."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Hindi ma-update ang visual na voicemail"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Subukang muli kapag mas maganda na ang iyong Wi-Fi o cellular na koneksyon. Maaari ka pa ring tumawag upang tingnan ang voicemail."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Subukang muli kapag mas maganda na ang iyong cellular data na koneksyon. Maaari ka pa ring tumawag upang tingnan ang voicemail."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Subukang muli kapag mas maganda na ang iyong Wi-Fi o koneksyon ng mobile data."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Subukang muli kapag mas maganda na ang iyong koneksyon ng mobile data. Maaari ka pa ring tumawag upang tingnan ang voicemail."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Hindi ma-update ang visual na voicemail"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Maaari ka pa ring tumawag upang tingnan ang voicemail."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Hindi ma-update ang visual na voicemail"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Nagkaroon ng Problema"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Pakikontak ang Customer Service sa <xliff:g id="NUMBER">%1$s</xliff:g> at sabihin sa kanila na ang code ng error ay 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Mga Tuntunin at Kundisyon ng Visual na Voicemail"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Kailangan mong tanggapin ang mga tuntunin at kundisyon ng Verizon Wireless upang gamitin ang visual na voicemail:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nKailangan mong tanggapin ang mga tuntunin at kundisyon ng Verizon Wireless upang gamitin ang visual na voicemail:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"I-on ang Visual na Voicemail"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Idi-disable ang visual na voicemail kung tatanggihan ang mga tuntunin at kundisyon."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"I-disable ang visual na voicemail"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Idi-disable ang transkripsyon ng voicemail kung tatanggihan ang mga tuntunin at kundisyon."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"I-disable ang transkripsyon ng voicemail"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Maa-access lang ang voicemail sa pamamagitan ng pagtawag sa *86. Magtakda ng bagong PIN sa voicemail upang magpatuloy."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Magtakda ng PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-tr/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-tr/strings.xml
index be5cbb0..3d0e379 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-tr/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-tr/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Görsel sesli mesaj etkinleştiriliyor"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Görsel sesli mesaj tam olarak etkinleştirilene dek sesli mesaj bildirimlerini almayabilirsiniz. Sesli mesaj tam olarak etkinleştirilene kadar, yeni mesajları almak için sesli mesaj hizmetini arayın."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Görsel sesli mesaj etkinleştirilemiyor"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Telefonunuzda hücresel bağlantı bulunduğundan emin olun ve tekrar deneyin."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Telefonunuzda mobil ağ bağlantısı olduğundan emin olup tekrar deneyin."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Uçak modunu kapatıp tekrar deneyin."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Bağlantı yok"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Yeni sesli mesajlarla ilgili olarak bilgilendirilmeyeceksiniz. Kablosuz bağlantınız varsa şimdi senkronizasyon gerçekleştirerek sesli mesajlarınızı kontrol edebilirsiniz."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Yeni sesli mesajlarla ilgili olarak bilgilendirilmeyeceksiniz. Kablosuz bağlantınız varsa şimdi senkronizasyon gerçekleştirerek sesli mesajlarınızı kontrol edebilirsiniz."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Yeni sesli mesajlarla ilgili olarak bilgilendirilmeyeceksiniz. Sesli mesajlarınızı senkronize etmek için uçak modunu kapatın."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Sesli mesaj kontrolü için telefonunuzda hücresel veri bağlantısı bulunmalıdır."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Sesli mesaj kontrolü için telefonunuzda mobil veri bağlantısı olmalıdır."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Görsel sesli mesaj etkinleştirilemiyor"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Görsel sesli mesaj güncellenemiyor"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Kablosuz veya hücresel bağlantı kalitesi daha iyi olduğunda tekrar deneyin. Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Hücresel veri bağlantısı kalitesi daha iyi olduğunda tekrar deneyin. Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Kablosuz veya mobil veri bağlantısı kalitesi daha iyi olduğunda tekrar deneyin. Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Mobil veri bağlantısı kalitesi daha iyi olduğunda tekrar deneyin. Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Görsel sesli mesaj güncellenemiyor"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Hâlâ arayarak sesli mesajlarınızı kontrol edebilirsiniz."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Görsel sesli mesaj güncellenemiyor"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Bir Sorun Oluştu"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Lütfen <xliff:g id="NUMBER">%1$s</xliff:g> numaralı telefondan Müşteri Hizmetleri ile iletişime geçerek hata kodunun 9999 olduğunu bildirin."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Görsel Sesli Mesaj Şartlar ve Koşulları"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Görsel sesli mesajı kullanmak için Verizon Wireless\'ın şartlar ve koşullarını kabul etmelisiniz:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nGörsel sesli mesajı kullanabilmek için Verizon Wireless\'ın şartlar ve koşullarını kabul etmelisiniz:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Görsel Sesli Mesaj\'ı etkinleştirme"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Şartlar ve koşullar reddedilirse görsel sesli mesaj devre dışı bırakılır."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Görsel sesli mesajı devre dışı bırak"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Şartlar ve koşullar reddedilirse sesli mesaj çeviri yazısı devre dışı bırakılır."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Sesli mesaj çeviri yazısını devre dışı bırakın"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Sesli mesajlara yalnızca *86 aranarak erişilebilir. Devam etmek için yeni bir sesli mesaj PIN\'i belirleyin."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN belirleyin"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-uk/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-uk/strings.xml
index 6adf49a..08cfb23 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-uk/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-uk/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Активація візуальної голосової пошти"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Якщо візуальну голосову пошту активовано неповністю, сповіщення голосової пошти можуть не надходити. У такому разі слід телефонувати на голосову пошту, щоб прослуховувати нові повідомлення."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Не вдалось активувати візуальну голосову пошту"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Переконайтеся, що в телефоні ввімкнено мобільний зв’язок, і спробуйте ще раз."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Переконайтеся, що в телефоні ввімкнено мобільний Інтернет, і спробуйте ще раз."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Вимкніть режим польоту та спробуйте ще раз."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Немає з’єднання"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Ви не отримуватимете сповіщення про нові повідомлення голосової пошти. Якщо активовано Wi-Fi, можете просто ввімкнути синхронізацію, і нові повідомлення завантажаться."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Ви не отримуватимете сповіщення про нові повідомлення голосової пошти. Якщо активовано Wi-Fi, можете просто ввімкнути синхронізацію, і нові повідомлення завантажаться."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Ви не отримуватимете сповіщення про нові повідомлення голосової пошти. Щоб синхронізувати голосову пошту, вимкніть режим польоту."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Щоб перевірити голосову пошту, потрібен мобільний трафік."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Щоб перевірити голосову пошту, потрібно ввімкнути мобільний Інтернет."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Не вдалось активувати візуальну голосову пошту"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Не вдалось оновити візуальну голосову пошту"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Спробуйте ще раз, коли буде кращий мобільний або Wi-Fi-зв’язок. Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Спробуйте ще раз, коли буде кращий мобільний зв’язок. Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Спробуйте ще раз, коли буде вища швидкість мобільного Інтернету або кращий сигнал Wi-Fi. Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Спробуйте ще раз, коли буде вища швидкість мобільного Інтернету. Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Не вдалось оновити візуальну голосову пошту"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Щоб перевірити голосову пошту, ви також можете зателефонувати."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Не вдалось оновити візуальну голосову пошту"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Сталася помилка"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Зв’яжіться зі службою обслуговування клієнтів за номером <xliff:g id="NUMBER">%1$s</xliff:g> і повідомте такий код помилки: 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Умови використання візуальної голосової пошти"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Щоб використовувати візуальну голосову пошту, потрібно прийняти Умови використання Verizon Wireless:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nЩоб використовувати візуальну голосову пошту, потрібно прийняти правила та умови Verizon Wireless:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Увімкнути візуальну голосову пошту"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Якщо відхилити умови використання, візуальну голосову пошту буде вимкнено."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Вимкнути візуальну голосову пошту"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Якщо відхилити правила та умови, транскрипцію голосової пошти буде вимкнено."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Вимкнути транскрипцію голосової пошти"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Прослухати голосову пошту можна буде, лише набравши *86. Установіть новий PIN-код для голосової пошти, щоб продовжити."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Установити PIN-код"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-ur/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-ur/strings.xml
index e6fd9f7..55f1e0b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-ur/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-ur/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"بصری صوتی میل کو فعال کیا جا رہا ہے"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"بصری صوتی میل کے مکمل طور پر فعال ہونے تک ہو سکتا ہے آپ کو صوتی میل کی اطلاعات موصول نہ ہو۔ صوتی میل کے مکمل طور پر فعال ہونے تک نئے پیغامات کی بازیافت کیلئے صوتی میل پر کال کریں۔"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"بصری صوتی میل کو فعال نہیں کیا جا سکتا"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"یقینی بنائیں کہ آپ کے فون میں ایک سیلولر کنکشن موجود ہے اور دوبارہ کوشش کریں۔"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"یقینی بنائیں کہ آپ کے فون میں ایک موبائل کنکشن موجود ہے اور دوبارہ کوشش کریں۔"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"ہوائی جہاز وضع آف کریں اور دوبارہ کوشش کریں۔"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"کوئی کنکشن نہیں ہے"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"‏آپ کو نئی صوتی میلز سے مطلع نہیں کیا جائے گا۔ اگر آپ Wi-Fi پر ہیں تو آپ ابھی مطابقت پذیری کرکے صوتی میل کیلئے چیک کر سکتے ہیں۔"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"‏آپ کو نئی صوتی میلز سے مطلع نہیں کیا جائے گا۔ اگر آپ Wi-Fi پر ہیں تو آپ ابھی مطابقت پذیری کرکے صوتی میل کیلئے چیک کر سکتے ہیں۔"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"آپ کو نئی صوتی میلز سے مطلع نہیں کیا جائے گا۔ اپنی صوتی میل کو مطابقت پذیر بنانے کیلئے ہوائی جہاز وضع آف کریں۔"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"صوتی میل چیک کرنے کیلئے آپ کے فون کو سیلولر ڈیٹا کنکشن کی ضرورت ہے۔"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"صوتی میل چیک کرنے کیلئے آپ کے فون کو موبائل ڈیٹا کنکشن کی ضرورت ہے۔"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"بصری صوتی میل کو فعال نہیں کیا جا سکتا"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"بصری صوتی میل اپ ڈیٹ نہیں ہو سکتی"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"‏جب آپ کا Wi-Fi یا سیلولر کنکشن بہتر تو دوبارہ کوشش کریں۔ صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"جب آپ کا سیلولر ڈیٹا کنکشن بہتر تو دوبارہ کوشش کریں۔ صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"‏جب آپ کا Wi-Fi یا موبائل کنکشن بہتر تو دوبارہ کوشش کریں۔ صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"جب آپ کا موبائل ڈیٹا کنکشن بہتر تو دوبارہ کوشش کریں۔ صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"بصری صوتی میل اپ ڈیٹ نہیں ہو سکتی"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"صوتی میل چیک کرنے کیلئے آپ ابھی بھی کال کر سکتے ہیں۔"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"بصری صوتی میل اپ ڈیٹ نہیں ہو سکتی"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"کچھ غلط ہوگیا"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"براہ کرم <xliff:g id="NUMBER">%1$s</xliff:g> پر کسٹمر سروس سے رابطہ کریں اور انہیں بتائیں کہ خرابی کا کوڈ 9999 ہے۔"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"بصری صوتی میل کی شرائط و ضوابط"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"‏بصری صوتی میل استعمال کرنے کیلئے آپ کو Verizon وائرلیس کی شرائط و ضوابط قبول کرنا ہونگی:\n\n‎%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"‏%1$s\n\nصوتی میل استعمال کرنے کیلئے آپ کو Verizon وائرلیس کی شرائط و ضوابط قبول کرنی چاہئیں::\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"بصری صوتی میل آن کریں"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"‎%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"شرائط و ضوابط مسترد کئے جانے کی صورت میں بصری صوتی میل غیر فعال کر دی جائے گی۔"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"بصری صوتی میل کو غیر فعال کریں"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"شرائط و ضوابط مسترد کئے جانے کی صورت میں صوتی میل ٹرانسکرپشن غیر فعال کر دی جائے گی۔"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"صوتی میل ٹرانسکرپشن غیر فعال کریں"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"‏صوتی میل تک رسائی صرف ‎*86 کو کال کرنے سے ہوگی۔ آگے بڑھنے کیلئے صوتی میل کی نئی PIN سیٹ کریں۔"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"‏PIN سیٹ کریں"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-uz/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-uz/strings.xml
index 5583e27..f312074 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-uz/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-uz/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Vizual ovozli pochta faollashtirilmoqda"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Vizual ovozli pochta xizmati faollashtirilmasa, yangi ovozli xabarlar haqida bildirishnoma kelmaydi. Ungacha ovozli pochtaga qo‘ng‘iroq qilib, yangi xabarlarni tinglashingiz mumkin."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Vizual ovozli pochtani faollashtirib bo‘lmadi"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Telefoningizda uyali aloqa faol ekanligini tekshiring va qayta urinib ko‘ring."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Telefoningizda mobil internet yoqilganligini tekshiring va qayta urinib ko‘ring."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Parvoz rejimini o‘chiring va qayta urinib ko‘ring."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Aloqa yo‘q"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Sizga yangi ovozli pochta xabarlari haqida bildirishnoma kelmaydi. Agar Wi-Fi tarmog‘idan foydalanayotgan bo‘lsangiz, xabarlarni olish uchun shunchaki sinxronlash xususiyatini yoqing."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Sizga yangi ovozli xabarlar haqida bildirishnoma kelmaydi. Wi-Fi tarmog‘iga ulangan qurilmangizda sinxronizatsiya yoqilsa, xabarlar yuklanadi."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Sizga yangi ovozli pochta xabarlari haqida bildirishnoma kelmaydi. Ovozli pochtani sinxronlash uchun parvoz rejimini o‘chiring."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Ovozli pochtani tekshirish uchun mobil internet yoqilgan bo‘lishi lozim."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Ovozli pochtani tekshirish uchun mobil internet yoqilgan bo‘lishi lozim."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Vizual ovozli pochtani faollashtirib bo‘lmadi"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Ovozli pochtani qo‘ng‘iroq qilib ham tekshirishingiz mumkin."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Vizual ovozli pochtani yangilab bo‘lmadi"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Wi-Fi tarmog‘iga ulanish imkoni paydo bo‘lganda yoki mobil internet sifati yaxshilanganda qayta urinib ko‘ring. Ovozli pochtani qo‘ng‘iroq qilib ham tekshirishingiz mumkin."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Mobil internet sifati yaxshilanganda qayta urinib ko‘ring. Ovozli pochtani qo‘ng‘iroq qilib ham tekshirishingiz mumkin."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Tezkor Wi-Fi yoki mobil internetdan foydalanish imkoniyati paydo bo‘lganida, qayta urinib ko‘ring. Ovozli pochtani uyali qo‘ng‘iroq orqali ham tekshirish mumkin."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Tezkor mobil internetdan foydalanish imkoniyati paydo bo‘lganida, qayta urinib ko‘ring. Ovozli pochtani uyali qo‘ng‘iroq orqali ham tekshirish mumkin."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Vizual ovozli pochtani yangilab bo‘lmadi"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Ovozli pochtani qo‘ng‘iroq qilib ham tekshirishingiz mumkin."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Vizual ovozli pochtani yangilab bo‘lmadi"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Noma’lum xatolik yuz berdi"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"<xliff:g id="NUMBER">%1$s</xliff:g> raqami orqali mijozlarni qo‘llab-quvvatlash markazi bilan bog‘laning va ularga xatolik kodi haqida xabar bering (kod: 9999)."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Vizual ovozli pochtadan foydalanish shartlari"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Vizual ovozli pochtadan foydalanish uchun Verizon Wireless xizmatidan foydalanish shartlarini qabul qilish lozim: \n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nVizual ovozli pochtadan foydalanish uchun Verizon Wireless xizmatidan foydalanish shartlarini qabul qilish lozim:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Vizual ovozli pochtani yoqish"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Agar foydalanish shartlari qabul qilinmasa, vizual ovozli pochta o‘chirib qo‘yiladi."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Vizual ovozli pochta o‘chirib qo‘yilsin"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Agar Foydalanish shartlari qabul qilinmasa, ovozli xabarlarni transkripsiyalash xizmati o‘chirib qo‘yiladi."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Ovozli xabarlarni transkripsiyalash xususiyatini o‘chirib qo‘yish"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Ovozli pochta xabarlarini *86 raqamiga qo‘ng‘iroq qilib tinglash mumkin. Davom ettirish uchun ovozli pochtaga yangi PIN kod o‘rnating."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"PIN kod o‘rnatish"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-vi/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-vi/strings.xml
index 029396e..895cf48 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-vi/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-vi/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Đang kích hoạt thư thoại kèm theo hình ảnh"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Bạn có thể không nhận được thông báo thư thoại cho đến khi thư thoại kèm theo hình ảnh được kích hoạt hoàn toàn. Gọi thư thoại để truy xuất tin nhắn mới cho đến khi thư thoại được kích hoạt hoàn toàn."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Không kích hoạt được thư thoại kèm theo hình ảnh"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Đảm bảo điện thoại của bạn có kết nối di động và thử lại."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Đảm bảo điện thoại của bạn có kết nối mạng di động và thử lại."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Hãy tắt chế độ trên máy bay và thử lại."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Không có kết nối"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Bạn sẽ không được thông báo về thư thoại mới. Nếu đang dùng Wi-Fi, bạn có thể kiểm tra thư thoại bằng cách đồng bộ hóa ngay bây giờ."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Bạn sẽ không được thông báo về thư thoại mới. Nếu đang dùng Wi-Fi, bạn có thể kiểm tra thư thoại bằng cách đồng bộ hóa ngay bây giờ."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Bạn sẽ không được thông báo về thư thoại mới. Hãy tắt chế độ trên máy bay để đồng bộ hóa thư thoại của bạn."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Điện thoại của bạn cần kết nối dữ liệu di động để kiểm tra thư thoại."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Điện thoại của bạn cần kết nối dữ liệu di động để kiểm tra thư thoại."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Không kích hoạt được thư thoại kèm theo hình ảnh"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Không cập nhật được thư thoại kèm theo hình ảnh"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Hãy thử lại khi Wi-Fi hoặc kết nối di động của bạn tốt hơn. Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Hãy thử lại khi kết nối dữ liệu di động của bạn tốt hơn. Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Hãy thử lại khi Wi-Fi hoặc kết nối dữ liệu di động của bạn tốt hơn. Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Hãy thử lại khi kết nối dữ liệu di động của bạn tốt hơn. Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Không cập nhật được thư thoại kèm theo hình ảnh"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Bạn vẫn có thể gọi để kiểm tra thư thoại."</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Không cập nhật được thư thoại kèm theo hình ảnh"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Đã xảy ra lỗi"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Vui lòng liên hệ với bộ phận Dịch vụ khách hàng theo số <xliff:g id="NUMBER">%1$s</xliff:g> và cho họ biết mã lỗi là 9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Điều khoản và điều kiện của thư thoại kèm theo hình ảnh"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Bạn phải chấp nhận điều khoản và điều kiện của Verizon Wireless để sử dụng thư thoại kèm theo hình ảnh:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nBạn phải chấp nhận điều khoản và điều kiện của Verizon Wireless để sử dụng thư thoại kèm theo hình ảnh:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Bật Thư thoại kèm theo hình ảnh"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"Thư thoại kèm theo hình ảnh sẽ bị tắt nếu điều khoản và điều kiện bị từ chối."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Tắt thư thoại kèm theo hình ảnh"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ghi âm thư thoại sẽ bị vô hiệu hóa nếu bạn từ chối điều khoản và điều kiện."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Vô hiệu hóa ghi âm thư thoại"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Bạn chỉ có thể truy cập thư thoại bằng cách gọi *86. Hãy đặt mã PIN thư thoại mới để tiếp tục."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Đặt mã PIN"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-zh-rCN/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-zh-rCN/strings.xml
index faa36de..deb0185 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-zh-rCN/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"正在激活可视语音信箱"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"在可视语音信箱未完全激活前，您可能不会收到新语音邮件通知。在完全激活前，请呼叫语音信箱以获取新邮件。"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"无法激活可视语音信箱"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"请确保您的手机已连接到移动网络，然后重试。"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"请确保您的手机已连接到移动网络，然后重试。"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"请关闭飞行模式，然后重试。"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"无网络连接"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"您将不会收到关于新语音邮件的通知。如果您已连接到 WLAN 网络，则可以立即同步以便查看语音邮件。"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"您将不会收到关于新语音邮件的通知。如果您已连接到 WLAN 网络，则可以立即同步以便查看语音邮件。"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"您将不会收到关于新语音邮件的通知。请关闭飞行模式以便同步语音信箱。"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"要查看语音邮件，您的手机需要连接到移动数据网络。"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"要查看语音邮件，您的手机需要连接到移动数据网络。"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"无法激活可视语音信箱"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"您仍然可以通过拨打电话来查看语音邮件。"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"无法更新可视语音信箱"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"请在 WLAN 或移动网络连接信号较强时重试。您仍然可以通过拨打电话来查看语音邮件。"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"请在移动数据网络连接信号较强时重试。您仍然可以通过拨打电话来查看语音邮件。"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"请在 WLAN 或移动网络连接信号较强时重试。您仍然可以通过拨打电话来查看语音邮件。"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"请在移动数据网络连接信号较强时重试。您仍然可以通过拨打电话来查看语音邮件。"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"无法更新可视语音信箱"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"您仍然可以通过拨打电话来查看语音邮件。"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"无法更新可视语音信箱"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"出了点问题"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"请拨打 <xliff:g id="NUMBER">%1$s</xliff:g> 联系客户服务人员，并告诉他们错误代码是 9999。"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"可视语音信箱条款及条件"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"您必须接受 Verizon Wireless 的条款及条件，才能使用可视语音信箱：\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\n您必须接受 Verizon Wireless 的条款及条件才能使用可视语音信箱：\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"启用可视语音信箱"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"如果您拒绝接受条款及条件，可视语音信箱将被停用。"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"停用可视语音信箱"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"如果您拒绝接受条款及条件，语音邮件转录功能将被停用。"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"停用语音邮件转录功能"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"您只能通过拨打 *86 来访问语音信箱。请先设置新的语音信箱 PIN 码再继续操作。"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"设置 PIN 码"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-zh-rHK/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-zh-rHK/strings.xml
index e51a0a9..add6d1a 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-zh-rHK/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"正在啟用視像留言"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"視像留言完全啟用前，您可能無法接收留言通知。請致電留言信箱以取得新訊息，直至視像留言完全啟用。"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"無法啟用視像留言"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"請確定您的手機有數據連線，然後再試一次。"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"請確定您的手機有數據連線，然後再試一次。"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"關閉飛行模式，然後再試一次。"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"沒有連線"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"您不會收到新留言通知。如果您使用的是 Wi-Fi，可以立即透過同步處理的方式查看是否有留言。"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"您不會收到新留言通知。如果您使用的是 Wi-Fi，可以立即透過同步處理的方式查看是否有留言。"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"您不會收到新留言通知。請關閉飛行模式，以便同步處理留言信箱。"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"您的手機需要有流動數據連線，才能查看留言信箱。"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"您的手機需要有流動數據連線，才能查看留言。"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"無法啟用視像留言"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"您仍可撥號以查看留言信箱。"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"無法更新視像留言信箱"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"請在您的 Wi-Fi 或數據連線品質較佳時再試一次。您仍可撥號以查看留言信箱。"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"請在您的數據連線品質較佳時再試一次。您仍可撥號以查看留言信箱。"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"請在您的 Wi-Fi 或數據連線品質較佳時再試一次。您仍可撥號以查看留言。"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"請在您的數據連線品質較佳時再試一次。您仍可撥號以查看留言。"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"無法更新視像留言信箱"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"您仍可撥號以查看留言信箱。"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"無法更新視像留言信箱"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"發生問題"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"請致電 <xliff:g id="NUMBER">%1$s</xliff:g> 聯絡客戶服務，並提供錯誤代碼 9999。"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"視像留言條款及細則"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"您必須接受 Verizon Wireless 的條款及細則，才能使用視像留言：\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\n您必須接受 Verizon Wireless 條款及細則，才能使用視像留言：\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"啟用視像留言"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"如果拒絕條款及細則，視像留言將會停用。"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"停用視像留言"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"如果拒絕條款及細則，留言轉錄功能將會停用。"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"停用留言轉錄功能"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"您只可以撥打 *86 使用留言信箱。請先設定新留言信箱 PIN 碼，然後繼續。"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"設定 PIN 碼"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-zh-rTW/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-zh-rTW/strings.xml
index 7f2e1d6..5937bb1 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-zh-rTW/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"啟用視覺化語音信箱"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"您必須完整啟用視覺化語音信箱，才會收到語音留言通知。在未完整啟用這項功能之前，如要擷取新訊息，請撥打語音信箱號碼。"</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"無法啟用視覺化語音信箱"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"請確定您的手機能收到訊號，然後再試一次。"</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"請確認你的手機已連上行動網路，然後再試一次。"</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"請關閉飛航模式，然後再試一次。"</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"沒有訊號"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"您不會收到新的語音留言通知。如果您已連上 Wi-Fi，立即執行同步處理，就能檢查是否有語音留言。"</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"你不會收到新的語音留言通知。如果你已連上 Wi-Fi 網路，立即執行同步處理就能檢查是否有語音留言。"</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"您不會收到新的語音留言通知。請關閉飛航模式，以便同步處理語音留言。"</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"手機必須要有數據連線才能檢查語音留言。"</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"手機必須要有行動數據連線才能檢查語音留言。"</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"無法啟用視覺化語音信箱"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"您也可以撥打電話來檢查語音留言。"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"無法更新視覺化語音信箱"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"請在 Wi-Fi 連線品質較佳或手機訊號較強時再試一次。您也可以撥打電話來檢查語音留言。"</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"請在數據連線品質較佳時再試一次。您也可以撥打電話來檢查語音留言。"</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"請在 Wi‑Fi 或行動網路連線品質較佳時再試一次。你還是可以撥打電話來檢查語音留言。"</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"請在行動網路連線品質較佳時再試一次。你還是可以撥打電話來檢查語音留言。"</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"無法更新視覺化語音信箱"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"您也可以撥打電話來檢查語音留言。"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"無法更新視覺化語音信箱"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"發生錯誤"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"請撥打 <xliff:g id="NUMBER">%1$s</xliff:g> 與客服人員聯絡，並告訴對方錯誤代碼為 9999。"</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"視覺化語音信箱條款及細則"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"你必須接受 Verizon Wireless 的條款及細則，才能使用視覺化語音信箱：\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\n你必須接受 Verizon Wireless 的條款及細則才能使用視覺化語音信箱：\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"啟用視覺化語音信箱"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"如果你拒絕接受相關條款及細則，系統將停用視覺化語音信箱功能。"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"停用視覺化語音信箱"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"如果拒絕接受條款及細則，系統將停用語音信箱留言轉錄功能。"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"停用語音信箱留言轉錄"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"必須撥打 *86 才能聽取語音信箱。如要繼續進行，請先設定新的語音信箱密碼。"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"設定語音信箱密碼"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values-zu/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values-zu/strings.xml
index 8d3cd79..5b31e3a 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values-zu/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values-zu/strings.xml
@@ -21,17 +21,17 @@
     <string name="voicemail_error_activating_title" msgid="2428457130578359186">"Yenza kusebenze ivoyisimeyili ebonakalayo"</string>
     <string name="voicemail_error_activating_message" msgid="7157030596259443393">"Kungenzeka ungatholi izaziso zevoyisimeyili kuze kwenziwe kusebenze ngokugcwele ivoyisimeyili ebonakalayo. Shayela ivoyisimeyili ukuze uthole imilayezo emisha kuze kwenziwe kusebenze ngokugcwele ivoyisimeyili."</string>
     <string name="voicemail_error_not_activate_no_signal_title" msgid="742273366199085615">"Ayikwazi ukwenza kusebenze ivoyisimeyili ebonakalayo"</string>
-    <string name="voicemail_error_not_activate_no_signal_message" msgid="4511975927252363280">"Qiniseka ukuthi ifoni yakho inokuxhumeka kweselula uphinde uzame futhi."</string>
+    <string name="voicemail_error_not_activate_no_signal_message" msgid="2929059808327964011">"Qiniseka ukuthi ifoni yakho inoxhumo lenethiwekhi leselula bese uyazama futhi."</string>
     <string name="voicemail_error_not_activate_no_signal_airplane_mode_message" msgid="2005255281543281215">"Vala imodi yendiza uphinde uzame futhi."</string>
     <string name="voicemail_error_no_signal_title" msgid="341954685733680219">"Akukho ukuxhumana"</string>
-    <string name="voicemail_error_no_signal_message" msgid="8557509373166292640">"Ngeke uze waziswe ngamavoyisimeyili amasha. Uma uku-Wi-Fi, ungahlolela ivoyisimeyili ngokuvumelanisa manje."</string>
+    <string name="voicemail_error_no_signal_message" msgid="2626509025723748371">"Ngeke uze waziswe ngamavoyisimeyili amasha. Uma uku-Wi-Fi, ungahlolela ivoyisimeyili ngokuvumelanisa manje."</string>
     <string name="voicemail_error_no_signal_airplane_mode_message" msgid="8553646558282754276">"Ngeke waziswe ngamavoyisimeyili amasha. Vala imodi yendiza ukuze uvumelanise ivoyisimeyili yakho."</string>
-    <string name="voicemail_error_no_signal_cellular_required_message" msgid="8461294934887808098">"Ifoni yakho idinga ukuxhumeka kwedatha yeselula ukuze ihlole ivoyisimeyili."</string>
+    <string name="voicemail_error_no_signal_cellular_required_message" msgid="6452586752169746399">"Ifoni yakho idinga ukuxhumeka kwedatha yeselula ukuze ihlole ivoyisimeyili."</string>
     <string name="voicemail_error_activation_failed_title" msgid="3823477898681399391">"Ayikwazi ukwenza kusebenze ivoyisimeyili ebonakalayo"</string>
     <string name="voicemail_error_activation_failed_message" msgid="2188301459207765442">"Usengashaya ukuze uhlole ivoyisimeyili"</string>
     <string name="voicemail_error_no_data_title" msgid="8127858252892092732">"Ayikwazi ukubuyekeza ivoyisimeyili ebonakalayo"</string>
-    <string name="voicemail_error_no_data_message" msgid="3723828868450752165">"Zama futhi uma i-Wi-Fi yakho noma ukuxhumeka kwakho kweselula kungcono. Usengashaya ukuze uhlole ivoyisimeyili."</string>
-    <string name="voicemail_error_no_data_cellular_required_message" msgid="2952045163270555699">"Zama futhi uma ukuxhumeka kwakho kweselula sekungcono. Usengashaya ukuze uhlole ivoyisimeyili."</string>
+    <string name="voicemail_error_no_data_message" msgid="6634124460113498265">"Zama futhi uma i-Wi-Fi yakho noma ukuxhumeka kwakho kwedatha kungcono. Usengashaya ukuze uhlole ivoyisimeyili."</string>
+    <string name="voicemail_error_no_data_cellular_required_message" msgid="2521491029817662357">"Zama futhi uma ukuxhumeka kwakho kwedaha sekungcono. Usengashaya ukuze uhlole ivoyisimeyili."</string>
     <string name="voicemail_error_bad_config_title" msgid="527594487104462966">"Ayikwazi ukubuyekeza ivoyisimeyili ebonakalayo"</string>
     <string name="voicemail_error_bad_config_message" msgid="2692955418930476771">"Usengashaya ukuze uhlole ivoyisimeyili"</string>
     <string name="voicemail_error_communication_title" msgid="9183339646110368169">"Ayikwazi ukubuyekeza ivoyisimeyili ebonakalayo"</string>
@@ -102,9 +102,13 @@
     <string name="vvm3_error_imap_error_title" msgid="1952971680250515832">"Kukhona okungahambanga kahle"</string>
     <string name="vvm3_error_imap_error_message" msgid="6668651261796655388">"Sicela uxhumane Nesevisi Yekhasimende ku-<xliff:g id="NUMBER">%1$s</xliff:g> uphinde ubatshele ukuthi ikhodi yephutha ngu-9999."</string>
     <string name="verizon_terms_and_conditions_title" msgid="9074967311276321500">"Imigomo nemibandela ye-Visual Voicemail"</string>
-    <string name="verizon_terms_and_conditions_message" msgid="271780225159084419">"Kufanele wamukele imigomo nemibandela ye-Verizon Wireless ukuze usebenzise i-visual voicemail:\n\n%s"</string>
+    <string name="verizon_terms_and_conditions_message" msgid="120258835788235077">"%1$s\n\nKufanele wamukele imogomo nemibandela ye-Verizon Wireless ukuze usebenzise ivoyisimeyili yokubuka:\n\n%2$s"</string>
+    <string name="dialer_terms_and_conditions_title" msgid="311603424861921251">"Vula ivoyisimeyili yokubuka"</string>
+    <string name="dialer_terms_and_conditions_message" msgid="6207219973959897196">"%s"</string>
     <string name="verizon_terms_and_conditions_decline_dialog_message" msgid="7852059293806766767">"I-Visual voicemail izokhutshazwa uma imigomo nemibandela inqatshawa."</string>
     <string name="verizon_terms_and_conditions_decline_dialog_downgrade" msgid="8347128304508008823">"Khubaza i-visual voicemail"</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_message" msgid="1726573227032877573">"Ukubhalwa kweviyisimeyili kuizokhutshazwa uma imigomo nemibandela inqatshawa."</string>
+    <string name="dialer_terms_and_conditions_decline_dialog_downgrade" msgid="6694612247173639685">"Khuyaza ukubhalwa kwevoyisimeyili"</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message" msgid="2200388197966526000">"Ivoyisimeyili izofinyeleleka kuphela ngokushayela ku-*86. Setha iphinikhodi entsha yevoyisimeyili ukuze uqhubeke."</string>
     <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin" msgid="4320664492466296770">"Setha iphinikhodi"</string>
 </resources>
diff --git a/java/com/android/dialer/app/voicemail/error/res/values/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values/strings.xml
index 94d3dba..ad5240b 100644
--- a/java/com/android/dialer/app/voicemail/error/res/values/strings.xml
+++ b/java/com/android/dialer/app/voicemail/error/res/values/strings.xml
@@ -21,20 +21,20 @@
   <string name="voicemail_error_activating_message">You might not receive voicemail notifications until visual voicemail is fully activated. Call voicemail to retrieve new messages until voicemail is fully activated.</string>
 
   <string name="voicemail_error_not_activate_no_signal_title">Can\'t activate visual voicemail</string>
-  <string name="voicemail_error_not_activate_no_signal_message">Make sure your phone has cellular connection and try again.</string>
+  <string name="voicemail_error_not_activate_no_signal_message">Make sure your phone has a mobile network connection and try again.</string>
   <string name="voicemail_error_not_activate_no_signal_airplane_mode_message">Turn off airplane mode and try again.</string>
 
   <string name="voicemail_error_no_signal_title">No connection</string>
-  <string name="voicemail_error_no_signal_message">You won\'t be notified for new voicemails. If you\'re on Wi-Fi, you can check for voicemail by syncing now.</string>
+  <string name="voicemail_error_no_signal_message">You won\'t be notified for new voicemails. If you\'re on Wi\u2011Fi, you can check for voicemail by syncing now.</string>
   <string name="voicemail_error_no_signal_airplane_mode_message">You won\'t be notified for new voicemails. Turn off airplane mode to sync your voicemail.</string>
-  <string name="voicemail_error_no_signal_cellular_required_message">Your phone needs a cellular data connection to check voicemail.</string>
+  <string name="voicemail_error_no_signal_cellular_required_message">Your phone needs a mobile data connection to check voicemail.</string>
 
   <string name="voicemail_error_activation_failed_title">Can\'t activate visual voicemail</string>
   <string name="voicemail_error_activation_failed_message">You can still call to check voicemail.</string>
 
   <string name="voicemail_error_no_data_title">Can\'t update visual voicemail</string>
-  <string name="voicemail_error_no_data_message">Try again when your Wi-Fi or cellular connection is better. You can still call to check voicemail.</string>
-  <string name="voicemail_error_no_data_cellular_required_message">Try again when your cellular data connection is better. You can still call to check voicemail.</string>
+  <string name="voicemail_error_no_data_message">Try again when your Wi\u2011Fi or mobile data connection is better. You can still call to check voicemail.</string>
+  <string name="voicemail_error_no_data_cellular_required_message">Try again when your mobile data connection is better. You can still call to check voicemail.</string>
 
   <string name="voicemail_error_bad_config_title">Can\'t update visual voicemail</string>
   <string name="voicemail_error_bad_config_message">You can still call to check voicemail.</string>
@@ -141,7 +141,10 @@
   <string translatable="false" name="verizon_domestic_customer_support_display_number">(800) 922–0204</string>
 
   <string name="verizon_terms_and_conditions_title">Visual Voicemail Terms and Conditions</string>
-  <string name="verizon_terms_and_conditions_message">You must accept Verizon Wireless\'s terms and conditions to use visual voicemail:\n\n%s</string>
+  <string name="verizon_terms_and_conditions_message">%1$s\n\nYou must accept Verizon Wireless\'s terms and conditions to use visual voicemail:\n\n%2$s</string>
+
+  <string name="dialer_terms_and_conditions_title">Turn on Visual Voicemail</string>
+  <string name="dialer_terms_and_conditions_message">%s</string>
 
   <string translatable="false" name="verizon_terms_and_conditions_1.1_english">
 Visual Voice Mail (VVM) is a service that provides access to voice mail messages directly on the device, without the need to call *86. This service requires traditional Voice Mail but does not support all traditional Voice Mail features, which you can access by dialing *86 from your handset. Use of this feature will be billed on a per-megabyte basis, or according to any data package you have. Mobile to mobile minutes do not apply. Standard rates apply to any calls, emails or messages initiated from Visual Voice Mail.\n
@@ -152,7 +155,7 @@
 \n
 Speech recordings may be collected and stored for a period of 30 days, solely for the purpose of testing and improving transcription technology and performance, subject to the Verizon Wireless Privacy Policy, which can be found at http://www.verizon.com/about/privacy/policy/\n
 \n
-You understand that by selecting ACCEPT, your messages will be stored and anyone in possession of this device will have access to your voice mail. You further understand that your voice mail messages may be stored in electronic format on this device. To limit unauthorized access to your voice mail, you should consider locking your phone when not in use. Not available in all areas or over Wi-Fi.\n
+You understand that by selecting ACCEPT, your messages will be stored and anyone in possession of this device will have access to your voice mail. You further understand that your voice mail messages may be stored in electronic format on this device. To limit unauthorized access to your voice mail, you should consider locking your phone when not in use. Not available in all areas or over Wi\u2011Fi.\n
 \n
 If you do not accept all of these terms and conditions, do not use Visual Voice Mail.  </string>
 
@@ -165,19 +168,35 @@
 \n
 Es posible que reunamos y almacenemos grabaciones de voz durante 30 días, con el único fin de probar y mejorar el rendimiento y la tecnología de la transcripción, sujeto a la Política de privacidad de Verizon Wireless, disponible en http://www.verizon.com/about/privacy/policy/.\n
 \n
-Entiende que, al seleccionar ACEPTAR, sus mensajes se almacenarán, y cualquier persona que disponga de este dispositivo tendrá acceso al buzón de voz. Entiende, además, que los mensajes de voz pueden almacenarse en formato electrónico en este dispositivo. Para limitar el acceso no autorizado al buzón de voz, debe considerar el bloqueo del teléfono cuando no está en uso. No está disponible en todas las áreas ni mediante Wi-Fi.\n
+Entiende que, al seleccionar ACEPTAR, sus mensajes se almacenarán, y cualquier persona que disponga de este dispositivo tendrá acceso al buzón de voz. Entiende, además, que los mensajes de voz pueden almacenarse en formato electrónico en este dispositivo. Para limitar el acceso no autorizado al buzón de voz, debe considerar el bloqueo del teléfono cuando no está en uso. No está disponible en todas las áreas ni mediante Wi\u2011Fi.\n
 \n
 Si no acepta todos estos términos y condiciones, no use el buzón de voz visual.
   </string>
 
+  <string translatable="false" name="dialer_terms_and_conditions_1.0_english">
+  See and listen to your messages, without having to call voicemail.\n\nGet transcripts of your voicemail using Google’s transcription service.
+  </string>
+
+  <string translatable="false" name="dialer_terms_and_conditions_1.0_spanish">
+  ***TRANSLATE TO SPANISH***\nSee and listen to your messages, without having to call voicemail.\n\nGet transcripts of your voicemail using Google’s transcription service.
+  </string>
+
   <string translatable="false" name="verizon_terms_and_conditions_accept_english">Accept</string>
   <string translatable="false" name="verizon_terms_and_conditions_accept_spanish">Aceptar</string>
   <string translatable="false" name="verizon_terms_and_conditions_decline_english">Decline</string>
   <string translatable="false" name="verizon_terms_and_conditions_decline_spanish">Rechazar</string>
 
+  <string translatable="false" name="dialer_terms_and_conditions_accept_english">Turn On</string>
+  <string translatable="false" name="dialer_terms_and_conditions_accept_spanish">Aceptar</string>
+  <string translatable="false" name="dialer_terms_and_conditions_decline_english">No Thanks</string>
+  <string translatable="false" name="dialer_terms_and_conditions_decline_spanish">Rechazar</string>
+
   <string name="verizon_terms_and_conditions_decline_dialog_message">Visual voicemail will be disabled if the terms and conditions are declined.</string>
   <string name="verizon_terms_and_conditions_decline_dialog_downgrade">Disable visual voicemail</string>
 
+  <string name="dialer_terms_and_conditions_decline_dialog_message">Voicemail transcription will be disabled if the terms and conditions are declined.</string>
+  <string name="dialer_terms_and_conditions_decline_dialog_downgrade">Disable voicemail transcription</string>
+
   <string name="verizon_terms_and_conditions_decline_set_pin_dialog_message">Voicemail will only be accessible by calling *86. Set a new voicemail PIN to proceed.</string>
   <string name="verizon_terms_and_conditions_decline_set_pin_dialog_set_pin">Set PIN</string>
-</resources>
\ No newline at end of file
+</resources>
diff --git a/java/com/android/dialer/app/widget/DialpadSearchEmptyContentView.java b/java/com/android/dialer/app/widget/DialpadSearchEmptyContentView.java
index 85fd5ec..5846b1f 100644
--- a/java/com/android/dialer/app/widget/DialpadSearchEmptyContentView.java
+++ b/java/com/android/dialer/app/widget/DialpadSearchEmptyContentView.java
@@ -21,6 +21,7 @@
 import android.widget.LinearLayout;
 import com.android.dialer.app.R;
 import com.android.dialer.util.OrientationUtil;
+import com.android.dialer.widget.EmptyContentView;
 
 /** Empty content view to be shown when dialpad is visible. */
 public class DialpadSearchEmptyContentView extends EmptyContentView {
diff --git a/java/com/android/dialer/app/widget/SearchEditTextLayout.java b/java/com/android/dialer/app/widget/SearchEditTextLayout.java
index f83c482..95bd12a 100644
--- a/java/com/android/dialer/app/widget/SearchEditTextLayout.java
+++ b/java/com/android/dialer/app/widget/SearchEditTextLayout.java
@@ -52,7 +52,6 @@
   private View mVoiceSearchButtonView;
   private View mOverflowButtonView;
   private View mBackButtonView;
-  private View mExpandedSearchBox;
   private View mClearButtonView;
 
   private ValueAnimator mAnimator;
@@ -90,20 +89,27 @@
     mVoiceSearchButtonView = findViewById(R.id.voice_search_button);
     mOverflowButtonView = findViewById(R.id.dialtacts_options_menu_button);
     mBackButtonView = findViewById(R.id.search_back_button);
-    mExpandedSearchBox = findViewById(R.id.search_box_expanded);
+    mBackButtonView
+        .getResources()
+        .getDrawable(R.drawable.quantum_ic_arrow_back_vd_theme_24, null)
+        .setAutoMirrored(true);
     mClearButtonView = findViewById(R.id.search_close_button);
 
-    // Convert a long click into a click to expand the search box, and then long click on the
-    // search view. This accelerates the long-press scenario for copy/paste.
+    // Convert a long click into a click to expand the search box. Touch events are also
+    // forwarded to the searchView. This accelerates the long-press scenario for copy/paste.
     mCollapsed.setOnLongClickListener(
         new OnLongClickListener() {
           @Override
           public boolean onLongClick(View view) {
             mCollapsed.performClick();
-            mSearchView.performLongClick();
             return false;
           }
         });
+    mCollapsed.setOnTouchListener(
+        (v, event) -> {
+          mSearchView.onTouchEvent(event);
+          return false;
+        });
 
     mSearchView.setOnFocusChangeListener(
         new OnFocusChangeListener() {
@@ -212,7 +218,7 @@
       AnimUtils.crossFadeViews(mExpanded, mCollapsed, ANIMATION_DURATION);
       mAnimator = ValueAnimator.ofFloat(EXPAND_MARGIN_FRACTION_START, 0f);
       setMargins(EXPAND_MARGIN_FRACTION_START);
-      prepareAnimator(true);
+      prepareAnimator();
     } else {
       mExpanded.setVisibility(View.VISIBLE);
       mExpanded.setAlpha(1);
@@ -241,7 +247,7 @@
     if (animate) {
       AnimUtils.crossFadeViews(mCollapsed, mExpanded, ANIMATION_DURATION);
       mAnimator = ValueAnimator.ofFloat(0f, 1f);
-      prepareAnimator(false);
+      prepareAnimator();
     } else {
       mCollapsed.setVisibility(View.VISIBLE);
       mCollapsed.setAlpha(1);
@@ -279,7 +285,7 @@
     }
   }
 
-  private void prepareAnimator(final boolean expand) {
+  private void prepareAnimator() {
     if (mAnimator != null) {
       mAnimator.cancel();
     }
diff --git a/java/com/android/dialer/backup/DialerBackupAgent.java b/java/com/android/dialer/backup/DialerBackupAgent.java
index dec1ca1..40de8e2 100644
--- a/java/com/android/dialer/backup/DialerBackupAgent.java
+++ b/java/com/android/dialer/backup/DialerBackupAgent.java
@@ -34,8 +34,8 @@
 import android.telecom.PhoneAccountHandle;
 import android.util.Pair;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.telecom.TelecomUtil;
diff --git a/java/com/android/dialer/backup/DialerBackupUtils.java b/java/com/android/dialer/backup/DialerBackupUtils.java
index 17e82e4..fe714f6 100644
--- a/java/com/android/dialer/backup/DialerBackupUtils.java
+++ b/java/com/android/dialer/backup/DialerBackupUtils.java
@@ -31,8 +31,8 @@
 import android.telecom.TelecomManager;
 import android.util.Pair;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.voicemail.VoicemailComponent;
 import com.google.common.io.ByteStreams;
 import com.google.common.io.Files;
diff --git a/java/com/android/dialer/binary/aosp/AospDialerRootComponent.java b/java/com/android/dialer/binary/aosp/AospDialerRootComponent.java
index 595401c..6a7c588 100644
--- a/java/com/android/dialer/binary/aosp/AospDialerRootComponent.java
+++ b/java/com/android/dialer/binary/aosp/AospDialerRootComponent.java
@@ -18,6 +18,8 @@
 
 import com.android.dialer.binary.basecomponent.BaseDialerRootComponent;
 import com.android.dialer.calllog.CallLogModule;
+import com.android.dialer.common.concurrent.DialerExecutorModule;
+import com.android.dialer.configprovider.SharedPrefConfigProviderModule;
 import com.android.dialer.enrichedcall.stub.StubEnrichedCallModule;
 import com.android.dialer.inject.ContextModule;
 import com.android.dialer.lightbringer.stub.StubLightbringerModule;
@@ -34,6 +36,8 @@
   modules = {
     CallLogModule.class,
     ContextModule.class,
+    DialerExecutorModule.class,
+    SharedPrefConfigProviderModule.class,
     SimulatorModule.class,
     StubCallLocationModule.class,
     StubEnrichedCallModule.class,
diff --git a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml b/java/com/android/dialer/binary/aosp/testing/AndroidManifest.xml
similarity index 65%
copy from java/com/android/incallui/res/drawable/img_conference_automirrored.xml
copy to java/com/android/dialer/binary/aosp/testing/AndroidManifest.xml
index 78b2876..15870cb 100644
--- a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml
+++ b/java/com/android/dialer/binary/aosp/testing/AndroidManifest.xml
@@ -1,7 +1,5 @@
-<?xml version="1.0" encoding="utf-8"?>
-
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -16,6 +14,11 @@
   ~ limitations under the License
   -->
 
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/img_conference"/>
\ No newline at end of file
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.android.dialer.binary.aosp.testing">
+
+  <application>
+    <activity android:name="com.android.dialer.binary.aosp.testing.TestActivity"/>
+  </application>
+
+</manifest>
diff --git a/java/com/android/dialer/common/ConfigProviderFactory.java b/java/com/android/dialer/binary/aosp/testing/TestActivity.java
similarity index 62%
rename from java/com/android/dialer/common/ConfigProviderFactory.java
rename to java/com/android/dialer/binary/aosp/testing/TestActivity.java
index aeb4f30..9cb26da 100644
--- a/java/com/android/dialer/common/ConfigProviderFactory.java
+++ b/java/com/android/dialer/binary/aosp/testing/TestActivity.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 The Android Open Source Project
+ * Copyright (C) 2017 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,13 +14,12 @@
  * limitations under the License
  */
 
-package com.android.dialer.common;
+package com.android.dialer.binary.aosp.testing;
+
+import android.app.Activity;
 
 /**
- * This interface should be implementated by the Application subclass. It allows dialer code to get
- * references to a config provider.
+ * An empty Activity to use in tests. This can be useful when UI needs to be tested outside an
+ * Activity, either as a background or to keep the test framework running.
  */
-public interface ConfigProviderFactory {
-
-  ConfigProvider getConfigProvider();
-}
+public class TestActivity extends Activity {}
diff --git a/java/com/android/dialer/binary/basecomponent/BaseDialerRootComponent.java b/java/com/android/dialer/binary/basecomponent/BaseDialerRootComponent.java
index 2deb7fd..8ac071f 100644
--- a/java/com/android/dialer/binary/basecomponent/BaseDialerRootComponent.java
+++ b/java/com/android/dialer/binary/basecomponent/BaseDialerRootComponent.java
@@ -17,8 +17,12 @@
 package com.android.dialer.binary.basecomponent;
 
 import com.android.dialer.calllog.CallLogComponent;
+import com.android.dialer.calllog.database.CallLogDatabaseComponent;
+import com.android.dialer.common.concurrent.DialerExecutorComponent;
+import com.android.dialer.configprovider.ConfigProviderComponent;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.lightbringer.LightbringerComponent;
+import com.android.dialer.main.MainComponent;
 import com.android.dialer.simulator.SimulatorComponent;
 import com.android.incallui.calllocation.CallLocationComponent;
 import com.android.incallui.maps.MapsComponent;
@@ -31,6 +35,10 @@
 public interface BaseDialerRootComponent
     extends CallLocationComponent.HasComponent,
         CallLogComponent.HasComponent,
+        CallLogDatabaseComponent.HasComponent,
+        ConfigProviderComponent.HasComponent,
+        DialerExecutorComponent.HasComponent,
+        MainComponent.HasComponent,
         EnrichedCallComponent.HasComponent,
         MapsComponent.HasComponent,
         SimulatorComponent.HasComponent,
diff --git a/java/com/android/dialer/binary/common/DialerApplication.java b/java/com/android/dialer/binary/common/DialerApplication.java
index a4c2e7d..08666a2 100644
--- a/java/com/android/dialer/binary/common/DialerApplication.java
+++ b/java/com/android/dialer/binary/common/DialerApplication.java
@@ -20,6 +20,7 @@
 import android.os.StrictMode;
 import android.os.Trace;
 import android.support.annotation.NonNull;
+import android.support.v4.os.BuildCompat;
 import com.android.dialer.blocking.BlockedNumbersAutoMigrator;
 import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler;
 import com.android.dialer.buildtype.BuildType;
@@ -49,14 +50,17 @@
     CallLogComponent.get(this).callLogFramework().registerContentObservers(getApplicationContext());
     PersistentLogger.initialize(this);
 
-    NotificationChannelManager.getInstance().firstInitIfNeeded(this);
+    if (BuildCompat.isAtLeastO()) {
+      NotificationChannelManager.initChannels(this);
+    }
     Trace.endSection();
   }
 
   private void enableStrictMode() {
     StrictMode.setThreadPolicy(
-        new StrictMode.ThreadPolicy.Builder().detectAll().penaltyDeath().build());
-    StrictMode.setVmPolicy(new StrictMode.VmPolicy.Builder().detectAll().penaltyDeath().build());
+        new StrictMode.ThreadPolicy.Builder().detectAll().penaltyLog().penaltyDeath().build());
+    StrictMode.setVmPolicy(
+        new StrictMode.VmPolicy.Builder().detectAll().penaltyLog().penaltyDeath().build());
   }
 
   /**
diff --git a/java/com/android/dialer/blocking/FilteredNumbersUtil.java b/java/com/android/dialer/blocking/FilteredNumbersUtil.java
index cdcf1f7..9e0c23c 100644
--- a/java/com/android/dialer/blocking/FilteredNumbersUtil.java
+++ b/java/com/android/dialer/blocking/FilteredNumbersUtil.java
@@ -27,6 +27,7 @@
 import android.provider.Settings;
 import android.support.annotation.Nullable;
 import android.support.annotation.VisibleForTesting;
+import android.support.v4.os.BuildCompat;
 import android.support.v4.os.UserManagerCompat;
 import android.telephony.PhoneNumberUtils;
 import android.text.TextUtils;
@@ -35,8 +36,7 @@
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.logging.InteractionEvent;
 import com.android.dialer.logging.Logger;
-import com.android.dialer.notification.NotificationChannelManager;
-import com.android.dialer.notification.NotificationChannelManager.Channel;
+import com.android.dialer.notification.NotificationChannelId;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.PermissionsUtil;
 import java.util.concurrent.TimeUnit;
@@ -45,8 +45,7 @@
 public class FilteredNumbersUtil {
 
   public static final String CALL_BLOCKING_NOTIFICATION_TAG = "call_blocking";
-  public static final int CALL_BLOCKING_DISABLED_BY_EMERGENCY_CALL_NOTIFICATION_ID =
-      R.id.notification_call_blocking_disabled_by_emergency_call;
+  public static final int CALL_BLOCKING_DISABLED_BY_EMERGENCY_CALL_NOTIFICATION_ID = 10;
   // Pref key for storing the time of end of the last emergency call in milliseconds after epoch.\
   @VisibleForTesting
   public static final String LAST_EMERGENCY_CALL_MS_PREF_KEY = "last_emergency_call_ms";
@@ -254,7 +253,9 @@
                         context.getString(R.string.call_blocking_disabled_notification_text))
                     .setAutoCancel(true);
 
-            NotificationChannelManager.applyChannel(builder, context, Channel.DEFAULT, null);
+            if (BuildCompat.isAtLeastO()) {
+              builder.setChannelId(NotificationChannelId.DEFAULT);
+            }
             builder.setContentIntent(
                 PendingIntent.getActivity(
                     context,
diff --git a/java/com/android/dialer/callcomposer/AndroidManifest.xml b/java/com/android/dialer/callcomposer/AndroidManifest.xml
index 369db6f..cce7110 100644
--- a/java/com/android/dialer/callcomposer/AndroidManifest.xml
+++ b/java/com/android/dialer/callcomposer/AndroidManifest.xml
@@ -17,7 +17,7 @@
   xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.android.dialer.callcomposer">
 
-  <application>
+  <application android:theme="@style/Theme.AppCompat">
     <activity
       android:name="com.android.dialer.callcomposer.CallComposerActivity"
       android:exported="true"
diff --git a/java/com/android/dialer/callcomposer/CallComposerActivity.java b/java/com/android/dialer/callcomposer/CallComposerActivity.java
index 074fc6d..63d29b5 100644
--- a/java/com/android/dialer/callcomposer/CallComposerActivity.java
+++ b/java/com/android/dialer/callcomposer/CallComposerActivity.java
@@ -26,10 +26,11 @@
 import android.content.res.Configuration;
 import android.net.Uri;
 import android.os.Bundle;
+import android.os.Handler;
 import android.support.annotation.NonNull;
+import android.support.annotation.VisibleForTesting;
 import android.support.v4.content.ContextCompat;
 import android.support.v4.content.FileProvider;
-import android.support.v4.view.ViewPager;
 import android.support.v4.view.ViewPager.OnPageChangeListener;
 import android.support.v4.view.animation.FastOutSlowInInterpolator;
 import android.support.v7.app.AppCompatActivity;
@@ -37,13 +38,12 @@
 import android.util.Base64;
 import android.view.View;
 import android.view.View.OnClickListener;
-import android.view.View.OnLayoutChangeListener;
 import android.view.ViewAnimationUtils;
 import android.view.ViewGroup;
-import android.view.WindowManager.LayoutParams;
 import android.widget.FrameLayout;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
+import android.widget.ProgressBar;
 import android.widget.QuickContactBadge;
 import android.widget.RelativeLayout;
 import android.widget.TextView;
@@ -55,7 +55,10 @@
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.UiUtil;
 import com.android.dialer.common.concurrent.DialerExecutors;
+import com.android.dialer.common.concurrent.ThreadUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.constants.Constants;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
 import com.android.dialer.enrichedcall.EnrichedCallManager.State;
@@ -68,6 +71,7 @@
 import com.android.dialer.telecom.TelecomUtil;
 import com.android.dialer.util.ViewUtil;
 import com.android.dialer.widget.DialerToolbar;
+import com.android.dialer.widget.LockableViewPager;
 import com.google.protobuf.InvalidProtocolBufferException;
 import java.io.File;
 
@@ -86,7 +90,6 @@
     implements OnClickListener,
         OnPageChangeListener,
         CallComposerListener,
-        OnLayoutChangeListener,
         EnrichedCallManager.StateChangedListener {
 
   public static final String KEY_CONTACT_NAME = "contact_name";
@@ -98,11 +101,19 @@
   private static final String ARG_CALL_COMPOSER_CONTACT_BASE64 = "CALL_COMPOSER_CONTACT_BASE64";
 
   private static final String ENTRANCE_ANIMATION_KEY = "entrance_animation_key";
+  private static final String SEND_AND_CALL_READY_KEY = "send_and_call_ready_key";
   private static final String CURRENT_INDEX_KEY = "current_index_key";
   private static final String VIEW_PAGER_STATE_KEY = "view_pager_state_key";
   private static final String SESSION_ID_KEY = "session_id_key";
 
-  private CallComposerContact contact;
+  private final Handler timeoutHandler = ThreadUtil.getUiThreadHandler();
+  private final Runnable sessionStartedTimedOut =
+      () -> {
+        LogUtil.i("CallComposerActivity.sessionStartedTimedOutRunnable", "session never started");
+        setFailedResultAndFinish();
+      };
+
+  private DialerContact contact;
   private Long sessionId = Session.NO_SESSION_ID;
 
   private TextView nameView;
@@ -113,10 +124,11 @@
   private View sendAndCall;
   private TextView sendAndCallText;
 
+  private ProgressBar loading;
   private ImageView cameraIcon;
   private ImageView galleryIcon;
   private ImageView messageIcon;
-  private ViewPager pager;
+  private LockableViewPager pager;
   private CallComposerPagerAdapter adapter;
 
   private FrameLayout background;
@@ -126,10 +138,10 @@
   private boolean shouldAnimateEntrance = true;
   private boolean inFullscreenMode;
   private boolean isSendAndCallHidingOrHidden = true;
-  private boolean layoutChanged;
+  private boolean sendAndCallReady;
   private int currentIndex;
 
-  public static Intent newIntent(Context context, CallComposerContact contact) {
+  public static Intent newIntent(Context context, DialerContact contact) {
     Intent intent = new Intent(context, CallComposerActivity.class);
     ProtoParsers.put(intent, ARG_CALL_COMPOSER_CONTACT, contact);
     return intent;
@@ -140,19 +152,20 @@
     super.onCreate(savedInstanceState);
     setContentView(R.layout.call_composer_activity);
 
-    nameView = (TextView) findViewById(R.id.contact_name);
-    numberView = (TextView) findViewById(R.id.phone_number);
-    contactPhoto = (QuickContactBadge) findViewById(R.id.contact_photo);
-    cameraIcon = (ImageView) findViewById(R.id.call_composer_camera);
-    galleryIcon = (ImageView) findViewById(R.id.call_composer_photo);
-    messageIcon = (ImageView) findViewById(R.id.call_composer_message);
-    contactContainer = (RelativeLayout) findViewById(R.id.contact_bar);
-    pager = (ViewPager) findViewById(R.id.call_composer_view_pager);
-    background = (FrameLayout) findViewById(R.id.background);
-    windowContainer = (LinearLayout) findViewById(R.id.call_composer_container);
-    toolbar = (DialerToolbar) findViewById(R.id.toolbar);
+    nameView = findViewById(R.id.contact_name);
+    numberView = findViewById(R.id.phone_number);
+    contactPhoto = findViewById(R.id.contact_photo);
+    cameraIcon = findViewById(R.id.call_composer_camera);
+    galleryIcon = findViewById(R.id.call_composer_photo);
+    messageIcon = findViewById(R.id.call_composer_message);
+    contactContainer = findViewById(R.id.contact_bar);
+    pager = findViewById(R.id.call_composer_view_pager);
+    background = findViewById(R.id.background);
+    windowContainer = findViewById(R.id.call_composer_container);
+    toolbar = findViewById(R.id.toolbar);
     sendAndCall = findViewById(R.id.send_and_call_button);
-    sendAndCallText = (TextView) findViewById(R.id.send_and_call_text);
+    sendAndCallText = findViewById(R.id.send_and_call_text);
+    loading = findViewById(R.id.call_composer_loading);
 
     interpolator = new FastOutSlowInInterpolator();
     adapter =
@@ -162,7 +175,6 @@
     pager.setAdapter(adapter);
     pager.addOnPageChangeListener(this);
 
-    background.addOnLayoutChangeListener(this);
     cameraIcon.setOnClickListener(this);
     galleryIcon.setOnClickListener(this);
     messageIcon.setOnClickListener(this);
@@ -172,17 +184,13 @@
 
     if (savedInstanceState != null) {
       shouldAnimateEntrance = savedInstanceState.getBoolean(ENTRANCE_ANIMATION_KEY);
+      sendAndCallReady = savedInstanceState.getBoolean(SEND_AND_CALL_READY_KEY);
       pager.onRestoreInstanceState(savedInstanceState.getParcelable(VIEW_PAGER_STATE_KEY));
       currentIndex = savedInstanceState.getInt(CURRENT_INDEX_KEY);
       sessionId = savedInstanceState.getLong(SESSION_ID_KEY, Session.NO_SESSION_ID);
       onPageSelected(currentIndex);
     }
 
-    int adjustMode =
-        isLandscapeLayout()
-            ? LayoutParams.SOFT_INPUT_ADJUST_PAN
-            : LayoutParams.SOFT_INPUT_ADJUST_RESIZE;
-    getWindow().setSoftInputMode(adjustMode);
     // Since we can't animate the views until they are ready to be drawn, we use this listener to
     // track that and animate the call compose UI as soon as it's ready.
     ViewUtil.doOnPreDraw(
@@ -221,6 +229,7 @@
   protected void onPause() {
     super.onPause();
     getEnrichedCallManager().unregisterStateChangedListener(this);
+    timeoutHandler.removeCallbacks(sessionStartedTimedOut);
   }
 
   @Override
@@ -240,12 +249,36 @@
         "state: %s",
         StateExtension.toString(state));
 
-    if (state == EnrichedCallManager.STATE_START_FAILED
-        || state == EnrichedCallManager.STATE_CLOSED) {
-      setFailedResultAndFinish();
+    switch (state) {
+      case EnrichedCallManager.STATE_STARTING:
+        timeoutHandler.postDelayed(sessionStartedTimedOut, getSessionStartedTimeoutMillis());
+        if (sendAndCallReady) {
+          showLoadingUi();
+        }
+        break;
+      case EnrichedCallManager.STATE_STARTED:
+        timeoutHandler.removeCallbacks(sessionStartedTimedOut);
+        if (sendAndCallReady) {
+          sendAndCall();
+        }
+        break;
+      case EnrichedCallManager.STATE_START_FAILED:
+      case EnrichedCallManager.STATE_CLOSED:
+        setFailedResultAndFinish();
+        break;
+      case EnrichedCallManager.STATE_MESSAGE_FAILED:
+      case EnrichedCallManager.STATE_MESSAGE_SENT:
+      case EnrichedCallManager.STATE_NONE:
+      default:
+        break;
     }
   }
 
+  @VisibleForTesting
+  public long getSessionStartedTimeoutMillis() {
+    return ConfigProviderBindings.get(this).getLong("ec_session_started_timeout", 10_000);
+  }
+
   @Override
   protected void onNewIntent(Intent intent) {
     super.onNewIntent(intent);
@@ -264,13 +297,15 @@
     } else if (view == sendAndCall) {
       sendAndCall();
     } else {
-      Assert.fail();
+      throw Assert.createIllegalStateFailException("View on click not implemented: " + view);
     }
   }
 
   @Override
   public void sendAndCall() {
     if (!sessionReady()) {
+      sendAndCallReady = true;
+      showLoadingUi();
       LogUtil.i("CallComposerActivity.onClick", "sendAndCall pressed, but the session isn't ready");
       Logger.get(this)
           .logImpression(
@@ -338,13 +373,14 @@
     }
   }
 
+  private void showLoadingUi() {
+    loading.setVisibility(View.VISIBLE);
+    pager.setSwipingLocked(true);
+  }
+
   private boolean sessionReady() {
     Session session = getEnrichedCallManager().getSession(sessionId);
-    if (session == null) {
-      return false;
-    }
-
-    return session.getState() == EnrichedCallManager.STATE_STARTED;
+    return session != null && session.getState() == EnrichedCallManager.STATE_STARTED;
   }
 
   private void placeRCSCall(MultimediaData.Builder builder) {
@@ -376,10 +412,6 @@
     }
     if (currentIndex == CallComposerPagerAdapter.INDEX_MESSAGE) {
       UiUtil.hideKeyboardFrom(this, windowContainer);
-    } else if (position == CallComposerPagerAdapter.INDEX_MESSAGE
-        && inFullscreenMode
-        && !isLandscapeLayout()) {
-      UiUtil.openKeyboardFrom(this, windowContainer);
     }
     currentIndex = position;
     CallComposerFragment fragment = (CallComposerFragment) adapter.instantiateItem(pager, position);
@@ -398,6 +430,7 @@
     super.onSaveInstanceState(outState);
     outState.putParcelable(VIEW_PAGER_STATE_KEY, pager.onSaveInstanceState());
     outState.putBoolean(ENTRANCE_ANIMATION_KEY, shouldAnimateEntrance);
+    outState.putBoolean(SEND_AND_CALL_READY_KEY, sendAndCallReady);
     outState.putInt(CURRENT_INDEX_KEY, currentIndex);
     outState.putLong(SESSION_ID_KEY, sessionId);
   }
@@ -424,28 +457,6 @@
     animateSendAndCall(fragment.shouldHide());
   }
 
-  // To detect when the keyboard changes.
-  @Override
-  public void onLayoutChange(
-      View view,
-      int left,
-      int top,
-      int right,
-      int bottom,
-      int oldLeft,
-      int oldTop,
-      int oldRight,
-      int oldBottom) {
-    // To prevent infinite layout change loops
-    if (layoutChanged) {
-      layoutChanged = false;
-      return;
-    }
-
-    layoutChanged = true;
-    showFullscreen(contactContainer.getTop() < 0 || inFullscreenMode);
-  }
-
   /**
    * Reads arguments from the fragment arguments and populates the necessary instance variables.
    * Copied from {@link com.android.contacts.common.dialog.CallSubjectDialog}.
@@ -456,14 +467,14 @@
       byte[] bytes =
           Base64.decode(intent.getStringExtra(ARG_CALL_COMPOSER_CONTACT_BASE64), Base64.DEFAULT);
       try {
-        contact = CallComposerContact.parseFrom(bytes);
+        contact = DialerContact.parseFrom(bytes);
       } catch (InvalidProtocolBufferException e) {
         throw Assert.createAssertionFailException(e.toString());
       }
     } else {
       contact =
           ProtoParsers.getTrusted(
-              intent, ARG_CALL_COMPOSER_CONTACT, CallComposerContact.getDefaultInstance());
+              intent, ARG_CALL_COMPOSER_CONTACT, DialerContact.getDefaultInstance());
     }
     updateContactInfo();
   }
diff --git a/java/com/android/dialer/callcomposer/CameraComposerFragment.java b/java/com/android/dialer/callcomposer/CameraComposerFragment.java
index f65207f..1002b27 100644
--- a/java/com/android/dialer/callcomposer/CameraComposerFragment.java
+++ b/java/com/android/dialer/callcomposer/CameraComposerFragment.java
@@ -17,13 +17,14 @@
 package com.android.dialer.callcomposer;
 
 import android.Manifest;
-import android.Manifest.permission;
 import android.content.Intent;
+import android.content.SharedPreferences;
 import android.content.pm.PackageManager;
 import android.graphics.drawable.Animatable;
 import android.hardware.Camera.CameraInfo;
 import android.net.Uri;
 import android.os.Bundle;
+import android.preference.PreferenceManager;
 import android.provider.Settings;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
@@ -56,6 +57,7 @@
 public class CameraComposerFragment extends CallComposerFragment
     implements CameraManagerListener, OnClickListener, CameraManager.MediaCallback {
 
+  private static final String CAMERA_PRIVACY_PREF = "camera_privacy_permission";
   private static final String CAMERA_DIRECTION_KEY = "camera_direction";
   private static final String CAMERA_URI_KEY = "camera_key";
 
@@ -89,17 +91,17 @@
       LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle bundle) {
     View root = inflater.inflate(R.layout.fragment_camera_composer, container, false);
     permissionView = root.findViewById(R.id.permission_view);
-    loading = (ProgressBar) root.findViewById(R.id.loading);
-    cameraView = (CameraMediaChooserView) root.findViewById(R.id.camera_view);
+    loading = root.findViewById(R.id.loading);
+    cameraView = root.findViewById(R.id.camera_view);
     shutter = cameraView.findViewById(R.id.camera_shutter_visual);
-    exitFullscreen = (ImageButton) cameraView.findViewById(R.id.camera_exit_fullscreen);
-    fullscreen = (ImageButton) cameraView.findViewById(R.id.camera_fullscreen);
-    swapCamera = (ImageButton) cameraView.findViewById(R.id.swap_camera_button);
-    capture = (ImageButton) cameraView.findViewById(R.id.camera_capture_button);
-    cancel = (ImageButton) cameraView.findViewById(R.id.camera_cancel_button);
-    focus = (RenderOverlay) cameraView.findViewById(R.id.focus_visual);
-    preview = (CameraPreviewHost) cameraView.findViewById(R.id.camera_preview);
-    previewImageView = (ImageView) root.findViewById(R.id.preview_image_view);
+    exitFullscreen = cameraView.findViewById(R.id.camera_exit_fullscreen);
+    fullscreen = cameraView.findViewById(R.id.camera_fullscreen);
+    swapCamera = cameraView.findViewById(R.id.swap_camera_button);
+    capture = cameraView.findViewById(R.id.camera_capture_button);
+    cancel = cameraView.findViewById(R.id.camera_cancel_button);
+    focus = cameraView.findViewById(R.id.focus_visual);
+    preview = cameraView.findViewById(R.id.camera_preview);
+    previewImageView = root.findViewById(R.id.preview_image_view);
 
     exitFullscreen.setOnClickListener(this);
     fullscreen.setOnClickListener(this);
@@ -107,11 +109,12 @@
     capture.setOnClickListener(this);
     cancel.setOnClickListener(this);
 
-    if (!PermissionsUtil.hasPermission(getContext(), permission.CAMERA)) {
+
+    if (!PermissionsUtil.hasCameraPermissions(getContext())) {
       LogUtil.i("CameraComposerFragment.onCreateView", "Permission view shown.");
       Logger.get(getContext()).logImpression(DialerImpression.Type.CAMERA_PERMISSION_DISPLAYED);
-      ImageView permissionImage = (ImageView) permissionView.findViewById(R.id.permission_icon);
-      TextView permissionText = (TextView) permissionView.findViewById(R.id.permission_text);
+      ImageView permissionImage = permissionView.findViewById(R.id.permission_icon);
+      TextView permissionText = permissionView.findViewById(R.id.permission_text);
       allowPermission = permissionView.findViewById(R.id.allow);
 
       allowPermission.setOnClickListener(this);
@@ -131,6 +134,12 @@
   }
 
   private void setupCamera() {
+    SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(getContext());
+    if (!preferences.getBoolean(CAMERA_PRIVACY_PREF, false)) {
+      Toast.makeText(getContext(), getString(R.string.camera_privacy_text), Toast.LENGTH_LONG)
+          .show();
+      preferences.edit().putBoolean(CAMERA_PRIVACY_PREF, true).apply();
+    }
     CameraManager.get().setListener(this);
     preview.setShown();
     CameraManager.get().setRenderOverlay(focus);
@@ -336,6 +345,12 @@
       previewImageView.setVisibility(View.GONE);
     }
 
+    if (cameraDirection == CameraInfo.CAMERA_FACING_FRONT) {
+      swapCamera.setContentDescription(getString(R.string.description_camera_switch_camera_rear));
+    } else {
+      swapCamera.setContentDescription(getString(R.string.description_camera_switch_camera_facing));
+    }
+
     if (cameraUri == null && isCameraAvailable) {
       CameraManager.get().resetPreview();
       cancel.setVisibility(View.GONE);
diff --git a/java/com/android/dialer/callcomposer/GalleryCursorLoader.java b/java/com/android/dialer/callcomposer/GalleryCursorLoader.java
index f9990e1..39d6a4a 100644
--- a/java/com/android/dialer/callcomposer/GalleryCursorLoader.java
+++ b/java/com/android/dialer/callcomposer/GalleryCursorLoader.java
@@ -28,7 +28,7 @@
 public class GalleryCursorLoader extends CursorLoader {
   public static final String MEDIA_SCANNER_VOLUME_EXTERNAL = "external";
   public static final String[] ACCEPTABLE_IMAGE_TYPES =
-      new String[] {"image/jpeg", "image/jpg", "image/png", "image/gif", "image/webp"};
+      new String[] {"image/jpeg", "image/jpg", "image/png", "image/webp"};
 
   private static final Uri STORAGE_URI = Files.getContentUri(MEDIA_SCANNER_VOLUME_EXTERNAL);
   private static final String SORT_ORDER = Media.DATE_MODIFIED + " DESC";
@@ -47,7 +47,7 @@
   @SuppressLint("DefaultLocale")
   private static String createSelection() {
     return String.format(
-        "mime_type IN ('image/jpeg', 'image/jpg', 'image/png', 'image/gif', 'image/webp')"
+        "mime_type IN ('image/jpeg', 'image/jpg', 'image/png', 'image/webp')"
             + " AND media_type in (%d)",
         FileColumns.MEDIA_TYPE_IMAGE);
   }
diff --git a/java/com/android/dialer/callcomposer/MessageComposerFragment.java b/java/com/android/dialer/callcomposer/MessageComposerFragment.java
index 2a342bb..392f6e7 100644
--- a/java/com/android/dialer/callcomposer/MessageComposerFragment.java
+++ b/java/com/android/dialer/callcomposer/MessageComposerFragment.java
@@ -24,11 +24,8 @@
 import android.text.TextWatcher;
 import android.view.KeyEvent;
 import android.view.LayoutInflater;
-import android.view.MotionEvent;
 import android.view.View;
 import android.view.View.OnClickListener;
-import android.view.View.OnLongClickListener;
-import android.view.View.OnTouchListener;
 import android.view.ViewGroup;
 import android.widget.EditText;
 import android.widget.TextView;
@@ -36,17 +33,12 @@
 
 /** Fragment used to compose call with message fragment. */
 public class MessageComposerFragment extends CallComposerFragment
-    implements OnClickListener,
-        TextWatcher,
-        OnTouchListener,
-        OnLongClickListener,
-        OnEditorActionListener {
+    implements OnClickListener, TextWatcher, OnEditorActionListener {
   private static final String CHAR_LIMIT_KEY = "char_limit";
 
   public static final int NO_CHAR_LIMIT = -1;
 
   private EditText customMessage;
-  private boolean isLongClick = false;
   private int charLimit;
 
   public static MessageComposerFragment newInstance(int charLimit) {
@@ -73,8 +65,6 @@
     customMessage = (EditText) view.findViewById(R.id.custom_message);
 
     urgent.setOnClickListener(this);
-    customMessage.setOnTouchListener(this);
-    customMessage.setOnLongClickListener(this);
     customMessage.addTextChangedListener(this);
     customMessage.setOnEditorActionListener(this);
     if (charLimit != NO_CHAR_LIMIT) {
@@ -118,30 +108,6 @@
     getListener().composeCall(this);
   }
 
-  /**
-   * EditTexts take two clicks to dispatch an onClick() event, so instead we add an onTouchListener
-   * to listen for them. The caveat to this is that it also requires listening for onLongClicks to
-   * distinguish whether a MotionEvent came from a click or a long click.
-   */
-  @Override
-  public boolean onTouch(View view, MotionEvent event) {
-    if (event.getAction() == MotionEvent.ACTION_UP) {
-      if (isLongClick) {
-        isLongClick = false;
-      } else {
-        getListener().showFullscreen(true);
-      }
-    }
-    view.performClick();
-    return false;
-  }
-
-  @Override
-  public boolean onLongClick(View v) {
-    isLongClick = true;
-    return false;
-  }
-
   @Override
   public boolean shouldHide() {
     return TextUtils.isEmpty(getMessage());
diff --git a/java/com/android/dialer/callcomposer/camera/CameraManager.java b/java/com/android/dialer/callcomposer/camera/CameraManager.java
index 4cc08ba..5915ce3 100644
--- a/java/com/android/dialer/callcomposer/camera/CameraManager.java
+++ b/java/com/android/dialer/callcomposer/camera/CameraManager.java
@@ -509,62 +509,61 @@
     }.execute();
   }
 
-  /** Updates the orientation of the camera to match the orientation of the device */
-  private void updateCameraOrientation() {
-    if (mCamera == null || mCameraPreview == null || mTakingPicture) {
-      return;
+  /**
+   * Updates the orientation of the {@link Camera} w.r.t. the orientation of the device and the
+   * orientation that the physical camera is mounted on the device.
+   *
+   * @param camera that needs to be reorientated
+   * @param screenRotation rotation of the physical device
+   * @param cameraOrientation {@link CameraInfo#orientation}
+   * @param cameraIsFrontFacing {@link CameraInfo#CAMERA_FACING_FRONT}
+   * @return rotation that images returned from {@link
+   *     android.hardware.Camera.PictureCallback#onPictureTaken(byte[], Camera)} will be rotated.
+   */
+  @VisibleForTesting
+  static int updateCameraRotation(
+      @NonNull Camera camera,
+      int screenRotation,
+      int cameraOrientation,
+      boolean cameraIsFrontFacing) {
+    Assert.isNotNull(camera);
+    Assert.checkArgument(cameraOrientation % 90 == 0);
+
+    int rotation = screenRotationToDegress(screenRotation);
+    boolean portrait = rotation == 0 || rotation == 180;
+
+    if (!portrait && !cameraIsFrontFacing) {
+      rotation += 180;
+    }
+    rotation += cameraOrientation;
+    rotation %= 360;
+
+    // Rotate the camera
+    if (portrait && cameraIsFrontFacing) {
+      camera.setDisplayOrientation((rotation + 180) % 360);
+    } else {
+      camera.setDisplayOrientation(rotation);
     }
 
-    final WindowManager windowManager =
-        (WindowManager) mCameraPreview.getContext().getSystemService(Context.WINDOW_SERVICE);
+    // Rotate the images returned when a picture is taken
+    Camera.Parameters params = camera.getParameters();
+    params.setRotation(rotation);
+    camera.setParameters(params);
+    return rotation;
+  }
 
-    int degrees;
-    switch (windowManager.getDefaultDisplay().getRotation()) {
+  private static int screenRotationToDegress(int screenRotation) {
+    switch (screenRotation) {
       case Surface.ROTATION_0:
-        degrees = 0;
-        break;
+        return 0;
       case Surface.ROTATION_90:
-        degrees = 90;
-        break;
+        return 90;
       case Surface.ROTATION_180:
-        degrees = 180;
-        break;
+        return 180;
       case Surface.ROTATION_270:
-        degrees = 270;
-        break;
+        return 270;
       default:
-        throw Assert.createAssertionFailException("");
-    }
-
-    // The display orientation of the camera (this controls the preview image).
-    int orientation;
-
-    // The clockwise rotation angle relative to the orientation of the camera. This affects
-    // pictures returned by the camera in Camera.PictureCallback.
-    int rotation;
-    if (mCameraInfo.facing == Camera.CameraInfo.CAMERA_FACING_FRONT) {
-      orientation = (mCameraInfo.orientation + degrees) % 360;
-      rotation = orientation;
-      // compensate the mirror but only for orientation
-      orientation = (360 - orientation) % 360;
-    } else { // back-facing
-      orientation = (mCameraInfo.orientation - degrees + 360) % 360;
-      rotation = orientation;
-    }
-    mRotation = rotation;
-    try {
-      mCamera.setDisplayOrientation(orientation);
-      final Camera.Parameters params = mCamera.getParameters();
-      params.setRotation(rotation);
-      mCamera.setParameters(params);
-    } catch (final RuntimeException e) {
-      LogUtil.e(
-          "CameraManager.updateCameraOrientation",
-          "RuntimeException in CameraManager.updateCameraOrientation",
-          e);
-      if (mListener != null) {
-        mListener.onCameraError(ERROR_OPENING_CAMERA, e);
-      }
+        throw Assert.createIllegalStateFailException("Invalid surface rotation.");
     }
   }
 
@@ -589,13 +588,19 @@
         mOrientationHandler.disable();
         mOrientationHandler = null;
       }
-      //      releaseMediaRecorder(true /* cleanupFile */);
       mFocusOverlayManager.onPreviewStopped();
       return;
     }
     try {
       mCamera.stopPreview();
-      updateCameraOrientation();
+      if (!mTakingPicture) {
+        mRotation =
+            updateCameraRotation(
+                mCamera,
+                getScreenRotation(),
+                mCameraInfo.orientation,
+                mCameraInfo.facing == CameraInfo.CAMERA_FACING_FRONT);
+      }
 
       final Camera.Parameters params = mCamera.getParameters();
       final Camera.Size pictureSize = chooseBestPictureSize();
@@ -644,6 +649,14 @@
     }
   }
 
+  private int getScreenRotation() {
+    return mCameraPreview
+        .getContext()
+        .getSystemService(WindowManager.class)
+        .getDefaultDisplay()
+        .getRotation();
+  }
+
   public boolean isCameraAvailable() {
     return mCamera != null && !mTakingPicture && mIsHardwareAccelerationSupported;
   }
@@ -681,7 +694,14 @@
 
     @Override
     public void onOrientationChanged(final int orientation) {
-      updateCameraOrientation();
+      if (!mTakingPicture) {
+        mRotation =
+            updateCameraRotation(
+                mCamera,
+                getScreenRotation(),
+                mCameraInfo.orientation,
+                mCameraInfo.facing == CameraInfo.CAMERA_FACING_FRONT);
+      }
     }
   }
 
diff --git a/java/com/android/dialer/callcomposer/camera/ImagePersistTask.java b/java/com/android/dialer/callcomposer/camera/ImagePersistTask.java
index 31751e5..7cb6921 100644
--- a/java/com/android/dialer/callcomposer/camera/ImagePersistTask.java
+++ b/java/com/android/dialer/callcomposer/camera/ImagePersistTask.java
@@ -20,13 +20,11 @@
 import android.content.Context;
 import android.graphics.Bitmap;
 import android.graphics.BitmapFactory;
-import android.graphics.Canvas;
 import android.graphics.Matrix;
 import android.net.Uri;
 import android.os.Build.VERSION_CODES;
 import android.support.v4.content.FileProvider;
 import com.android.dialer.callcomposer.camera.exif.ExifInterface;
-import com.android.dialer.callcomposer.camera.exif.ExifTag;
 import com.android.dialer.callcomposer.util.BitmapResizer;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.concurrent.FallibleAsyncTask;
@@ -71,13 +69,7 @@
     File outputFile = DialerUtils.createShareableFile(mContext);
 
     try (OutputStream outputStream = new FileOutputStream(outputFile)) {
-      if (mHeightPercent != 1.0f) {
-        writeClippedBitmap(outputStream);
-      } else {
-        Bitmap bitmap = BitmapFactory.decodeByteArray(mBytes, 0, mBytes.length);
-        bitmap = BitmapResizer.resizeForEnrichedCalling(bitmap);
-        bitmap.compress(Bitmap.CompressFormat.JPEG, 90, outputStream);
-      }
+      writeClippedBitmap(outputStream);
     }
 
     return FileProvider.getUriForFile(
@@ -105,10 +97,12 @@
     } catch (final IOException e) {
       // Couldn't get exif tags, not the end of the world
     }
+
+    ExifInterface.OrientationParams params = ExifInterface.getOrientationParams(orientation);
     Bitmap bitmap = BitmapFactory.decodeByteArray(mBytes, 0, mBytes.length);
     final int clippedWidth;
     final int clippedHeight;
-    if (ExifInterface.getOrientationParams(orientation).invertDimensions) {
+    if (params.invertDimensions) {
       Assert.checkState(mWidth == bitmap.getHeight());
       Assert.checkState(mHeight == bitmap.getWidth());
       clippedWidth = (int) (mHeight * mHeightPercent);
@@ -119,24 +113,22 @@
       clippedWidth = mWidth;
       clippedHeight = (int) (mHeight * mHeightPercent);
     }
-    final int offsetTop = (bitmap.getHeight() - clippedHeight) / 2;
-    final int offsetLeft = (bitmap.getWidth() - clippedWidth) / 2;
+
+    int offsetTop = (bitmap.getHeight() - clippedHeight) / 2;
+    int offsetLeft = (bitmap.getWidth() - clippedWidth) / 2;
     mWidth = clippedWidth;
     mHeight = clippedHeight;
+
+    Matrix matrix = new Matrix();
+    matrix.postRotate(params.rotation);
+
     Bitmap clippedBitmap =
-        Bitmap.createBitmap(clippedWidth, clippedHeight, Bitmap.Config.ARGB_8888);
-    clippedBitmap.setDensity(bitmap.getDensity());
-    final Canvas clippedBitmapCanvas = new Canvas(clippedBitmap);
-    final Matrix matrix = new Matrix();
-    matrix.postTranslate(-offsetLeft, -offsetTop);
-    clippedBitmapCanvas.drawBitmap(bitmap, matrix, null /* paint */);
-    clippedBitmapCanvas.save();
+        Bitmap.createBitmap(
+            bitmap, offsetLeft, offsetTop, clippedWidth, clippedHeight, matrix, true);
     clippedBitmap = BitmapResizer.resizeForEnrichedCalling(clippedBitmap);
-    // EXIF data can take a big chunk of the file size and is often cleared by the
-    // carrier, only store orientation since that's critical
-    final ExifTag orientationTag = exifInterface.getTag(ExifInterface.TAG_ORIENTATION);
+    // EXIF data can take a big chunk of the file size and we've already manually rotated our image,
+    // so remove all of the exif data.
     exifInterface.clearExif();
-    exifInterface.setTag(orientationTag);
     exifInterface.writeExif(clippedBitmap, outputStream);
 
     clippedBitmap.recycle();
diff --git a/java/com/android/dialer/callcomposer/camera/exif/ExifInterface.java b/java/com/android/dialer/callcomposer/camera/exif/ExifInterface.java
index 92dee1c..1bf9519 100644
--- a/java/com/android/dialer/callcomposer/camera/exif/ExifInterface.java
+++ b/java/com/android/dialer/callcomposer/camera/exif/ExifInterface.java
@@ -286,7 +286,7 @@
 
   /** Wrapper class to define some orientation parameters. */
   public static class OrientationParams {
-    int rotation = 0;
+    public int rotation = 0;
     int scaleX = 1;
     int scaleY = 1;
     public boolean invertDimensions = false;
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/layout/camera_view.xml b/java/com/android/dialer/callcomposer/cameraui/res/layout/camera_view.xml
index a4198fc..8169a3d 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/layout/camera_view.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/layout/camera_view.xml
@@ -24,7 +24,7 @@
   <FrameLayout
     android:id="@+id/mediapicker_enabled"
     android:layout_width="match_parent"
-    android:layout_height="wrap_content" >
+    android:layout_height="wrap_content">
 
     <!-- Default to using the hardware rendered camera preview, we will fall back to
     SoftwareCameraPreview in CameraMediaChooserView if needed -->
@@ -37,14 +37,14 @@
     <com.android.dialer.callcomposer.camera.camerafocus.RenderOverlay
       android:id="@+id/focus_visual"
       android:layout_width="match_parent"
-      android:layout_height="match_parent" />
+      android:layout_height="match_parent"/>
 
     <View
       android:id="@+id/camera_shutter_visual"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
       android:background="@android:color/white"
-      android:visibility="gone" />
+      android:visibility="gone"/>
 
     <ImageView
       android:id="@+id/preview_image_view"
@@ -71,7 +71,8 @@
         android:layout_marginEnd="@dimen/camera_view_button_margin"
         android:layout_marginBottom="@dimen/camera_view_button_margin"
         android:src="@drawable/quantum_ic_fullscreen_white_48"
-        android:background="?android:selectableItemBackgroundBorderless"/>
+        android:background="?android:selectableItemBackgroundBorderless"
+        android:contentDescription="@string/description_camera_switch_full_screen"/>
 
       <ImageButton
         android:id="@+id/camera_exit_fullscreen"
@@ -82,7 +83,8 @@
         android:layout_marginBottom="@dimen/camera_view_button_margin"
         android:src="@drawable/quantum_ic_fullscreen_exit_white_48"
         android:visibility="gone"
-        android:background="?android:selectableItemBackgroundBorderless"/>
+        android:background="?android:selectableItemBackgroundBorderless"
+        android:contentDescription="@string/description_camera_switch_preview_screen"/>
 
       <ImageButton
         android:id="@+id/camera_capture_button"
@@ -93,7 +95,7 @@
         android:background="?android:selectableItemBackgroundBorderless"
         android:src="@drawable/ic_capture"
         android:scaleType="fitXY"
-        android:contentDescription="@string/camera_take_picture"/>
+        android:contentDescription="@string/description_camera_take_picture"/>
 
       <ImageButton
         android:id="@+id/swap_camera_button"
@@ -103,8 +105,7 @@
         android:layout_marginStart="@dimen/camera_view_button_margin"
         android:layout_marginBottom="@dimen/camera_view_button_margin"
         android:src="@drawable/front_back_switch_button_animation"
-        android:background="@drawable/transparent_button_background"
-        android:contentDescription="@string/camera_switch_camera_rear"/>
+        android:background="@drawable/transparent_button_background"/>
 
       <ImageButton
         android:id="@+id/camera_cancel_button"
@@ -116,7 +117,7 @@
         android:visibility="gone"
         android:background="@drawable/transparent_button_background"
         android:src="@drawable/quantum_ic_undo_white_48"
-        android:contentDescription="@string/camera_cancel_recording" />
+        android:contentDescription="@string/description_camera_cancel_photo" />
     </FrameLayout>
   </FrameLayout>
 
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-af/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-af/strings.xml
index 3892a20..f6326c1 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-af/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-af/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Skakel na volskerm-kamera oor"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Knoppie is nou voorste kamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Knoppie is nou agterste kamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stop video-opname"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Gebruik tans voorste kamera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Gebruik tans agterste kamera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Neem foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Skakel oor na volskerm-kamera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Skakel oor na kameravoorskou"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Skakel oor na voorste kamera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Skakel oor na agterste kamera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Neem foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Neem foto weer"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-am/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-am/strings.xml
index e271798..87c70c7 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-am/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-am/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"ወደ ሙሉ ማያ ገጽ ካሜራ ቀይር"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"አዝራር አሁን የፊት ካሜራ ነው"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"አዝራር አሁን የኋላ ካሜራ ነው"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ቪዲዮ መቅዳትን አቁም"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"የፊት ካሜራ በመጠቀም ላይ"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"የኋላ ካሜራ በመጠቀም ላይ"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ፎቶ ያንሱ"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"ወደ ሙሉ ማያ ገጽ ካሜራ ይቀይሩ"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ወደ ካሜራ ቅድመ ዕይታ ይቀይሩ"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ወደ የፊት ካሜራ ይቀይሩ"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"ወደ የኋላ ካሜራ ይቀይሩ"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ፎቶ ያንሱ"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ፎቶ በድጋሚ ያንሱ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ar/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ar/strings.xml
index a045a11..fa27db7 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ar/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ar/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"التبديل إلى الكاميرا بملء الشاشة"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"يشير الزر الآن إلى الكاميرا الأمامية"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"يشير الزر الآن إلى الكاميرا الخلفية"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"إيقاف تسجيل الفيديو"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"استخدام الكاميرا الأمامية"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"استخدام الكاميرا الخلفية"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"التقاط صورة"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"التبديل إلى الكاميرا بملء الشاشة"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"التبديل إلى معاينة الكاميرا"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"تبديل إلى الكاميرا الأمامية"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"تبديل مرة أخرى إلى الكاميرا الأمامية"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"التقاط صورة"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"إعادة التقاط الصورة"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-az/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-az/strings.xml
index 514463c..bfbf204 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-az/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-az/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Tam ekranlı kameraya keçin"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Düymə indi ön kameradır"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Düymə indi arxa kameradır"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Video qeydi dayandırın"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Ön kamera istifadə olunur"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Arxa kamera istifadə olunur"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fotoşəkil çəkin"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Tam ekranlı kameraya keçin"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Kamera önizləməsinə keçin"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Ön kameraya keçin"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Arxa kameraya keçin"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Foto çəkin"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Fotonu yenidən çəkin"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-b+sr+Latn/strings.xml
index aad8d9d..565b188 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-b+sr+Latn/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Pređite na prikaz kamere preko celog ekrana"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Dugme sad aktivira prednju kameru"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Dugme sad aktivira zadnju kameru"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zaustavite snimanje videa"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Koristimo prednju kameru"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Koristimo zadnju kameru"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Snimite sliku"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Prebacite na prikaz kamere preko celog ekrana"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Prebacite na pregled kamere"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Prebacite na prednju kameru"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Prebacite na zadnju kameru"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Snimite sliku"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ponovo snimite sliku"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-be/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-be/strings.xml
index 108ab7f..f15bbb9 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-be/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-be/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Пераключыцца на поўнаэкранную камеру"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Кнопка зараз замацавана за пярэдняй камерай"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Кнопка зараз замацавана за задняй камерай"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Спыніць запіс відэа"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Выкарыстанне пярэдняй камеры"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Выкарыстанне задняй камеры"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Зрабіць фота"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Пераключыцца на поўнаэкранную камеру"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Пераключыцца ў рэжым перадпрагляду камеры"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Пераключыцца на пярэднюю камеру"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Пераключыцца на заднюю камеру"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Зрабіць фота"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Зрабіць фота яшчэ раз"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-bg/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-bg/strings.xml
index e965ed9..92352ff 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-bg/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-bg/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Превключване към камера на цял екран"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Бутонът сега е за предната камера"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Бутонът сега е за задната камера"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Спиране на видеозаписа"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Използва се предната камера"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Използва се задната камера"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Правене на снимка"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Превключване към камера на цял екран"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Превключване към визуализация на камерата"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Превключване към предната камера"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Превключване към задната камера."</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Снимане"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Повторно снимане"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-bn/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-bn/strings.xml
index 447b7e3..83774c7 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-bn/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-bn/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"পূর্ণ স্ক্রীন ক্যামেরাতে পাল্টান"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"বোতামটিকে এখন সামনের ক্যামেরার জন্য ব্যবহার করা হবে"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"বোতামটিকে এখন পিছনের ক্যামেরার জন্য ব্যবহার করা হবে"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ভিডিও রেকর্ডিং বন্ধ করুন"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"সামনের ক্যামেরা ব্যবহার করা হচ্ছে"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"পিছনের ক্যামেরা ব্যবহার করা হচ্ছে"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ফটো তুলুন"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"সম্পূর্ণ স্ক্রীন জুড়ে ক্যামেরা খুলুন"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ক্যামেরার পূর্বরূপ মোডে পাল্টান"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"সামনের ক্যামেরাতে পাল্টান"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"পিছনের ক্যামেরাতে পাল্টান"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ফটো তুলুন"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"আবার ফটো তুলুন"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-bs/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-bs/strings.xml
index 8946f4f..c77a5de 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-bs/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-bs/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Prebaci na kameru preko cijelog ekrana"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Dugme je sada prednja kamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Dugme je sada zadnja kamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zaustavi snimanje videozapisa"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Koristi se prednja kamera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Koristi se zadnja kamera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Snimi fotografiju"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Prebaci na kameru preko cijelog ekrana"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Prebaci na pregled kamere"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Prebaci na prednju kameru"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Prebaci na stražnju kameru"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Snimi fotografiju"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ponovo snimi fotografiju"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ca/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ca/strings.xml
index 6d8ffdc..39c069b 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ca/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ca/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Canvia a la càmera en pantalla completa"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"El botó ara és la càmera frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"El botó ara és la càmera posterior"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Deixa d\'enregistrar el vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"S\'està utilitzant la càmera frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"S\'està utilitzant la càmera posterior"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fes una foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Canvia a la càmera en pantalla completa"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Canvia a la previsualització de la càmera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Canvia a la càmera frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Canvia a la càmera posterior"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Fes una foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Torna a fer la foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-cs/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-cs/strings.xml
index 0e31108..222eb81 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-cs/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-cs/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Přepnout na fotoaparát na celou obrazovku"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Tlačítko nyní funguje pro přední fotoaparát"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Tlačítko nyní funguje pro zadní fotoaparát"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zastavit natáčení videa"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Používá se přední fotoaparát"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Používá se zadní fotoaparát"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Vyfotit"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Přepnout na fotoaparát na celou obrazovku"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Přepnout na náhled fotoaparátu"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Přepnout na přední fotoaparát"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Přepnout na zadní fotoaparát"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Vyfotit"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Znovu vyfotit"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-da/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-da/strings.xml
index ca5a79e..0de7e08 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-da/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-da/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Skift til kamera i fuld skærm"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Knappen er nu frontkamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Knappen er nu bagsidekamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stands optagelse af video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Bruger frontkameraet"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Bruger bagsidekameraet"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tag billede"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Skift til kamera i fuld skærm"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Skift til forhåndsvisning af kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Skift til kamera på forsiden"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Skift til kamera på bagsiden"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tag billede"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Tag billedet om"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-de/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-de/strings.xml
index 53d22eb..1b0d639 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-de/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-de/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Zur Vollbildkamera wechseln"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Schaltfläche ist jetzt Frontkamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Schaltfläche ist jetzt Rückkamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Videoaufzeichnung beenden"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Frontkamera wird verwendet"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Rückkamera wird verwendet"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Foto aufnehmen"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Zur Vollbildkamera wechseln"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Zur Kameravorschau wechseln"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Zur Frontkamera wechseln"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Zur Rückkamera wechseln"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Foto aufnehmen"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Foto neu aufnehmen"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-el/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-el/strings.xml
index 5763dec..d657f93 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-el/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-el/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Εναλλαγή σε κάμερα πλήρους οθόνης"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Το κουμπί είναι τώρα η μπροστινή κάμερα"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Το κουμπί είναι τώρα η πίσω κάμερα"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Διακοπή εγγραφής βίντεο"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Χρήση μπροστινής κάμερας"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Χρήση πίσω κάμερας"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Λήψη φωτογραφίας"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Εναλλαγή σε κάμερα πλήρους οθόνης"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Εναλλαγή σε προεπισκόπηση κάμερας"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Εναλλαγή σε κάμερα πρόσοψης"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Εναλλαγή σε πίσω κάμερα"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Λήψη φωτογραφίας"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Επανάληψη λήψης φωτογραφίας"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rAU/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rAU/strings.xml
index 5b8b4aa..9e76a69 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rAU/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Switch to full-screen camera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Button is now front-facing camera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Button is now rear-facing camera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stop recording video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Using front-facing camera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Using rear-facing camera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Take photo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Switch to full-screen camera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Switch to camera preview"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Switch to front-facing camera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Switch to rear-facing camera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Take photo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Retake photo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rGB/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rGB/strings.xml
index 5b8b4aa..9e76a69 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rGB/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Switch to full-screen camera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Button is now front-facing camera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Button is now rear-facing camera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stop recording video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Using front-facing camera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Using rear-facing camera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Take photo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Switch to full-screen camera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Switch to camera preview"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Switch to front-facing camera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Switch to rear-facing camera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Take photo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Retake photo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rIN/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rIN/strings.xml
index 5b8b4aa..9e76a69 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-en-rIN/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Switch to full-screen camera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Button is now front-facing camera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Button is now rear-facing camera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stop recording video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Using front-facing camera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Using rear-facing camera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Take photo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Switch to full-screen camera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Switch to camera preview"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Switch to front-facing camera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Switch to rear-facing camera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Take photo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Retake photo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-es-rUS/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-es-rUS/strings.xml
index a98e74c..f103564 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-es-rUS/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Cambiar a cámara en pantalla completa"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"El botón cambió a la cámara frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"El botón cambió a la cámara trasera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Detener la grabación de video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Usando la cámara frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Usando la cámara trasera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tomar una foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Cambiar a cámara en pantalla completa"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Cambiar a vista previa de la cámara"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Cambiar a cámara frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Cambiar a cámara trasera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tomar foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Volver a tomar foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-es/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-es/strings.xml
index 5c4391e..5afb8c8 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-es/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-es/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Cambiar a cámara en pantalla completa"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"El botón se usa ahora para la cámara frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"El botón se usa ahora para la cámara trasera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Detener la grabación de vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Estás utilizando la cámara frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Estás utilizando la cámara trasera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Hacer una foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Cambiar a la cámara en pantalla completa"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Cambiar a la vista previa de la cámara"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Cambiar a la cámara frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Cambiar a la cámara trasera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Hacer una foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Repetir la foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-et/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-et/strings.xml
index d82dcd5..d4c37fe 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-et/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-et/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Täisekraaniga kaamerale lülitamine"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Nuppu kasutatakse nüüd esikaamera jaoks"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Nuppu kasutatakse nüüd tagakaamera jaoks"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Video salvestamise peatamine"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Esikaamera kasutamine"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Tagakaamera kasutamine"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Foto jäädvustamine"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Täisekraaniga kaamerale lülitumine"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Kaamera eelvaatele lülitumine"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Esikaamerale lülitumine"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Tagakaamerale lülitumine"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Foto jäädvustamine"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Foto uuesti jäädvustamine"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-eu/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-eu/strings.xml
index b3c20c9..4271983 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-eu/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-eu/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Erabili pantaila osoko kamera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Orain, aurreko kamera erabiltzeko da botoia"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Orain, atzeko kamera erabiltzeko da botoia"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Utzi bideoa grabatzeari"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Aurreko kamera erabiltzen"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Atzeko kamera erabiltzen"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Atera argazkia"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Erabili pantaila osoko kamera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Erabili kameraren aurrebista"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Erabili aurreko kamera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Erabili atzeko kamera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Atera argazkia"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Atera berriro argazkia"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-fa/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-fa/strings.xml
index 24e757b..5d58771 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-fa/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-fa/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"جابه‌جایی به دوربین تمام صفحه"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"اکنون دکمه، دوربین جلو است"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"اکنون دکمه، دوربین عقب است"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"توقف ضبط ویدیو"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"استفاده از دوربین جلو"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"استفاده از دوربین عقب"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"عکس گرفتن"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"رفتن به دوربین تمام صفحه"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"رفتن به پیش‌نمایش دوربین"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"رفتن به دوربین جلو"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"رفتن به دوربین عقب"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"عکس گرفتن"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"عکس گرفتن مجدد"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-fi/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-fi/strings.xml
index 5a3ddd8..9d7cb09 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-fi/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-fi/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Siirry koko näytön kameraan"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Painikkeeseen on nyt määritetty etukamera."</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Painikkeeseen on nyt määritetty takakamera."</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Lopeta videon tallentaminen"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Etukamera käytössä"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Takakamera käytössä"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ota kuva"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Siirry koko näytön kameraan"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Siirry kameran esikatseluun"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Vaihda etukameraan"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Vaihda takakameraan"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ota kuva"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ota kuva uudelleen"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-fr-rCA/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-fr-rCA/strings.xml
index f0e644e..b202840 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-fr-rCA/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Passer au mode plein écran de l\'appareil photo"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Le bouton est maintenant utilisé pour l\'appareil photo avant"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Le bouton est maintenant utilisé pour l\'appareil photo arrière"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Arrêter l\'enregistrement vidéo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Utilisation de la caméra avant"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Utilisation de la caméra arrière"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Prendre une photo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Passer au mode Plein écran de l\'appareil photo"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Passer au mode Aperçu de l\'appareil photo"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Passer à l\'appareil photo avant"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Passer à l\'appareil photo arrière"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Prendre une photo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Reprendre la photo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-fr/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-fr/strings.xml
index 72de07f..a9cfe71 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-fr/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-fr/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Passer en caméra plein écran"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Le bouton affiche désormais la caméra frontale."</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Le bouton affiche désormais la caméra arrière."</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Arrêter l\'enregistrement vidéo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Caméra frontale activée"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Caméra arrière activée"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Prendre une photo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Passer en mode plein écran"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Passer en mode aperçu"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Utiliser la caméra avant"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Utiliser la caméra arrière"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Prendre une photo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Reprendre la photo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-gl/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-gl/strings.xml
index 2ab1ef0..3568a0f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-gl/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-gl/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Cambiar á cámara de pantalla completa"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Agora o botón é a cámara dianteira"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Agora o botón é a cámara traseira"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Deter gravación de vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Estase utilizando a cámara frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Estase utilizando a cámara traseira"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tirar foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Cambia á cámara de pantalla completa"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Cambia á vista previa da cámara"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Cambia á cámara frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Cambia á cámara traseira"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tira unha foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Repite a foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-gu/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-gu/strings.xml
index 60780d9..88037b5 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-gu/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-gu/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"પૂર્ણ સ્ક્રીન કૅમેરા પર સ્વિચ કરો"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"બટન હવે આગળનો કૅમેરો છે"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"બટન હવે પાછળનો કૅમેરો છે"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"વિડિઓ રેકોર્ડિંગ બંધ કરો"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"આગળના કૅમેરાનો ઉપયોગ કરી રહ્યાં છે"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"પાછળના કૅમેરાનો ઉપયોગ કરી રહ્યાં છે"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ફોટો લો"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"પૂર્ણ સ્ક્રીન કૅમેરા પર સ્વિચ કરો"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"કૅમેરા પૂર્વાવલોકન પર સ્વીચ કરો"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ફ્ર્ન્ટ ફેસિંગ કૅમેરા પર સ્વિચ કરો"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"પાછળના કૅમેરા પર સ્વિચ કરો"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ફોટો લો"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ફોટો ફરીથી લો"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-hi/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-hi/strings.xml
index cf89a7d..09a441f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-hi/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-hi/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"पूर्ण स्क्रीन कैमरा पर स्विच करें"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"बटन अब सामने का कैमरा है"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"बटन अब पीछे का कैमरा है"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"वीडियो रिकॉर्ड करना बंद करें"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"आगे वाले कैमरे का उपयोग करना"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"पीछे वाले कैमरे का उपयोग करना"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"फ़ोटो लें"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"पूर्ण स्क्रीन कैमरे में बदलें"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"कैमरा पूर्वावलोकन में बदलें"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"सामने वाले कैमरे में बदलें"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"पीछे वाले कैमरे में बदलें"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"फ़ोटो लें"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"फि‍र से फ़ोटो लें"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-hr/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-hr/strings.xml
index 3d59fd4..2dca9bd 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-hr/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-hr/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Prebaci na fotoaparat na punom zaslonu"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Gumb je sada za prednji fotoaparat"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Gumb je sada za stražnji fotoaparat"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zaustavi snimanje videozapisa"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Upotreba prednje kamere"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Upotreba stražnje kamere"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Snimi fotografiju"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Prebaci na prikaz fotoaparata preko cijelog zaslona"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Prebaci na pregled fotoaparata"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Prebaci na prednji fotoaparat"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Prebaci na stražnji fotoaparat"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Snimi fotografiju"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ponovno snimi fotografiju"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-hu/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-hu/strings.xml
index 1639ca7..5007b3f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-hu/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-hu/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Váltás teljes képernyős kameranézetre"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"A gomb beállítása jelenleg: elülső kamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"A gomb beállítása jelenleg: hátsó kamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Videofelvétel leállítása"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Első kamera használata"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Hátsó kamera használata"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fotó készítése"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Váltás teljes képernyős kameranézetre"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Váltás kamera-előnézetre"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Váltás az első kamerára"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Váltás a hátsó kamerára"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Fotó készítése"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Új felvétel"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-hy/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-hy/strings.xml
index 1da5c68..2c1bd79 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-hy/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-hy/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Միացնել լիաէկրան ռեժիմը"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Կոճակն այժմ առջևի տեսախցիկը միացնելու կոճակն է"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Կոճակն այժմ հետևի տեսախցիկը միացնելու կոճակն է"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Դադարեցնել տեսագրումը"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Օգտագործվում է առջևի տեսախցիկը"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Օգտագործվում է հետևի տեսախցիկը"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Լուսանկարել"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Միացնել լիաէկրան ռեժիմը"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Միացնել նախադիտման ռեժիմը"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Միացնել առջևի տեսախցիկը"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Միացնել հետևի տեսախցիկը"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Լուսանկարել"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Նորից լուսանկարել"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-in/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-in/strings.xml
index 6073d8e..4c922cd 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-in/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-in/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Beralih ke kamera layar penuh"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Tombol kini berfungsi untuk kamera depan"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Tombol kini berfungsi untuk kamera belakang"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Berhenti merekam video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Menggunakan kamera depan"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Menggunakan kamera belakang"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ambil foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Beralih ke kamera layar penuh"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Beralih ke pratinjau kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Beralih ke kamera depan"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Beralih ke kamera belakang"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ambil foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ambil ulang foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-is/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-is/strings.xml
index d16b2e2..c796d22 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-is/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-is/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Skipta yfir í myndavél á öllum skjánum"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Hnappurinn er nú fremri myndavél"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Hnappurinn er nú aftari myndavél"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Stöðva upptöku myndskeiðs"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Notar fremri myndavél"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Notar aftari myndavél"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Taka mynd"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Skipta yfir í myndavél á öllum skjánum"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Skipta yfir í forskoðun á myndavél"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Skipta yfir í fremri myndavél"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Skipta yfir í aftari myndavél"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Taka mynd"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Taka mynd aftur"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-it/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-it/strings.xml
index 63fac07..abf5d3f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-it/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-it/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Passa alla fotocamera a schermo intero"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Il pulsante viene ora utilizzato per la fotocamera frontale"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Il pulsante viene ora utilizzato per la fotocamera posteriore"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Interrompi registrazione video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"In uso la fotocamera frontale"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"In uso la fotocamera posteriore"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Scatta foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Passa alla fotocamera a schermo intero"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Passa all\'anteprima della fotocamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Passa alla fotocamera anteriore"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Passa alla fotocamera posteriore"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Scatta foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Scatta foto di nuovo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-iw/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-iw/strings.xml
index 3db2e94..e6aed2e 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-iw/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-iw/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"מעבר למצלמה במסך מלא"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"הלחצן מוגדר עכשיו למצלמה הקדמית"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"הלחצן מוגדר עכשיו למצלמה האחורית"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"עצירה של צילום הווידאו"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"באמצעות המצלמה הקדמית"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"באמצעות המצלמה האחורית"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"צילום תמונה"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"מעבר למצלמה במסך מלא"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"מעבר לתצוגה מקדימה של המצלמה"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"מעבר למצלמה הקדמית"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"מעבר למצלמה האחורית"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"צילום תמונה"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"צילום מחדש של התמונה"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ja/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ja/strings.xml
index ffb3a17..85ef3c8 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ja/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ja/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"全画面カメラに切り替え"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"現在、ボタンは前面カメラになっています"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"現在、ボタンは背面カメラになっています"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"録画を停止"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"前面カメラを使用しています"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"背面カメラを使用しています"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"写真を撮る"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"全画面カメラに切り替えます"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"カメラのプレビューに切り替えます"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"前面カメラに切り替えます"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"背面カメラに切り替えます"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"写真を撮影します"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"写真を撮り直します"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ka/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ka/strings.xml
index 6a94b65..edaf33f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ka/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ka/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"სრულეკრანიან კამერაზე გადართვა"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ახლა ღილაკი გამოიყენება წინა კამერისთვის"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ახლა ღილაკი გამოიყენება უკანა კამერისთვის"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ვიდეოს ჩაწერის შეჩერება"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"თქვენ იყენებთ წინა კამერას"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"თქვენ იყენებთ უკანა კამერას"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ფოტოს გადაღება"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"სრულეკრანიან კამერაზე გადართვა"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"კამერის წინასწარ ხედზე გადართვა"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"წინა კამერაზე გადართვა"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"უკანა კამერაზე გადართვა"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ფოტოს გადაღება"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ფოტოს ხელახლა გადაღება"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-kk/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-kk/strings.xml
index 22b89fd..795a063 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-kk/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-kk/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Толық экранды камераға ауысу"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Түйме – енді алдыңғы камера"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Түйме – енді артқы камера"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Бейне жазуды тоқтату"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Алдыңғы камера қолданылуда"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Артқы камера қолданылуда"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Суретке түсіру"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Толық экранды камераға ауысу"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Камераның алдын ала көру режиміне ауысу"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Камераның анфас режиміне ауысу"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Камераның қалыпты режиміне ауысу"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Суретке түсіру"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Суретке қайта түсіру"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-km/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-km/strings.xml
index dd547dd..377f885 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-km/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-km/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"ប្ដូរ​ទៅ​កាមេរ៉ា​ពេញ​អេក្រង់"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ឥឡូវ ប៊ូតុង​ស្ថិត​នៅ​​កាមេរ៉ា​មុខ"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ឥឡូវ ប៊ូតុងស្ថិត​នៅ​កាមេរ៉ា​ក្រោយ"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"បញ្ឈប់​ការ​ថត​វីដេអូ"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"កំពុង​ប្រើ​ប្រាស់​កាមេរ៉ា​មុខ"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"កំពុង​ប្រើប្រាស់​​​កាមេរ៉ា​ក្រោយ"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ថតរូប"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"ប្ដូរ​ទៅ​កាមេរ៉ា​ពេញ​អេក្រង់"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ប្ដូរ​ទៅ​ការមើល​កាមេរ៉ា​សាកល្បង"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ប្ដូរ​ទៅ​កាមេរ៉ា​ខាង​មុខ"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"ប្តូរទៅកាមេរ៉ាខាងក្រោយ"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ថតរូប"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ថតរូប​ឡើងវិញ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-kn/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-kn/strings.xml
index 471cfc9..1f5d1ea 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-kn/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-kn/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"ಪೂರ್ಣ ಪರದೆ ಕ್ಯಾಮರಾಗೆ ಬದಲಿಸಿ"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ಬಟನ್ ಈಗ ಮುಂಬದಿ ಕ್ಯಾಮರಾದಲ್ಲಿ"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ಬಟನ್ ಈಗ ಹಿಂಬದಿ ಕ್ಯಾಮರಾದಲ್ಲಿ"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ವೀಡಿಯೊ ರೆಕಾರ್ಡಿಂಗ್ ನಿಲ್ಲಿಸಿ"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"ಮುಂಬದಿ ಕ್ಯಾಮರಾ ಬಳಸಲಾಗುತ್ತಿದೆ"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"ಹಿಂಬದಿ ಕ್ಯಾಮರಾ ಬಳಸಲಾಗುತ್ತಿದೆ"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ಫೋಟೋ ತೆಗೆಯಿರಿ"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"ಪೂರ್ಣ ಪರದೆ ಕ್ಯಾಮರಾಗೆ ಬದಲಿಸಿ"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ಕ್ಯಾಮರಾ ಪೂರ್ವವೀಕ್ಷಣೆಗೆ ಬದಲಾಯಿಸಿ"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ಮುಂಬದಿಯ ಕ್ಯಾಮರಾಗೆ ಬದಲಾಯಿಸಿ"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"ಹಿಂಬದಿಯ ಕ್ಯಾಮರಾಗೆ ಬದಲಾಯಿಸಿ"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ಫೋಟೋ ತೆಗೆಯಿರಿ"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ಫೋಟೋವನ್ನು ಮರುಸೆರೆಹಿಡಿಯಿರಿ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ko/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ko/strings.xml
index bb5e64d..1b675e7 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ko/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ko/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"전체화면 카메라로 전환"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"현재 버튼: 전면 카메라"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"현재 버튼: 후면 카메라"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"동영상 녹화 중지"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"전면 카메라 사용 중"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"후면 카메라 사용 중"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"사진 촬영"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"전체화면 카메라로 전환"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"카메라 미리보기로 전환"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"전면 카메라로 전환"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"후면 카메라로 전환"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"사진 찍기"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"사진 다시 찍기"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ky/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ky/strings.xml
index fca2893..771f576 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ky/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ky/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Камераны толук экранга которуу"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Азыр баскычта \"Маңдайкы камера\" деп жазылып турат"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Азыр баскычта \"Арткы камера\" деп жазылып турат"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Видео жаздырууну токтотуу"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Маңдайкы камера колдонулууда"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Арткы камера колдонулууда"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Сүрөткө тартуу"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Камераны толук экранга которуу"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Камераны алдын ала көрүү режимине которуу"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Маңдайкы камерага которуу"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Арткы камерага которуу"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Сүрөткө тартуу"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Кайра сүрөткө тартуу"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-lo/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-lo/strings.xml
index 0257e75..6bfdf4e 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-lo/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-lo/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"ສະຫຼັບໄປໃຊ້ກ້ອງແບບເຕັມຈໍ"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ຕອນນີ້ເປັນປຸ່ມກ້ອງໜ້າແລ້ວ"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ຕອນນີ້ເປັນປຸ່ມກ້ອງຫຼັງແລ້ວ"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ຢຸດການບັນທຶກວິດີໂອ"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"ກຳລັງໃຊ້ກ້ອງໜ້າ"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"ກຳລັງໃຊ້ກ້ອງຫຼັງ"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ຖ່າຍຮູບ"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"ສະຫຼັບໄປໃຊ້ກ້ອງແບບເຕັມຈໍ"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ສະຫຼັບໄປໃຊ້ຕົວຢ່າງກ້ອງ"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ສະຫຼັບໄປໃຊ້ກ້ອງໜ້າ"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"ສະຫຼັບໄປໃຊ້ກ້ອງຫຼັງ"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ຖ່າຍຮູບ"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ຖ່າຍຮູບໃໝ່"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-lt/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-lt/strings.xml
index 62c6de9..6ff3b0d 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-lt/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-lt/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Perjungti į viso ekrano režimu veikiantį fotoaparatą"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Dabar tai yra priekinio fotoaparato mygtukas"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Dabar tai yra užpakalinio fotoaparato mygtukas"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Sustabdyti vaizdo įrašymą"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Naudojamas priekinis fotoaparatas"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Naudojamas užpakalinis fotoaparatas"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fotografuoti"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Perjungti į viso ekrano režimu veikiantį fotoaparatą"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Perjungti į fotoaparato peržiūrą"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Perjungti į priekinį fotoaparatą"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Perjungti į užpakalinį fotoaparatą"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Fotografuoti"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Fotografuoti iš naujo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-lv/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-lv/strings.xml
index 4800f6b..d6d4782 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-lv/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-lv/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Pārslēgties uz pilnekrāna kameru"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Poga tagad tiek izmantota priekšējai kamerai"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Poga tagad tiek izmantota aizmugurējai kamerai"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Pārtraukt videoklipa ierakstīšanu"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Tiek izmantota priekšējā kamera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Tiek izmantota aizmugurējā kamera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Uzņemt fotoattēlu"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Pārslēgt uz pilnekrāna kameru"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Pārslēgt uz kameras priekšskatījumu"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Pārslēgt uz priekšējo kameru"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Pārslēgt uz aizmugurējo kameru"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Uzņemt fotoattēlu"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Atkārtoti uzņemt fotoattēlu"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-mk/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-mk/strings.xml
index 82c466f..a0f84a0 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-mk/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-mk/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Префрлете на камера на цел екран"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Копчето е сега предна камера"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Копчето е сега задна камера"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Сопрете со снимање видео"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Се користи предната камера"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Се користи задната камера"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Фотографирај"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Префрлете на камера на цел екран"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Префрлете на преглед на камера"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Префрлете на предна камера"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Префрлете на задна камера"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Фотографирај"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Фотографирај пак"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ml/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ml/strings.xml
index 0423da2..77c0a4f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ml/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ml/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"പൂർണ്ണസ്ക്രീൻ ക്യാമറയിലേക്ക് മാറുക"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ബട്ടൺ അമർത്തിയാൻ മുൻ ക്യാമറ ലഭിക്കും"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ബട്ടൺ അമർത്തിയാൻ പിൻ ക്യാമറ ലഭിക്കും"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"വീഡിയോ റെക്കോർഡുചെയ്യൽ നിർത്തുക"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"മുൻവശത്തെ ക്യാമറ ഉപയോഗിക്കുന്നു"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"പിൻഭാഗത്തുള്ള ക്യാമറ ഉപയോഗിക്കുന്നു"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ഫോട്ടോ എടുക്കുക"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"പൂർണ്ണസ്ക്രീൻ ക്യാമറയിലേക്ക് മാറുക"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ക്യാമറ പ്രിവ്യൂവിലേക്ക് മാറുക"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"മുൻ ക്യാമറയിലേക്ക് മാറുക"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"പിൻ ക്യാമറയിലേക്ക് മാറുക"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ഫോട്ടോ എടുക്കുക"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ഫോട്ടോ വീണ്ടുമെടുക്കുക"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-mn/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-mn/strings.xml
index 024e004..1894634 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-mn/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-mn/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Бүтэн дэлгэцийн камер руу сэлгэх"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Товчлуур нь урд талын камер боллоо"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Товчлуур нь ард талын камер боллоо"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Видео бичилтийг зогсоох"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Урд камер ашиглаж байна"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Арын камер ашиглаж байна"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Зураг авах"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Бүтэн дэлгэцийн камер руу сэлгэх"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Камерын урьдчилан үзэх рүү сэлгэх"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Урд талын камер руу сэлгэх"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Ар талын камер руу сэлгэх"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Зураг авах"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Зураг дахин авах"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-mr/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-mr/strings.xml
index bc9c2fb..24c1931 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-mr/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-mr/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"पूर्ण स्क्रीन कॅमेर्‍यावर स्विच करा"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"बटण आता पुढील कॅमेरा आहे"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"बटण आता मागील कॅमेरा आहे"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"व्हिडिओ रेकॉर्ड करणे थांबवा"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"समोरील कॅमेरा वापरत आहे"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"मागील कॅमेरा वापरत आहे"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"फोटो घ्‍या"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"पूर्ण स्क्रीन कॅमेर्‍यावर स्विच करा"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"कॅमेरा पूर्वावलोकनावर स्विच करा"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"समोरील कॅमऱ्यावर स्विच करा"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"मागील कॅमेर्‍यावर स्‍विच करा"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"फोटो घ्‍या"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"फोटो पुन्हा घ्या"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ms/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ms/strings.xml
index 3245b9c..44806f5 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ms/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ms/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Tukar kepada kamera skrin penuh"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Butang kini kamera depan"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Butang kini kamera belakang"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Berhenti merakam video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Menggunakan kamera depan"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Menggunakan kamera belakang"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ambil foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Beralih ke kamera skrin penuh"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Beralih ke pratonton kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Beralih ke kamera menghadap depan"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Beralih ke kamera menghadap belakang"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ambil foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ambil semula foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-my/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-my/strings.xml
index 884c0c8..7112abc 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-my/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-my/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"မျက်နှာပြင်အပြည့်ကင်မရာသို့ ပြောင်းရန်"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ခလုတ်မှာ အရှေ့ကင်မရာအတွက် ဖြစ်သွားပါပြီ"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ခလုတ်မှာ အနောက်ကင်မရာအတွက် ဖြစ်သွားပါပြီ"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ဗီဒီယိုရိုက်ကူးခြင်း ရပ်ရန်"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"အရှေ့ကင်မရာကို သုံးနေသည်"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"အနောက်ကင်မရာကို သုံးနေသည်"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ဓာတ်ပုံရိုက်ရန်"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"မျက်နှာပြင်အပြည့်ကင်မရာသို့ ပြောင်းရန်"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ကင်မရာအစမ်းကြည့်ရှုမှုသို့ ပြောင်းရန်"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"အရှေ့ကင်မရာသို့ ပြောင်းရန်"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"အနောက်ကင်မရာသို့ ပြောင်းရန်"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ဓာတ်ပုံရိုက်ရန်"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ဓာတ်ပုံပြန်ရိုက်ရန်"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-nb/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-nb/strings.xml
index bfa58ed..5e5fb60 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-nb/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-nb/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Bytt til fullskjermkamera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Nå er knappen frontkameraet"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Nå er knappen det bakre kameraet"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Slutt å filme"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Bruker frontkameraet"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Bruker det bakre kameraet"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ta et bilde"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Bytt til fullskjermkamera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Bytt til forhåndsvisning for kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Bytt til frontkamera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Bytt til bakovervendt kamera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ta bilde"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ta bilde på nytt"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ne/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ne/strings.xml
index 1362b32..d8ea795 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ne/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ne/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"पूर्ण स्क्रिन क्यामेरामा बदल्नुहोस्"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"बटन अब अगाडिको क्यामेराका लागि हो"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"बटन अब पछाडिको क्यामेराका लागि हो"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"भिडियो रेकर्ड रोक्नुहोस्"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"अगाडिको क्यामेरा प्रयोग गरिँदै"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"पछाडिको क्यामेरा प्रयोग गरिँदै"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"तस्बिर खिच्नुहोस्"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"पूर्ण स्क्रिन क्यामेरामा बदल्नुहोस्"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"क्यामेराको पूर्वावलोकन मोडमा बदल्नुहोस्"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"अगाडिपट्टिको क्यामेरामा बदल्नुहोस्"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"पछाडिपट्टिको क्यामेरामा बदल्नुहोस्"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"तस्बिर खिच्नुहोस्"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"पुन: तस्बिर खिच्नुहोस्"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-nl/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-nl/strings.xml
index 94f2718..0369fed 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-nl/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-nl/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Overschakelen naar camera op volledig scherm"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"De knop wordt nu gebruikt voor de camera aan de voorzijde"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"De knop wordt nu gebruikt voor de camera aan de achterzijde"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Video-opname stoppen"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"De camera aan de voorzijde wordt gebruikt"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"De camera aan de achterzijde wordt gebruikt"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Foto maken"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Overschakelen naar camera op volledig scherm"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Overschakelen naar cameravoorbeeld"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Overschakelen naar camera aan voorzijde"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Overschakelen naar camera aan achterzijde"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Foto maken"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Foto opnieuw maken"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-no/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-no/strings.xml
index bfa58ed..5e5fb60 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-no/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-no/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Bytt til fullskjermkamera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Nå er knappen frontkameraet"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Nå er knappen det bakre kameraet"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Slutt å filme"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Bruker frontkameraet"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Bruker det bakre kameraet"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ta et bilde"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Bytt til fullskjermkamera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Bytt til forhåndsvisning for kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Bytt til frontkamera"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Bytt til bakovervendt kamera"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ta bilde"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ta bilde på nytt"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-pa/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-pa/strings.xml
index 4296c98..e1247e0 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-pa/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-pa/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"ਬਦਲੀ ਕਰਕੇ ਸੰਪੂਰਨ ਸਕ੍ਰੀਨ ਕੈਮਰਾ \'ਤੇ ਜਾਓ"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ਬਟਨ ਹੁਣ ਮੂਹਰਲਾ ਕੈਮਰਾ ਹੈ"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ਬਟਨ ਹੁਣ ਪਿਛਲਾ ਕੈਮਰਾ ਹੈ"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ਵੀਡੀਓ ਰਿਕਾਰਡ ਕਰਨਾ ਬੰਦ ਕਰੋ"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"ਮੂਹਰਲਾ ਕੈਮਰਾ ਵਰਤਿਆ ਜਾ ਰਿਹਾ ਹੈ"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"ਪਿਛਲਾ ਕੈਮਰਾ ਵਰਤਿਆ ਜਾ ਰਿਹਾ ਹੈ"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ਫ਼ੋਟੋ ਖਿੱਚੋ"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"ਬਦਲੀ ਕਰਕੇ ਸੰਪੂਰਨ ਸਕ੍ਰੀਨ ਕੈਮਰੇ \'ਤੇ ਜਾਓ"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"ਬਦਲੀ ਕਰਕੇ ਕੈਮਰਾ ਪੂਰਵ-ਝਲਕ \'ਤੇ ਜਾਓ"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ਬਦਲੀ ਕਰਕੇ ਮੂਹਰਲੇ ਕੈਮਰੇ \'ਤੇ ਜਾਓ"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"ਬਦਲੀ ਕਰਕੇ ਪਿਛਲੇ ਕੈਮਰੇ \'ਤੇ ਜਾਓ"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ਫ਼ੋਟੋ ਖਿੱਚੋ"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ਫ਼ੋਟੋ ਮੁੜ-ਖਿੱਚੋ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-pl/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-pl/strings.xml
index 0e03e2d..b85afa6 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-pl/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-pl/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Włącz aparat pełnoekranowy"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Przycisk włącza teraz przedni aparat"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Przycisk włącza teraz tylny aparat"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zatrzymaj nagrywanie filmu"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Używany jest przedni aparat"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Używany jest tylny aparat"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Zrób zdjęcie"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Przełącz na aparat pełnoekranowy"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Przełącz na podgląd aparatu"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Przełącz na przedni aparat"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Przełącz na tylny aparat"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Zrób zdjęcie"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Zrób nowe zdjęcie"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rBR/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rBR/strings.xml
index 7c1fa07..59f457c 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rBR/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Alternar para câmera em tela cheia"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"O botão agora está na câmera frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"O botão agora está na câmera traseira"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Parar gravação de vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Usando a câmera frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Usando a câmera traseira"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tirar foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Alternar para câmera em tela cheia"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Alternar para visualização da câmera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Alternar para câmera frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Alternar para câmera traseira"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tirar foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Tirar foto novamente"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rPT/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rPT/strings.xml
index 661b4d9..71f651d 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-pt-rPT/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Mudar para a câmara de ecrã completo"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"O botão é agora utilizado para a câmara frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"O botão é agora utilizado para a câmara posterior"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Parar a gravação de vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"A utilizar a câmara frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"A utilizar a câmara posterior"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tirar foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Mudar para a câmara de ecrã completo"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Mudar para a pré-visualização da câmara"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Mudar para a câmara frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Mudar para a câmara traseira"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tirar foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Tirar nova foto"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-pt/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-pt/strings.xml
index 7c1fa07..59f457c 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-pt/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-pt/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Alternar para câmera em tela cheia"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"O botão agora está na câmera frontal"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"O botão agora está na câmera traseira"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Parar gravação de vídeo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Usando a câmera frontal"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Usando a câmera traseira"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Tirar foto"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Alternar para câmera em tela cheia"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Alternar para visualização da câmera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Alternar para câmera frontal"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Alternar para câmera traseira"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Tirar foto"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Tirar foto novamente"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ro/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ro/strings.xml
index 98d0050..f491f28 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ro/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ro/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Comutați la camera pe ecran complet"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Acum butonul este pentru camera foto frontală."</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Acum butonul este pentru camera foto posterioară."</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Opriți înregistrarea video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Este folosită camera foto frontală"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Este folosită camera foto posterioară"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fotografiați"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Comutați la camera pe ecran complet"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Comutați la previzualizarea camerei"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Comutați la camera frontală"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Comutați la camera posterioară"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Fotografiați"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Refaceți fotografia"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ru/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ru/strings.xml
index a4c7206..9de3cab 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ru/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ru/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Перейти в полноэкранный режим"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Сейчас на кнопке написано: Фронтальная камера"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Сейчас на кнопке написано: Основная камера"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Остановить запись видео"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Используется фронтальная камера"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Используется основная камера"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Сделать снимок"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Переключиться в полноэкранный режим"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Переключиться в режим предварительного просмотра"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Переключиться на фронтальную камеру"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Переключиться на основную камеру"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Сделать снимок"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Новый снимок"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-si/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-si/strings.xml
index 6cc5eef..1747d1a 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-si/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-si/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"පූර්ණ තිර කැමරාව වෙත මාරුවීම"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"බොත්තම දැන් ඉදිරිපස කැමරාවයි"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"බොත්තම දැන් පිටුපස කැමරාවයි"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"වීඩියෝව පටිගත කිරීම නැවැත්වීම"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"ඉදිරිපස කැමරාව භාවිත කරමින්"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"පසුපස කැමරාව භාවිත කරමින්"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ඡායාරූපය ගන්න"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"පූර්ණ තිර කැමරාව වෙත මාරුවීම"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"කැමරා පෙරදසුන වෙත මාරුවීම"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ඉදිරිපසට මුහුණලා ඇති කැමරාව වෙත මාරුවීම"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"පසුපසට මුහුණලා ඇති කැමරාව වෙත මාරුවීම"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ඡායාරූපය ගැනීම"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ඡායාරූපය නැවත ගැනීම"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sk/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sk/strings.xml
index 916158b..a053e2f 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sk/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sk/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Prepnúť na fotoaparát na celej obrazovke"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Tlačidlo sa nachádza v polohe Predný fotoaparát"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Tlačidlo sa nachádza v polohe Zadný fotoaparát"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Zastaviť zaznamenávanie videa"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Používa sa predný fotoaparát"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Používa sa zadný fotoaparát"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Odfotiť"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Prepnúť na fotoaparát na celej obrazovke"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Prepnúť na ukážku z fotoaparátu"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Prepnúť na predný fotoaparát"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Prepnúť na zadný fotoaparát"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Odfotiť"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Znova odfotiť"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sl/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sl/strings.xml
index ef1fe20..b50aaae 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sl/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sl/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Preklopi v celozaslonski način fotoaparata"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Gumb zdaj upravlja sprednji fotoaparat"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Gumb zdaj upravlja hrbtni fotoaparat"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Ustavi snemanje videoposnetka"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Uporaba fotoaparata spredaj"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Uporaba fotoaparata zadaj"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Posnemi fotografijo"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Preklopi v celozaslonski način fotoaparata"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Preklopi v predogled fotoaparata"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Preklopi na fotoaparat na sprednji strani"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Preklopi na fotoaparat na zadnji strani"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Posnemi fotografijo"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Znova posnemi fotografijo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sq/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sq/strings.xml
index ff8cb87..4be0317 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sq/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sq/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Kalo në kamerën me ekran të plotë"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Butoni tani është kamera e përparme"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Butoni tani është kamera e pasme"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Ndalo regjistrimin e videos"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Po përdor kamerën e përparme"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Po përdor kamerën e pasme"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Bëj një fotografi"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Kalo në kamerën me ekran të plotë"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Kalo te pamja paraprake e kamerës"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Kalo te kamera e përparme"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Kalo te kamera e pasme"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Bëj një fotografi"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Bëje përsëri fotografinë"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sr/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sr/strings.xml
index 17150b4..4afcbe9 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sr/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sr/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Пређите на приказ камере преко целог екрана"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Дугме сад активира предњу камеру"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Дугме сад активира задњу камеру"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Зауставите снимање видеа"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Користимо предњу камеру"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Користимо задњу камеру"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Снимите слику"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Пребаците на приказ камере преко целог екрана"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Пребаците на преглед камере"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Пребаците на предњу камеру"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Пребаците на задњу камеру"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Снимите слику"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Поново снимите слику"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sv/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sv/strings.xml
index 3091479..8bd00cc 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sv/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sv/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Byt till fullskärmskamera"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Knappen är nu framåtvänd kamera"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Knappen är nu bakåtvänd kamera"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Sluta spela in video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Använder främre kamera"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Använder bakre kamera"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Ta en bild"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Växla till helskärmskamera"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Växla till förhandsgranskning i kameran"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Växla till den framåtvända kameran"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Växla till den bakåtvända kameran"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Ta en bild"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Ta en ny bild"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-sw/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-sw/strings.xml
index 8608b75..c951ac6 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-sw/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-sw/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Badilisha utumie kamera ya skrini nzima"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Kitufe hiki sasa ni kamera ya mbele"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Kitufe hiki sasa ni kamera ya nyuma"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Acha kurekodi video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Inatumia kamera ya mbele"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Inatumia kamera ya nyuma"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Piga picha"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Badili utumie kamera ya skrini nzima"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Badili utumie onyesha la kuchungulia la kamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Badili utumie kamera ya mbele"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Badili utumie kamera ya nyuma"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Piga picha"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Piga picha tena"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ta/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ta/strings.xml
index 9c42144..374cfcf 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ta/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ta/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"முழுத் திரை கேமராவிற்கு மாறும்"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"இப்போது முன்புறக் கேமராவைக் குறிக்கும் பொத்தான்"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"இப்போது பின்புறக் கேமராவைக் குறிக்கும் பொத்தான்"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"வீடியோ ரெக்கார்டு செய்யப்படுவதை நிறுத்தும்"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"முன்பக்கக் கேமராவைப் பயன்படுத்துகிறீர்கள்"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"பின்பக்கக் கேமராவைப் பயன்படுத்துகிறீர்கள்"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"படமெடுக்கும்"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"முழுத் திரை கேமராவிற்கு மாறும் பொத்தான்"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"கேமரா மாதிரிக்காட்சிக்கு மாறும் பொத்தான்"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"முன்பக்க கேமராவிற்கு மாறும் பொத்தான்"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"பின்பக்க கேமராவிற்கு மாறும் பொத்தான்"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"படமெடுக்கும் பொத்தான்"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"மீண்டும் படமெடுக்கும் பொத்தான்"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-te/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-te/strings.xml
index 4587593..099fa67 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-te/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-te/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"పూర్తి స్క్రీన్ కెమెరాకు మారుస్తుంది"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"బటన్ ఇప్పుడు ముందువైపు కెమెరాగా పని చేస్తోంది"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"బటన్ ఇప్పుడు వెనుకవైపు కెమెరాగా పని చేస్తోంది"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"వీడియో రికార్డింగ్‌ను ఆపివేస్తుంది"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"ముందు కెమెరాను ఉపయోగిస్తున్నాము"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"వెనుక కెమెరాను ఉపయోగిస్తున్నాము"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ఫోటో తీస్తుంది"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"పూర్తి స్క్రీన్ కెమెరాకు మారుస్తుంది"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"కెమెరా పరిదృశ్యానికి మారుస్తుంది"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"ముందువైపు కెమెరాకు మారుస్తుంది"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"వెనుకవైపు కెమెరాకు మారుస్తుంది"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ఫోటో తీస్తుంది"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ఫోటోను మళ్లీ తీస్తుంది"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-th/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-th/strings.xml
index 9b1150f..62c69a3 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-th/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-th/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"สลับไปยังกล้องแบบเต็มหน้าจอ"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"ขณะนี้ปุ่มเป็นกล้องหน้า"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"ขณะนี้ปุ่มเป็นกล้องหลัง"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"หยุดการบันทึกวิดีโอ"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"กำลังใช้กล้องหน้า"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"กำลังใช้กล้องหลัง"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"ถ่ายภาพ"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"เปลี่ยนเป็นกล้องแบบเต็มหน้าจอ"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"เปลี่ยนเป็นการแสดงตัวอย่างจากกล้อง"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"เปลี่ยนเป็นกล้องหน้า"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"เปลี่ยนเป็นกล้องหลัง"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"ถ่ายภาพ"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"ถ่ายภาพอีกครั้ง"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-tl/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-tl/strings.xml
index 5fd98c1..2f6fb83 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-tl/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-tl/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Lumilipat sa camera na full screen"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Ang button ay para na sa camera sa harap"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Ang button ay para na sa camera sa likod"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Ihinihinto ang pagre-record ng video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Ginagamit ang camera sa harap"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Ginagamit ang camera sa likuran"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Kumuha ng larawan"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Lumipat sa camera na full screen"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Lumipat sa preview ng camera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Lumipat sa camera na nasa harap"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Lumipat sa camera na nasa likod"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Kumuha ng larawan"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Kunang muli"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-tr/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-tr/strings.xml
index 80b0b94..da54ac8 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-tr/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-tr/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Tam ekran kameraya geçer"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Düğme artık ön kamera için kullanılıyor"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Düğme artık arka kamera için kullanılıyor"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Video kaydını durdurur"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Ön kamera kullanılıyor"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Arka kamera kullanılıyor"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Fotoğraf çeker"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Tam ekran kameraya geçer"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Kamera önizlemesine geçer"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Ön kameraya geçer"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Arka kameraya geçer"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Fotoğraf çeker"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Fotoğrafı yeniden çeker"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-uk/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-uk/strings.xml
index c250615..cea540a 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-uk/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-uk/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Показ зображення з камери на весь екран"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Зараз це кнопка камери на передній панелі"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Зараз це кнопка камери на задній панелі"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Зупинення запису відео"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Використання фронтальної камери"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Використання задньої камери"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Зйомка фото"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Показ зображення з камери на весь екран"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Попередній перегляд зображення з камери"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Перейти до фронтальної камери"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Перейти до задньої камери"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Зробити фото"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Зробити фото ще раз"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-ur/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-ur/strings.xml
index edd4178..585a55a 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-ur/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-ur/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"پوری اسکرین کے کیمرہ پر سوئچ کریں"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"بٹن اب فرنٹ کیمرا ہے"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"بٹن اب بیک کیمرا ہے"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"ویڈیو ریکارڈ کرنے کو روکیں"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"فرنٹ کیمرا استعمال ہو رہا ہے"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"بیک کیمرا استعمال ہو رہا ہے"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"تصویر لیں"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"پوری اسکرین کے کیمرہ پر سوئچ کریں"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"کیمرہ پیش منظر پر سوئچ کریں"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"فرنٹ والے کیمرے پر سوئچ کریں"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"عقب والے کیمرے پر سوئچ کریں"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"تصویر لیں"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"دوبارہ تصویر لیں"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-uz/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-uz/strings.xml
index 0377673..8441d88 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-uz/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-uz/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"To‘liq ekranli rejimga o‘tish"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Endi bu old kamera tugmasi"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Endi bu orqa kamera tugmasi"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Videoga olishni to‘xtatish"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Old kameradan foydalanilmoqda"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Orqa kameradan foydalanilmoqda"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Suratga olish"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"To‘liq ekranli rejimga o‘tish"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Oldindan ko‘rish rejimiga o‘tish"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Old kamerani yoqish"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Orqa kamerani yoqish"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Rasmga olish"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Yangi rasmga olish"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-vi/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-vi/strings.xml
index 81a0e62..0546664 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-vi/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-vi/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Chuyển sang máy ảnh toàn màn hình"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Hiện tại, nút ở chế độ máy ảnh mặt trước"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Hiện tại, nút ở chế độ máy ảnh mặt sau"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Dừng quay video"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Đang sử dụng máy ảnh trước"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Đang sử dụng máy ảnh sau"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Chụp ảnh"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Chuyển sang máy ảnh toàn màn hình"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Chuyển sang chế độ xem trước máy ảnh"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Chuyển sang máy ảnh mặt trước"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Chuyển sang máy ảnh mặt sau"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Chụp ảnh"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Chụp lại ảnh"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rCN/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rCN/strings.xml
index 311569c..24e9c1a 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rCN/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"切换到全屏相机模式"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"点按按钮可切换到前置摄像头"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"点按按钮可切换到后置摄像头"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"停止录制视频"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"正在使用前置摄像头"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"正在使用后置摄像头"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"拍照"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"切换到全屏相机模式"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"切换到相机预览模式"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"切换到前置摄像头"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"切换到后置摄像头"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"拍照"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"重拍照片"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rHK/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rHK/strings.xml
index 890a18f..0310b10 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rHK/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"切換至全屏攝像"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"按鈕目前為前置鏡頭"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"按鈕目前為後置鏡頭"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"停止錄製影片"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"使用前置鏡頭"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"使用後置鏡頭"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"拍照"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"切換至全螢幕相機"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"切換至相機預覽"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"切換至前置鏡頭"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"切換至後置鏡頭"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"拍照"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"重新拍照"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rTW/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rTW/strings.xml
index 30fa03b..d41ddda 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-zh-rTW/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"切換至全螢幕相機"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"按鈕目前設定為前置鏡頭"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"按鈕目前設定為後置鏡頭"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"停止錄影"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"目前使用的是前置鏡頭"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"目前使用的是後置鏡頭"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"拍攝相片"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"切換至全螢幕相機"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"切換至相機預覽畫面"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"切換至前置鏡頭"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"切換至後置鏡頭"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"拍照"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"重新拍照"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values-zu/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values-zu/strings.xml
index 33a9284..6e147b7 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values-zu/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values-zu/strings.xml
@@ -1,11 +1,26 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+  -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
-    <string name="camera_switch_full_screen" msgid="8940026902611470063">"Shintshela kukhamera yesikrini esigcwele"</string>
-    <string name="camera_switch_camera_facing" msgid="6965029101223590384">"Inkinobho manje iyikhamera yangaphambili"</string>
-    <string name="camera_switch_camera_rear" msgid="2518207979995455566">"Inkinobho manje iyikhamera yangemuva"</string>
-    <string name="camera_cancel_recording" msgid="1957458244979306869">"Misa ukurekhoda ividiyo"</string>
-    <string name="using_front_camera" msgid="6734227994972108992">"Isebenzisa ikhamera yangaphambili"</string>
-    <string name="using_back_camera" msgid="2143070243242164971">"Isebenzisa ikhamera yangemuva"</string>
-    <string name="camera_take_picture" msgid="2366908858042883376">"Thatha isithombe"</string>
+    <string name="description_camera_switch_full_screen" msgid="835509743097428216">"Shintshela kukhamera yesikrini esigcwele"</string>
+    <string name="description_camera_switch_preview_screen" msgid="2575355782470181047">"Shintshela ekuhloleni kuqala kwekhamera"</string>
+    <string name="description_camera_switch_camera_facing" msgid="6831946148788764412">"Shintshela kwikhamera yangaphambili"</string>
+    <string name="description_camera_switch_camera_rear" msgid="644854053851698293">"Shintshela kwikhamera ebheke emuva"</string>
+    <string name="description_camera_take_picture" msgid="3953639532118936286">"Thatha isithombe"</string>
+    <string name="description_camera_cancel_photo" msgid="2759593421176396701">"Thatha kabusha isithombe"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values/dimens.xml b/java/com/android/dialer/callcomposer/cameraui/res/values/dimens.xml
index 09d4a58..e3d5c24 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values/dimens.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values/dimens.xml
@@ -16,7 +16,7 @@
   -->
 <resources>
   <dimen name="camera_view_button_margin">22dp</dimen>
-  <dimen name="camera_view_button_size">46dp</dimen>
+  <dimen name="camera_view_button_size">48dp</dimen>
   <dimen name="capture_button_size">84dp</dimen>
   <dimen name="capture_button_bottom_margin">4dp</dimen>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml b/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml
index 999fe8f..4db7968 100644
--- a/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml
+++ b/java/com/android/dialer/callcomposer/cameraui/res/values/strings.xml
@@ -1,17 +1,30 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
 <resources>
   <!-- Content description of button to switch to full screen camera -->
-  <string name="camera_switch_full_screen">Switch to full screen camera</string>
+  <string name="description_camera_switch_full_screen">Switch to full screen camera</string>
+  <!-- Content description of button to resize camera from fullscreen to only a preview -->
+  <string name="description_camera_switch_preview_screen">Switch to camera preview</string>
   <!-- Content description of button when after swapped to front -->
-  <string name="camera_switch_camera_facing">Button is now front camera</string>
+  <string name="description_camera_switch_camera_facing">Switch to front facing camera</string>
   <!-- Content description of button when after swapped to back -->
-  <string name="camera_switch_camera_rear">Button is now back camera</string>
-  <!-- Content description of button to cancel recording video -->
-  <string name="camera_cancel_recording">Stop recording video</string>
-  <!-- Accessibility announcement for when we are using the front facing camera -->
-  <string name="using_front_camera">Using front camera</string>
-  <!-- Accessibility announcement for when we are using the back camera -->
-  <string name="using_back_camera">Using back camera</string>
+  <string name="description_camera_switch_camera_rear">Switch to back facing camera</string>
   <!-- Content description of button to take a photo -->
-  <string name="camera_take_picture">Take photo</string>
+  <string name="description_camera_take_picture">Take photo</string>
+  <!-- Content description of button to cancel a photo -->
+  <string name="description_camera_cancel_photo">Retake photo</string>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/callcomposer/proto/call_composer_contact.proto b/java/com/android/dialer/callcomposer/proto/call_composer_contact.proto
deleted file mode 100644
index 99766aa..0000000
--- a/java/com/android/dialer/callcomposer/proto/call_composer_contact.proto
+++ /dev/null
@@ -1,18 +0,0 @@
-syntax = "proto2";
-
-option java_package = "com.android.dialer.callcomposer";
-option java_multiple_files = true;
-option optimize_for = LITE_RUNTIME;
-
-package com.android.dialer.callcomposer;
-
-message CallComposerContact {
-  optional fixed64 photo_id = 1;
-  optional string photo_uri = 2;
-  optional string contact_uri = 3;
-  optional string name_or_number = 4;
-  optional string number = 6;
-  optional string display_number = 7;
-  optional string number_label = 8;
-  optional int32 contact_type = 9;
-}
diff --git a/java/com/android/dialer/callcomposer/res/layout/call_composer_activity.xml b/java/com/android/dialer/callcomposer/res/layout/call_composer_activity.xml
index c3f1102..588cc1d 100644
--- a/java/com/android/dialer/callcomposer/res/layout/call_composer_activity.xml
+++ b/java/com/android/dialer/callcomposer/res/layout/call_composer_activity.xml
@@ -15,11 +15,11 @@
   ~ limitations under the License
   -->
 <FrameLayout
-  xmlns:android="http://schemas.android.com/apk/res/android"
-  android:id="@+id/background"
-  android:layout_width="match_parent"
-  android:layout_height="match_parent"
-  android:background="@color/call_composer_background_color">
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/background"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:background="@color/call_composer_background_color">
 
   <LinearLayout
     android:id="@+id/call_composer_container"
@@ -70,10 +70,22 @@
         android:background="@drawable/call_composer_contact_border"/>
     </RelativeLayout>
 
-    <android.support.v4.view.ViewPager
-      android:id="@+id/call_composer_view_pager"
-      android:layout_width="match_parent"
-      android:layout_height="@dimen/call_composer_view_pager_height"/>
+    <FrameLayout
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content">
+
+      <com.android.dialer.widget.LockableViewPager
+          android:id="@+id/call_composer_view_pager"
+          android:layout_width="match_parent"
+          android:layout_height="@dimen/call_composer_view_pager_height"/>
+
+      <ProgressBar
+          android:id="@+id/call_composer_loading"
+          android:layout_width="wrap_content"
+          android:layout_height="wrap_content"
+          android:layout_gravity="center"
+          android:visibility="gone"/>
+    </FrameLayout>
   </LinearLayout>
 
   <FrameLayout
@@ -87,7 +99,7 @@
         android:layout_height="@dimen/call_composer_media_bar_height"
         android:orientation="horizontal"
         android:gravity="center_horizontal"
-        android:background="@color/dialer_secondary_color"
+        android:background="@color/dialer_theme_color_dark"
         android:clickable="true">
 
       <ImageView
@@ -96,7 +108,8 @@
           android:layout_height="match_parent"
           android:scaleType="center"
           android:src="@drawable/quantum_ic_camera_alt_white_24"
-          android:background="?android:attr/selectableItemBackgroundBorderless"/>
+          android:background="?android:attr/selectableItemBackgroundBorderless"
+          android:contentDescription="@string/description_call_composer_camera"/>
 
       <ImageView
           android:id="@+id/call_composer_photo"
@@ -104,7 +117,8 @@
           android:layout_height="match_parent"
           android:scaleType="center"
           android:src="@drawable/quantum_ic_photo_white_24"
-          android:background="?android:attr/selectableItemBackgroundBorderless"/>
+          android:background="?android:attr/selectableItemBackgroundBorderless"
+          android:contentDescription="@string/description_call_composer_photo"/>
 
       <ImageView
           android:id="@+id/call_composer_message"
@@ -112,7 +126,8 @@
           android:layout_height="match_parent"
           android:scaleType="center"
           android:src="@drawable/quantum_ic_message_white_24"
-          android:background="?android:attr/selectableItemBackgroundBorderless"/>
+          android:background="?android:attr/selectableItemBackgroundBorderless"
+          android:contentDescription="@string/description_call_composer_message"/>
     </LinearLayout>
 
     <FrameLayout
diff --git a/java/com/android/dialer/callcomposer/res/layout/fragment_message_composer.xml b/java/com/android/dialer/callcomposer/res/layout/fragment_message_composer.xml
index 77c7a58..1556247 100644
--- a/java/com/android/dialer/callcomposer/res/layout/fragment_message_composer.xml
+++ b/java/com/android/dialer/callcomposer/res/layout/fragment_message_composer.xml
@@ -70,7 +70,7 @@
       android:background="@color/background_dialer_white"
       android:textCursorDrawable="@drawable/searchedittext_custom_cursor"
       android:layout_toStartOf="@+id/remaining_characters"
-      android:inputType="textShortMessage"
+      android:inputType="textShortMessage|textCapSentences"
       android:imeOptions="flagNoExtractUi|actionSend"/>
 
     <TextView
diff --git a/java/com/android/dialer/callcomposer/res/values-af/strings.xml b/java/com/android/dialer/callcomposer/res/values-af/strings.xml
index 81f97fd..44277c8 100644
--- a/java/com/android/dialer/callcomposer/res/values-af/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-af/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Laat toe"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Verleen toegang tot kamera om \'n foto te neem"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Verleen toegang tot media om \'n prent te deel"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Neem \'n foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Kies \'n foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Stuur \'n boodskap"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-am/strings.xml b/java/com/android/dialer/callcomposer/res/values-am/strings.xml
index c442490..d848a04 100644
--- a/java/com/android/dialer/callcomposer/res/values-am/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-am/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"ፍቀድ"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ፎቶ ያንሱ፣ ለካሜራ መዳረሻ ይስጡ"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"አንድ ምስል ለማጋራት ለማህደረ መረጃ መዳረሻ ይስጡ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ፎቶ ያንሱ"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ፎቶ ይምረጡ"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"መልዕክት ይላኩ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ar/strings.xml b/java/com/android/dialer/callcomposer/res/values-ar/strings.xml
index ba43f0f..44ea0eb 100644
--- a/java/com/android/dialer/callcomposer/res/values-ar/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ar/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"سماح"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"لالتقاط صورة، يجب منح إذن بالدخول إلى الكاميرا"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"لمشاركة صورة، يجب منح إذن بالدخول إلى الوسائط"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"التقاط صورة"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"اختيار صورة"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"إرسال رسالة"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-az/strings.xml b/java/com/android/dialer/callcomposer/res/values-az/strings.xml
index 2f913d9..47a8257 100644
--- a/java/com/android/dialer/callcomposer/res/values-az/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-az/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"İcazə verin"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Şəkil çəkmək üçün kameraya giriş icazəsi verin"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Şəkli paylaşmaq üçün Mediaya giriş icazəsi verin"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Şəkil çəkin"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Foto seçin"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Mesaj göndərin"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/callcomposer/res/values-b+sr+Latn/strings.xml
index c357d50..ef3ff06 100644
--- a/java/com/android/dialer/callcomposer/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-b+sr+Latn/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Dozvoli"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Odobrite pristup Kameri da biste snimili sliku"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Odobrite pristup Medijima da biste delili sliku"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Slikajte"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Izaberite sliku"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Pošaljite poruku"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-be/strings.xml b/java/com/android/dialer/callcomposer/res/values-be/strings.xml
index bb3244b..b667cdb 100644
--- a/java/com/android/dialer/callcomposer/res/values-be/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-be/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Дазволіць"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Каб зрабіць фота, адкрыйце доступ да Камеры"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Каб абагуліць відарыс, адкрыйце доступ да медыяфайлаў"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Зрабіць фота"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Выбраць фота"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Адправіць паведамленне"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-bg/strings.xml b/java/com/android/dialer/callcomposer/res/values-bg/strings.xml
index 1bc05cd..6a458c4 100644
--- a/java/com/android/dialer/callcomposer/res/values-bg/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-bg/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Разрешаване"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"За да направите снимка, разрешете достъп до Камера"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"За да споделите изображение, разрешете достъп до Медии"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Правене на снимка"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Избиране на снимка"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Изпращане на съобщение"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-bn/strings.xml b/java/com/android/dialer/callcomposer/res/values-bn/strings.xml
index e991b3b..c23edb6 100644
--- a/java/com/android/dialer/callcomposer/res/values-bn/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-bn/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"অনুমতি দিন"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"একটি ফটো নিতে, ক্যামেরাতে অ্যাক্সেস দিন"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"কোনো ছবি শেয়ার করতে, মিডিয়াতে অ্যাক্সেস দিন"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"একটি ছবি তুলুন"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"একটি ফটো বেছে নিন"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"একটি বার্তা পাঠান"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-bs/strings.xml b/java/com/android/dialer/callcomposer/res/values-bs/strings.xml
index 7d0b8d2..2955aea 100644
--- a/java/com/android/dialer/callcomposer/res/values-bs/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-bs/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Dozvoli"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Da snimite fotografiju, dajte pristup Kameri"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Da podijelite sliku, dozvolite pristup Medijima"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Uslikaj"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Izaberi fotografiju"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Pošalji poruku"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ca/strings.xml b/java/com/android/dialer/callcomposer/res/values-ca/strings.xml
index 4fa52ad..5b457e2 100644
--- a/java/com/android/dialer/callcomposer/res/values-ca/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ca/strings.xml
@@ -28,6 +28,9 @@
     <string name="camera_switch_to_still_mode" msgid="1881982437979592567">"Fes una foto"</string>
     <string name="camera_media_failure" msgid="8979549551450965882">"No s\'ha pogut carregar la imatge de la càmera"</string>
     <string name="allow" msgid="8637148297403066623">"Permet"</string>
-    <string name="camera_permission_text" msgid="7863231776480341614">"Per fer una foto, dóna accés a la càmera"</string>
-    <string name="gallery_permission_text" msgid="4102566850658919346">"Per compartir una imatge, dóna accés al contingut multimèdia"</string>
+    <string name="camera_permission_text" msgid="7863231776480341614">"Per fer una foto, dona accés a la càmera"</string>
+    <string name="gallery_permission_text" msgid="4102566850658919346">"Per compartir una imatge, dona accés al contingut multimèdia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Fes una foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Tria una foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Envia un missatge"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-cs/strings.xml b/java/com/android/dialer/callcomposer/res/values-cs/strings.xml
index 93ae0c1..2f4a06b 100644
--- a/java/com/android/dialer/callcomposer/res/values-cs/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-cs/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Povolit"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Chcete-li pořídit fotku, povolte přístup k fotoaparátu"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Pokud chcete sdílet fotku, povolte přístup k mediálním souborům"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Vyfotit"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Vybrat fotku"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Poslat zprávu"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-da/strings.xml b/java/com/android/dialer/callcomposer/res/values-da/strings.xml
index b1e3e6d..3f7fb03 100644
--- a/java/com/android/dialer/callcomposer/res/values-da/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-da/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Tillad"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Du skal give adgang til kameraet for at tage et billede"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Du skal give adgang til medier for at dele et billede"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tag et billede"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Vælg et billede"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Send en sms"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-de/strings.xml b/java/com/android/dialer/callcomposer/res/values-de/strings.xml
index 9b9c13a..a57359e 100644
--- a/java/com/android/dialer/callcomposer/res/values-de/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-de/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Zulassen"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Um ein Foto aufzunehmen, musst du den Zugriff auf die Kamera erlauben."</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Um ein Bild zu teilen, musst du den Zugriff auf deine Medien erlauben."</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Bild aufnehmen"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Foto auswählen"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Nachricht senden"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-el/strings.xml b/java/com/android/dialer/callcomposer/res/values-el/strings.xml
index 45fce84..1700135 100644
--- a/java/com/android/dialer/callcomposer/res/values-el/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-el/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Να επιτρέπεται"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Για να τραβήξετε μια φωτογραφία, παραχωρήστε πρόσβαση στην κάμερα"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Για να μοιραστείτε μια εικόνα, παραχωρήστε πρόσβαση στα πολυμέσα"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Λήψη φωτογραφίας"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Επιλογή φωτογραφίας"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Αποστολή μηνύματος"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-en-rAU/strings.xml b/java/com/android/dialer/callcomposer/res/values-en-rAU/strings.xml
index c34cbbd..3398551 100644
--- a/java/com/android/dialer/callcomposer/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-en-rAU/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Allow"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"To take a photo, give access to Camera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"To share an image, give access to Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Take a picture"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Choose a photo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Sending a message"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-en-rGB/strings.xml b/java/com/android/dialer/callcomposer/res/values-en-rGB/strings.xml
index c34cbbd..3398551 100644
--- a/java/com/android/dialer/callcomposer/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-en-rGB/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Allow"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"To take a photo, give access to Camera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"To share an image, give access to Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Take a picture"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Choose a photo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Sending a message"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-en-rIN/strings.xml b/java/com/android/dialer/callcomposer/res/values-en-rIN/strings.xml
index c34cbbd..3398551 100644
--- a/java/com/android/dialer/callcomposer/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-en-rIN/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Allow"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"To take a photo, give access to Camera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"To share an image, give access to Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Take a picture"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Choose a photo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Sending a message"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-es-rUS/strings.xml b/java/com/android/dialer/callcomposer/res/values-es-rUS/strings.xml
index 797d001..fc0927f 100644
--- a/java/com/android/dialer/callcomposer/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-es-rUS/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para tomar una foto, permite el acceso a la cámara"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para compartir una imagen, permite el acceso al contenido multimedia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tomar una foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Elegir una foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Enviar un mensaje"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-es/strings.xml b/java/com/android/dialer/callcomposer/res/values-es/strings.xml
index 8a4e7d6..c6f0dcd 100644
--- a/java/com/android/dialer/callcomposer/res/values-es/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-es/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para hacer una foto, permite el acceso a la cámara"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para compartir una imagen, permite el acceso al contenido multimedia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Hacer una foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Elegir una foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Enviar un mensaje"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-et/strings.xml b/java/com/android/dialer/callcomposer/res/values-et/strings.xml
index 17b77a2..ecb2dee 100644
--- a/java/com/android/dialer/callcomposer/res/values-et/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-et/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Luba"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Foto jäädvustamiseks lubage juurdepääs kaamerale"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Pildi jagamiseks lubage juurdepääs meediale"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Pildistamine"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Foto valimine"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Sõnumi saatmine"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-eu/strings.xml b/java/com/android/dialer/callcomposer/res/values-eu/strings.xml
index be2aba7..b55dfd2 100644
--- a/java/com/android/dialer/callcomposer/res/values-eu/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-eu/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Baimendu"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Argazkiak ateratzeko, eman kamera atzitzeko baimena"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Irudiak partekatzeko, eman multimedia-edukirako sarbidea"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Atera argazki bat"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Aukeratu argazki bat"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Bidali mezu bat"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-fa/strings.xml b/java/com/android/dialer/callcomposer/res/values-fa/strings.xml
index 9d588b2..034ab26 100644
--- a/java/com/android/dialer/callcomposer/res/values-fa/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-fa/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"مجاز است"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"برای عکس گرفتن، به دوربین اجازه دسترسی بدهید"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"برای اشتراک‌گذاری تصویر، به رسانه اجازه دسترسی بدهید"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"عکس گرفتن"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"انتخاب عکس"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ارسال پیام"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-fi/strings.xml b/java/com/android/dialer/callcomposer/res/values-fi/strings.xml
index 98821bc..c19cd7b 100644
--- a/java/com/android/dialer/callcomposer/res/values-fi/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-fi/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Salli"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Jos haluat ottaa valokuvan, salli kameran käyttö."</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Jos haluat jakaa kuvan, salli kuvien käyttö."</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Ota kuva"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Valitse kuva"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Lähetä viesti"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-fr-rCA/strings.xml b/java/com/android/dialer/callcomposer/res/values-fr-rCA/strings.xml
index 29c001d..37b1f19 100644
--- a/java/com/android/dialer/callcomposer/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-fr-rCA/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Autoriser"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Pour prendre une photo, autorisez l\'accès à l\'appareil photo"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Pour partager une image, autorisez l\'accès au contenu multimédia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Prendre une photo"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Choisir une photo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Envoyer un message"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-fr/strings.xml b/java/com/android/dialer/callcomposer/res/values-fr/strings.xml
index ab56289..00078a4 100644
--- a/java/com/android/dialer/callcomposer/res/values-fr/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-fr/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Autoriser"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Pour prendre une photo, accordez l\'accès à l\'appareil photo."</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Pour partager une image, accordez l\'accès aux fichiers multimédia."</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Prendre une photo"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Choisir une photo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Envoyer un message"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-gl/strings.xml b/java/com/android/dialer/callcomposer/res/values-gl/strings.xml
index 5c86768..44b1790 100644
--- a/java/com/android/dialer/callcomposer/res/values-gl/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-gl/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para sacar unha foto, concede permiso de acceso á cámara"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para compartir unha imaxe, concede permiso de acceso aos ficheiros multimedia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tira unha foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Escolle unha foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Envía unha mensaxe"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-gu/strings.xml b/java/com/android/dialer/callcomposer/res/values-gu/strings.xml
index c948d2e..64ffc1f 100644
--- a/java/com/android/dialer/callcomposer/res/values-gu/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-gu/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"મંજૂરી આપો"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ફોટો લેવા માટે, કૅમેરાની ઍક્સેસ આપો"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"છબી શેર કરવા, મીડિયાની ઍક્સેસ આપો"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"એક ચિત્ર લો"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ફોટો પસંદ કરો"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"એક સંદેશ મોકલો"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-hi/strings.xml b/java/com/android/dialer/callcomposer/res/values-hi/strings.xml
index 6cfdb16..6b0bc04 100644
--- a/java/com/android/dialer/callcomposer/res/values-hi/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-hi/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"अनुमति दें"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"फ़ोटो लेने के लिए, कैमरे की ऐक्सेस दें"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"चित्र साझा करने के लिए, मीडिया की ऐक्सेस दें"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"चित्र लें"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"एक फ़ोटो चुनें"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"संदेश भेजें"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-hr/strings.xml b/java/com/android/dialer/callcomposer/res/values-hr/strings.xml
index 613f1f4..a51318a 100644
--- a/java/com/android/dialer/callcomposer/res/values-hr/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-hr/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Omogući"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Da biste snimili fotografiju, dopustite pristup Fotoaparatu"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Za dijeljenje slike dopustite pristup Medijima"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Snimi fotografiju"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Odaberi fotografiju"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Pošalji poruku"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-hu/strings.xml b/java/com/android/dialer/callcomposer/res/values-hu/strings.xml
index 451fcb4..a5faaa2 100644
--- a/java/com/android/dialer/callcomposer/res/values-hu/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-hu/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Engedélyezés"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Fotó készítéséhez adjon hozzáférést a fényképezőgéphez"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Kép megosztásához adjon hozzáférést a médiafájlokhoz"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Kép készítése"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Fotó kiválasztása"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Üzenet küldése"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-hy/strings.xml b/java/com/android/dialer/callcomposer/res/values-hy/strings.xml
index 43793d6..ea92e6a 100644
--- a/java/com/android/dialer/callcomposer/res/values-hy/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-hy/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Թույլատրել"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Լուսանկարելու համար տրամադրեք Խցիկն օգտագործելու հնարավորություն"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Որևէ պատկերով կիսվելու համար տրամադրեք մեդիանյութերն օգտագործելու հնարավորություն"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Լուսանկարել"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Ընտրել լուսանկար"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Ուղարկել հաղորդագրություն"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-in/strings.xml b/java/com/android/dialer/callcomposer/res/values-in/strings.xml
index 4f90810..302395b 100644
--- a/java/com/android/dialer/callcomposer/res/values-in/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-in/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Izinkan"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Untuk mengambil foto, berikan akses ke Kamera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Untuk membagikan gambar, berikan akses ke Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Jepret"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Pilih foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Mengirim pesan"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-is/strings.xml b/java/com/android/dialer/callcomposer/res/values-is/strings.xml
index 5ca3050..cf525e1 100644
--- a/java/com/android/dialer/callcomposer/res/values-is/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-is/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Leyfa"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Til að taka mynd skaltu veita myndavélinni aðgang"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Til að deila mynd skaltu veita margmiðlunarefni aðgang"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Taka mynd"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Velja mynd"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Senda skilaboð"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-it/strings.xml b/java/com/android/dialer/callcomposer/res/values-it/strings.xml
index 40c893f..4a10984 100644
--- a/java/com/android/dialer/callcomposer/res/values-it/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-it/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Consenti"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Per poter scattare una foto devi concedere l\'accesso alla fotocamera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Per condividere un\'immagine, devi concedere l\'accesso ai contenuti multimediali"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Scatta una foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Scegli una foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Invia un messaggio"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-iw/strings.xml b/java/com/android/dialer/callcomposer/res/values-iw/strings.xml
index e1557dc..7fed447 100644
--- a/java/com/android/dialer/callcomposer/res/values-iw/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-iw/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"אפשר"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"כדי שתוכל לצלם תמונות עליך להעניק לאפליקציה גישה למצלמה"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"כדי שתוכל לשתף תמונות עליך להעניק לאפליקציה גישה למדיה"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"צילום תמונה"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"בחירת תמונה"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"שליחת הודעה"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ja/strings.xml b/java/com/android/dialer/callcomposer/res/values-ja/strings.xml
index bc8161d..d13f40e 100644
--- a/java/com/android/dialer/callcomposer/res/values-ja/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ja/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"許可"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"写真を撮るには、まずカメラへのアクセスを許可してください"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"画像を共有するには、まずメディアへのアクセスを許可してください"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"画像を撮影します"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"写真を選択します"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"メッセージを送信します"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ka/strings.xml b/java/com/android/dialer/callcomposer/res/values-ka/strings.xml
index 79f39ab..8c2823f 100644
--- a/java/com/android/dialer/callcomposer/res/values-ka/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ka/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"ნების დართვა"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ფოტოს გადასაღებად მიეცით კამერაზე წვდომა"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"სურათის გასაზიარებლად მიეცით მედიაზე წვდომა"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"სურათის გადაღება"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ფოტოს არჩევა"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"შეტყობინების გაგზავნა"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-kk/strings.xml b/java/com/android/dialer/callcomposer/res/values-kk/strings.xml
index ffe045f..2a0f641 100644
--- a/java/com/android/dialer/callcomposer/res/values-kk/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-kk/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Рұқсат беру"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Суретке түсіру үшін камераға кіруге рұқсат беріңіз"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Суретті жіберу үшін медиафайлға кіруге рұқсат беріңіз"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Суретке түсіру"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Суретті таңдау"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Хабар жіберу"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-km/strings.xml b/java/com/android/dialer/callcomposer/res/values-km/strings.xml
index 4444bce..0e63923 100644
--- a/java/com/android/dialer/callcomposer/res/values-km/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-km/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"អនុញ្ញាត"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ដើម្បីថតរូប សូមអនុញ្ញាត​ឲ្យចូលប្រើប្រាស់​កាមេរ៉ា"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ដើម្បីចែករំលែករូបភាព សូមអនុញ្ញាត​ឲ្យចូលប្រើប្រាស់​មេឌៀ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ថតរូប"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ជ្រើសរើស​រូបថត"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ផ្ញើសារ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-kn/strings.xml b/java/com/android/dialer/callcomposer/res/values-kn/strings.xml
index f50bdcc..96f7d5b 100644
--- a/java/com/android/dialer/callcomposer/res/values-kn/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-kn/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"ಅನುಮತಿಸಿ"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ಫೋಟೋ ತೆಗೆಯಲು, ಕ್ಯಾಮರಾಗೆ ಪ್ರವೇಶ ನೀಡಿ"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ಚಿತ್ರವನ್ನು ಹಂಚಿಕೊಳ್ಳಲು, ಮಾಧ್ಯಮಕ್ಕೆ ಪ್ರವೇಶವನ್ನು ನೀಡಿ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ಚಿತ್ರ ತೆಗೆದುಕೊಳ್ಳಿ"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ಒಂದು ಫೋಟೋ ಆಯ್ಕೆಮಾಡಿ"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ಸಂದೇಶ ಕಳುಹಿಸಿ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ko/strings.xml b/java/com/android/dialer/callcomposer/res/values-ko/strings.xml
index d710afa..1dd63be 100644
--- a/java/com/android/dialer/callcomposer/res/values-ko/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ko/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"허용"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"사진을 찍으려면 카메라에 액세스할 수 있도록 허용하세요."</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"이미지를 공유하려면 미디어에 액세스할 수 있도록 허용하세요."</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"사진 촬영"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"사진 선택"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"메시지 보내기"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ky/strings.xml b/java/com/android/dialer/callcomposer/res/values-ky/strings.xml
index c7c0533..4a1f504 100644
--- a/java/com/android/dialer/callcomposer/res/values-ky/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ky/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Уруксат берүү"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Сүрөткө тартуу үчүн, колдонмого камераны пайдаланууга уруксат бериңиз"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Сүрөттү бөлүшүү үчүн мультимедиага кирүүгө уруксат бериңиз"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Сүрөткө тартуу"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Сүрөттү тандоо"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Билдирүү жөнөтүү"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-lo/strings.xml b/java/com/android/dialer/callcomposer/res/values-lo/strings.xml
index 9c49460..5d58509 100644
--- a/java/com/android/dialer/callcomposer/res/values-lo/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-lo/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"ອະນຸຍາດ"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ເພື່ອຖ່າຍຮູບ, ໃຫ້ອະນຸຍາດການເຂົ້າຫາກ້ອງຖ່າຍຮູບກ່ອນ"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ເພື່ອແບ່ງປັນຮູບພາບໃດໜຶ່ງ, ໃຫ້ອະນຸຍາດການເຂົ້າຫາມີເດຍກ່ອນ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ຖ່າຍຮູບ"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ເລືອກຮູບພາບ..."</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ສົ່ງຂໍ້ຄວາມ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-lt/strings.xml b/java/com/android/dialer/callcomposer/res/values-lt/strings.xml
index 0b011f7..75f1236 100644
--- a/java/com/android/dialer/callcomposer/res/values-lt/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-lt/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Leisti"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Kad galėtumėte fotografuoti, leiskite pasiekti fotoaparatą"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Kad galėtumėte bendrinti vaizdą, leiskite pasiekti mediją"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Fotografuoti"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Pasirinkti nuotrauką"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Siųsti pranešimą"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-lv/strings.xml b/java/com/android/dialer/callcomposer/res/values-lv/strings.xml
index 8593ca0..895e0f3 100644
--- a/java/com/android/dialer/callcomposer/res/values-lv/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-lv/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Atļaut"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Lai uzņemtu fotoattēlu, piešķiriet piekļuvi kamerai."</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Lai kopīgotu attēlu, piešķiriet piekļuvi multivides saturam."</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Uzņemt attēlu"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Izvēlēties fotoattēlu"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Sūtīt ziņojumu"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-mk/strings.xml b/java/com/android/dialer/callcomposer/res/values-mk/strings.xml
index 40d7c62..623972e 100644
--- a/java/com/android/dialer/callcomposer/res/values-mk/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-mk/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Дозволете"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"За да фотографирате, дозволете пристап до „Камера“"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"За да споделите слика, дозволете пристап до Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Фотографирајте"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Изберете фотографија"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Испратете порака"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ml/strings.xml b/java/com/android/dialer/callcomposer/res/values-ml/strings.xml
index 0a0833d..ad2ce5d 100644
--- a/java/com/android/dialer/callcomposer/res/values-ml/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ml/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"അനുവദിക്കുക"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ഫോട്ടോ എടുക്കുന്നതിന്, ക്യാമറയ്ക്ക് ആക്സസ് നൽകുക"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ഫോട്ടോ പങ്കിടുന്നതിന്, മീഡിയയ്ക്ക് ആക്സസ് നൽകുക"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ഒരു ചിത്രമെടുക്കുക"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ഒരു ഫോട്ടോ തിരഞ്ഞെടുക്കുക"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ഒരു സന്ദേശം അയയ്‌ക്കുക"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-mn/strings.xml b/java/com/android/dialer/callcomposer/res/values-mn/strings.xml
index 54a292d..8895da7 100644
--- a/java/com/android/dialer/callcomposer/res/values-mn/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-mn/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Зөвшөөрөх"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Зураг авахын тулд камерт хандах зөвшөөрөл олгох шаардлагатай"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Зураг хуваалцахын тулд медиад хандах зөвшөөрөл олгох шаардлагатай"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Зураг авах"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Зураг сонгоно уу"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Зурвас илгээх"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-mr/strings.xml b/java/com/android/dialer/callcomposer/res/values-mr/strings.xml
index 7f8c5d7..fcfdebe 100644
--- a/java/com/android/dialer/callcomposer/res/values-mr/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-mr/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"अनुमती द्या"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"एक फोटो घेण्यासाठी, कॅमेर्‍यामध्ये प्रवेश द्या"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"एखादी प्रतिमा सामायिक करण्यासाठी मीडियामध्ये प्रवेश द्या"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"एक फोटो घ्या"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"फोटो निवडा"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"एक संदेश पाठवा"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ms/strings.xml b/java/com/android/dialer/callcomposer/res/values-ms/strings.xml
index 0927cde..7101489 100644
--- a/java/com/android/dialer/callcomposer/res/values-ms/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ms/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Benarkan"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Untuk mengambil foto, berikan akses kepada Kamera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Untuk berkongsi imej, berikan akses kepada Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Ambil gambar"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Pilih foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Hantar mesej"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-my/strings.xml b/java/com/android/dialer/callcomposer/res/values-my/strings.xml
index 6608e9a..02fc375 100644
--- a/java/com/android/dialer/callcomposer/res/values-my/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-my/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"ခွင့်ပြုရန်"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ဓာတ်ပုံရိုက်ရန် ကင်မရာသို့ ဝင်သုံးခွင့်ပေးပါ"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ပုံမျှဝေရန် မီဒီယာသို့ ဝင်သုံးခွင့်ပေးပါ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ဓာတ်ပုံတစ်ပုံ ရိုက်ရန်"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ဓာတ်ပုံတစ်ပုံ ရွေးရန်"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"မက်ဆေ့ဂျ်ပို့ရန်"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-nb/strings.xml b/java/com/android/dialer/callcomposer/res/values-nb/strings.xml
index 693e7fd..d66a165 100644
--- a/java/com/android/dialer/callcomposer/res/values-nb/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-nb/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Tillat"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Gi tilgang til kameraet for å ta bilder"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Gi Media tilgang for å dele bilder"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Ta et bilde"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Velg et bilde"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Send en melding"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ne/strings.xml b/java/com/android/dialer/callcomposer/res/values-ne/strings.xml
index 37dd681..a73f6f8 100644
--- a/java/com/android/dialer/callcomposer/res/values-ne/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ne/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"अनुमति दिनुहोस्"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"तस्बिर खिच्न, क्यामेरामाथि पहुँच दिनुहोस्"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"छवि आदान-प्रदान गर्न, मिडियामाथि पहुँच दिनुहोस्"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"तस्बिर खिच्नुहोस्"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"तस्बिर छनौट गर्नुहोस्"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"सन्देश पठाउनुहोस्"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-nl/strings.xml b/java/com/android/dialer/callcomposer/res/values-nl/strings.xml
index ebb00c4..2125f5c 100644
--- a/java/com/android/dialer/callcomposer/res/values-nl/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-nl/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Toestaan"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Verleen toegang tot Camera om een foto te maken"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Verleen toegang tot Media om een afbeelding te delen"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Een foto nemen"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Een foto kiezen"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Een bericht verzenden"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-no/strings.xml b/java/com/android/dialer/callcomposer/res/values-no/strings.xml
index 693e7fd..d66a165 100644
--- a/java/com/android/dialer/callcomposer/res/values-no/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-no/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Tillat"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Gi tilgang til kameraet for å ta bilder"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Gi Media tilgang for å dele bilder"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Ta et bilde"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Velg et bilde"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Send en melding"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-pa/strings.xml b/java/com/android/dialer/callcomposer/res/values-pa/strings.xml
index bf6be36..8241984 100644
--- a/java/com/android/dialer/callcomposer/res/values-pa/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-pa/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"ਇਜਾਜ਼ਤ ਦਿਓ"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ਫ਼ੋਟੋ ਖਿੱਚਣ ਲਈ, ਕੈਮਰੇ ਤੱਕ ਪਹੁੰਚ ਦਿਓ"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"ਚਿੱਤਰ ਸਾਂਝਾ ਕਰਨ ਲਈ, ਮੀਡੀਆ ਤੱਕ ਪਹੁੰਚ ਦਿਓ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ਇੱਕ ਤਸਵੀਰ ਖਿੱਚੋ"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ਇੱਕ ਫ਼ੋਟੋ ਚੁਣੋ"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ਇੱਕ ਸੁਨੇਹਾ ਭੇਜੋ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-pl/strings.xml b/java/com/android/dialer/callcomposer/res/values-pl/strings.xml
index ba74628..473007d 100644
--- a/java/com/android/dialer/callcomposer/res/values-pl/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-pl/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Zezwól"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Aby zrobić zdjęcie, zezwól na dostęp do aparatu"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Aby udostępnić zdjęcie, zezwól na dostęp do multimediów"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Zrób zdjęcie"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Wybierz zdjęcie"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Wyślij wiadomość"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-pt-rBR/strings.xml b/java/com/android/dialer/callcomposer/res/values-pt-rBR/strings.xml
index 9feee7d..7996e06 100644
--- a/java/com/android/dialer/callcomposer/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-pt-rBR/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para tirar uma foto, permita o acesso à câmera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para compartilhar uma imagem, permita o acesso à mídia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tirar uma foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Escolher uma foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Enviar uma mensagem"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-pt-rPT/strings.xml b/java/com/android/dialer/callcomposer/res/values-pt-rPT/strings.xml
index 8b12d65..e071969 100644
--- a/java/com/android/dialer/callcomposer/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-pt-rPT/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para tirar uma foto, conceda acesso à Câmara"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para partilhar uma imagem, conceda acesso a Multimédia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tirar uma foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Selecionar foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Enviar uma mensagem"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-pt/strings.xml b/java/com/android/dialer/callcomposer/res/values-pt/strings.xml
index 9feee7d..7996e06 100644
--- a/java/com/android/dialer/callcomposer/res/values-pt/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-pt/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Permitir"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Para tirar uma foto, permita o acesso à câmera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Para compartilhar uma imagem, permita o acesso à mídia"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Tirar uma foto"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Escolher uma foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Enviar uma mensagem"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ro/strings.xml b/java/com/android/dialer/callcomposer/res/values-ro/strings.xml
index 744ef80..48f6ec0 100644
--- a/java/com/android/dialer/callcomposer/res/values-ro/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ro/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Permiteți"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Pentru a fotografia, permiteți accesul la Camera foto"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Pentru a trimite o imagine, permiteți accesul la Conținutul media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Fotografiați"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Alegeți o fotografie"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Trimiteți un mesaj"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ru/strings.xml b/java/com/android/dialer/callcomposer/res/values-ru/strings.xml
index 1abbc49..f991b09 100644
--- a/java/com/android/dialer/callcomposer/res/values-ru/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ru/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Разрешить"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Чтобы сделать снимок, предоставьте доступ к камере"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Чтобы поделиться изображением, предоставьте доступ к мультимедиа"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Сделать фото"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Выбрать фото"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Отправить сообщение"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-si/strings.xml b/java/com/android/dialer/callcomposer/res/values-si/strings.xml
index 48a4474..ac27473 100644
--- a/java/com/android/dialer/callcomposer/res/values-si/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-si/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"ඉඩ දෙන්න"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ඡායාරූපයක් ගැනීමට, කැමරාවට ප්‍රවේශය දෙන්න"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"රූපයක් බෙදා ගැනීමට, මාධ්‍යයට ප්‍රවේශය දෙන්න"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"පින්තුරයක් ගැනීම"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ඡායාරූපයක් තේරීම"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"පණිවිඩයක් යැවීම"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sk/strings.xml b/java/com/android/dialer/callcomposer/res/values-sk/strings.xml
index 2fb13c1..6945d76 100644
--- a/java/com/android/dialer/callcomposer/res/values-sk/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sk/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Povoliť"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Ak chcete fotiť, povoľte prístup k fotoaparátu"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Ak chcete zdieľať obrázok, povoľte prístup k médiám"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Odfotiť"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Vybrať fotku"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Odoslať správu"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sl/strings.xml b/java/com/android/dialer/callcomposer/res/values-sl/strings.xml
index 34126ab..2384edd 100644
--- a/java/com/android/dialer/callcomposer/res/values-sl/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sl/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Dovoli"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Če želite posneti fotografijo, omogočite dostop do fotoaparata"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Če želite deliti sliko z drugimi, omogočite dostop do predstavnosti"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Posnemi fotografijo"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Izberi fotografijo"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Pošlji sporočilo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sq/strings.xml b/java/com/android/dialer/callcomposer/res/values-sq/strings.xml
index 35dd197..924383e 100644
--- a/java/com/android/dialer/callcomposer/res/values-sq/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sq/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Lejo"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Për të shkrepur një fotografi, jep qasjen te Kamera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Për të ndarë një imazh, jep qasjen te Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Bëj një fotografi"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Zgjidh një fotografi"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Dërgo një mesazh"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sr/strings.xml b/java/com/android/dialer/callcomposer/res/values-sr/strings.xml
index 4fa34ed..c4c337f 100644
--- a/java/com/android/dialer/callcomposer/res/values-sr/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sr/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Дозволи"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Одобрите приступ Камери да бисте снимили слику"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Одобрите приступ Медијима да бисте делили слику"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Сликајте"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Изаберите слику"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Пошаљите поруку"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sv/strings.xml b/java/com/android/dialer/callcomposer/res/values-sv/strings.xml
index de33531..e19a5b5 100644
--- a/java/com/android/dialer/callcomposer/res/values-sv/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sv/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Tillåt"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Bevilja åtkomst till Kamera om du vill ta ett foto"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Bevilja åtkomst till Media om du vill dela en bild"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Ta en bild"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Välj ett foto"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Skicka ett meddelande"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-sw/strings.xml b/java/com/android/dialer/callcomposer/res/values-sw/strings.xml
index e99fd06..280c488 100644
--- a/java/com/android/dialer/callcomposer/res/values-sw/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-sw/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Ruhusu"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Ruhusu programu ifikie Kamera ili uweze kupiga picha"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Ruhusu programu ifikie Midia ili uweze kushiriki picha"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Piga picha"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Chagua picha"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Tuma ujumbe"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ta/strings.xml b/java/com/android/dialer/callcomposer/res/values-ta/strings.xml
index 4078148..df2a412 100644
--- a/java/com/android/dialer/callcomposer/res/values-ta/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ta/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"அனுமதி"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"படமெடுக்க, கேமராவிற்கு அணுகல் வழங்கவும்"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"படத்தைப் பகிர, மீடியாவிற்கு அணுகல் வழங்கவும்"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"படமெடுக்கவும்"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"புகைப்படத்தைத் தேர்வு செய்யும்"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"செய்தியை அனுப்பும்"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-te/strings.xml b/java/com/android/dialer/callcomposer/res/values-te/strings.xml
index 101429c..9b8834d 100644
--- a/java/com/android/dialer/callcomposer/res/values-te/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-te/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"అనుమతించు"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"ఫోటోను తీయడానికి, కెమెరాకు ప్రాప్యతను అందించండి"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"చిత్రాన్ని భాగస్వామ్యం చేయడానికి, మీడియాకు ప్రాప్యతను అందించండి"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"చిత్రాన్ని తీస్తుంది"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ఫోటోను ఎంచుకోండి"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"సందేశాన్ని పంపుతుంది"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-th/strings.xml b/java/com/android/dialer/callcomposer/res/values-th/strings.xml
index a004d33..d643d53 100644
--- a/java/com/android/dialer/callcomposer/res/values-th/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-th/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"อนุญาต"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"หากต้องการถ่ายภาพ โปรดให้สิทธิ์การเข้าถึงกล้อง"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"หากต้องการแชร์รูปภาพ โปรดให้สิทธิ์การเข้าถึงสื่อ"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"ถ่ายภาพ"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"เลือกรูปภาพ"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"ส่งข้อความ"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-tl/strings.xml b/java/com/android/dialer/callcomposer/res/values-tl/strings.xml
index e902a2f..e325ef5 100644
--- a/java/com/android/dialer/callcomposer/res/values-tl/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-tl/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Payagan"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Upang kumuha ng larawan, magbigay ng access sa Camera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Upang magbahagi ng imahe, magbigay ng access sa Media"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Kumuha ng larawan"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Pumili ng larawan"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Magpadala ng mensahe"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-tr/strings.xml b/java/com/android/dialer/callcomposer/res/values-tr/strings.xml
index 0dfe8b2..66557fd 100644
--- a/java/com/android/dialer/callcomposer/res/values-tr/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-tr/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"İzin ver"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Fotoğraf çekmek için Kamera\'ya erişim izni verin"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Resim paylaşmak için Medya\'ya erişim izni verin"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Resim çeker"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Fotoğraf seçilmesini sağlar"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Mesaj gönderir"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-uk/strings.xml b/java/com/android/dialer/callcomposer/res/values-uk/strings.xml
index 20898c3..45f5de5 100644
--- a/java/com/android/dialer/callcomposer/res/values-uk/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-uk/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Дозволити"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Щоб сфотографувати, надайте доступ до камери"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Щоб поділитися зображенням, надайте доступ до медіа-вмісту"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Зробити знімок"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Вибрати фотографію"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Надіслати повідомлення"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-ur/strings.xml b/java/com/android/dialer/callcomposer/res/values-ur/strings.xml
index 92a2f8c..ff96b0a 100644
--- a/java/com/android/dialer/callcomposer/res/values-ur/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-ur/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"اجازت دیں"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"تصویر لینے کیلئے کیمرا کو رسائی دیں"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"تصویر کا اشتراک کرنے کیلئے میڈیا تک رسائی دیں"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"تصویر لیں"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"ایک تصویر چنیں"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"پیغام بھیجیں"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-uz/strings.xml b/java/com/android/dialer/callcomposer/res/values-uz/strings.xml
index 8450162..28e2378 100644
--- a/java/com/android/dialer/callcomposer/res/values-uz/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-uz/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Ruxsat berish"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Suratga olish uchun kameraga kirshga ruxsat bering"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Rasmni baham ko‘rish uchun media fayllarga kirishga ruxsat bering"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Rasmga olish"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Rasm tanlash"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Xabar yuborish"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-vi/strings.xml b/java/com/android/dialer/callcomposer/res/values-vi/strings.xml
index 2d060bd..b4a4b9e 100644
--- a/java/com/android/dialer/callcomposer/res/values-vi/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-vi/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Cho phép"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Để chụp ảnh, hãy cấp quyền truy cập vào Máy ảnh"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Để chia sẻ ảnh, hãy cấp quyền truy cập vào Phương tiện"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Chụp ảnh"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Chọn ảnh"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Gửi tin nhắn"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-zh-rCN/strings.xml b/java/com/android/dialer/callcomposer/res/values-zh-rCN/strings.xml
index a6c2f90..6e2324d 100644
--- a/java/com/android/dialer/callcomposer/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-zh-rCN/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"允许"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"要拍摄照片，请授予相机使用权限"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"要分享图片，请授予媒体访问权限"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"拍照"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"选择一张照片"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"发送信息"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-zh-rHK/strings.xml b/java/com/android/dialer/callcomposer/res/values-zh-rHK/strings.xml
index 8f66f4f..a05100e 100644
--- a/java/com/android/dialer/callcomposer/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-zh-rHK/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"允許"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"如要拍照，請授予「相機」存取權"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"如要分享圖片，請授予「媒體」存取權"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"拍照"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"選擇相片"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"傳送訊息"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-zh-rTW/strings.xml b/java/com/android/dialer/callcomposer/res/values-zh-rTW/strings.xml
index a3af5af..206a02b 100644
--- a/java/com/android/dialer/callcomposer/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-zh-rTW/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"允許"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"如要拍照，請授予相機存取權"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"如要分享圖片，請授予媒體存取權"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"拍攝相片"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"選擇相片"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"傳送訊息"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values-zu/strings.xml b/java/com/android/dialer/callcomposer/res/values-zu/strings.xml
index 2cce688..61cfac0 100644
--- a/java/com/android/dialer/callcomposer/res/values-zu/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values-zu/strings.xml
@@ -30,4 +30,7 @@
     <string name="allow" msgid="8637148297403066623">"Vumela"</string>
     <string name="camera_permission_text" msgid="7863231776480341614">"Ukuze uthathe isithombe, nika ukufinyelela kukhamera"</string>
     <string name="gallery_permission_text" msgid="4102566850658919346">"Ukuze wabelane ngesithombe, nika ukufinyelela kumidiya"</string>
+    <string name="description_call_composer_camera" msgid="388088245837924914">"Thatha isithombe"</string>
+    <string name="description_call_composer_photo" msgid="6449208314952246454">"Khetha isithombe"</string>
+    <string name="description_call_composer_message" msgid="9132362446000908550">"Thumela umlayezo"</string>
 </resources>
diff --git a/java/com/android/dialer/callcomposer/res/values/strings.xml b/java/com/android/dialer/callcomposer/res/values/strings.xml
index cc7762b..0faf469 100644
--- a/java/com/android/dialer/callcomposer/res/values/strings.xml
+++ b/java/com/android/dialer/callcomposer/res/values/strings.xml
@@ -41,4 +41,10 @@
   <string name="camera_permission_text">To take a photo, give access to Camera</string>
   <!-- Text presented to the user explaining that we need device storage permission to view photos -->
   <string name="gallery_permission_text">To share an image, give access to Media</string>
+  <!-- Content description of button to show ui for taking a photo -->
+  <string name="description_call_composer_camera">Take a picture</string>
+  <!-- Content description of button to show ui for selecting a photo from the user's gallery -->
+  <string name="description_call_composer_photo">Choose a photo</string>
+  <!-- Content description of button to show ui for sending a message -->
+  <string name="description_call_composer_message">Send a message</string>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/callcomposer/res/values/styles.xml b/java/com/android/dialer/callcomposer/res/values/styles.xml
index 29ac4dd..16e7fb6 100644
--- a/java/com/android/dialer/callcomposer/res/values/styles.xml
+++ b/java/com/android/dialer/callcomposer/res/values/styles.xml
@@ -15,7 +15,7 @@
   ~ limitations under the License
   -->
 <resources>
-  <style name="Theme.AppCompat.CallComposer" parent="Theme.AppCompat.NoActionBar">
+  <style name="Theme.AppCompat.CallComposer" parent="DialerThemeBase.NoActionBar">
     <item name="android:colorPrimaryDark">@color/dialer_theme_color_dark</item>
     <item name="android:windowBackground">@android:color/transparent</item>
     <item name="android:colorBackgroundCacheHint">@null</item>
diff --git a/java/com/android/dialer/calldetails/AndroidManifest.xml b/java/com/android/dialer/calldetails/AndroidManifest.xml
index adaac40..fd887c4 100644
--- a/java/com/android/dialer/calldetails/AndroidManifest.xml
+++ b/java/com/android/dialer/calldetails/AndroidManifest.xml
@@ -16,11 +16,11 @@
 <manifest
   xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.android.dialer.calldetails">
-  <application>
+  <application android:theme="@style/Theme.AppCompat">
     <activity
       android:label="@string/call_details"
       android:name="com.android.dialer.calldetails.CallDetailsActivity"
-      android:theme="@style/Theme.AppCompat.Light.NoActionBar">
+      android:theme="@style/DialerThemeBase.NoActionBar">
       <intent-filter>
         <action android:name="android.intent.action.VIEW"/>
         <category android:name="android.intent.category.DEFAULT"/>
diff --git a/java/com/android/dialer/calldetails/CallDetailsActivity.java b/java/com/android/dialer/calldetails/CallDetailsActivity.java
index 7eab951..70cb61a 100644
--- a/java/com/android/dialer/calldetails/CallDetailsActivity.java
+++ b/java/com/android/dialer/calldetails/CallDetailsActivity.java
@@ -29,32 +29,41 @@
 import android.support.v7.widget.Toolbar;
 import android.support.v7.widget.Toolbar.OnMenuItemClickListener;
 import android.view.MenuItem;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.calldetails.CallDetailsEntries.CallDetailsEntry;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.concurrent.AsyncTaskExecutors;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
+import com.android.dialer.postcall.PostCall;
 import com.android.dialer.protos.ProtoParsers;
 import java.util.List;
 
 /** Displays the details of a specific call log entry. */
-public class CallDetailsActivity extends AppCompatActivity implements OnMenuItemClickListener {
+public class CallDetailsActivity extends AppCompatActivity
+    implements OnMenuItemClickListener, CallDetailsFooterViewHolder.ReportCallIdListener {
 
   private static final String EXTRA_CALL_DETAILS_ENTRIES = "call_details_entries";
   private static final String EXTRA_CONTACT = "contact";
+  private static final String EXTRA_CAN_REPORT_CALLER_ID = "can_report_caller_id";
   private static final String TASK_DELETE = "task_delete";
 
   private List<CallDetailsEntry> entries;
 
   public static Intent newInstance(
-      Context context, @NonNull CallDetailsEntries details, @NonNull CallComposerContact contact) {
+      Context context,
+      @NonNull CallDetailsEntries details,
+      @NonNull DialerContact contact,
+      boolean canReportCallerId) {
     Assert.isNotNull(details);
     Assert.isNotNull(contact);
 
     Intent intent = new Intent(context, CallDetailsActivity.class);
     ProtoParsers.put(intent, EXTRA_CONTACT, contact);
     ProtoParsers.put(intent, EXTRA_CALL_DETAILS_ENTRIES, details);
+    intent.putExtra(EXTRA_CAN_REPORT_CALLER_ID, canReportCallerId);
     return intent;
   }
 
@@ -62,30 +71,50 @@
   protected void onCreate(Bundle savedInstanceState) {
     super.onCreate(savedInstanceState);
     setContentView(R.layout.call_details_activity);
-    Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);
+    Toolbar toolbar = findViewById(R.id.toolbar);
     toolbar.inflateMenu(R.menu.call_details_menu);
     toolbar.setOnMenuItemClickListener(this);
     toolbar.setTitle(R.string.call_details);
+    toolbar.setNavigationOnClickListener(
+        v -> {
+          PerformanceReport.recordClick(UiAction.Type.CLOSE_CALL_DETAIL_WITH_CANCEL_BUTTON);
+          finish();
+        });
     onHandleIntent(getIntent());
   }
 
   @Override
+  protected void onResume() {
+    super.onResume();
+
+    // Some calls may not be recorded (eg. from quick contact),
+    // so we should restart recording after these calls. (Recorded call is stopped)
+    PostCall.restartPerformanceRecordingIfARecentCallExist(this);
+    if (!PerformanceReport.isRecording()) {
+      PerformanceReport.startRecording();
+    }
+
+    PostCall.promptUserForMessageIfNecessary(this, findViewById(R.id.recycler_view));
+  }
+
+  @Override
   protected void onNewIntent(Intent intent) {
     super.onNewIntent(intent);
     onHandleIntent(intent);
   }
 
   private void onHandleIntent(Intent intent) {
-    CallComposerContact contact =
-        ProtoParsers.getTrusted(intent, EXTRA_CONTACT, CallComposerContact.getDefaultInstance());
+    DialerContact contact =
+        ProtoParsers.getTrusted(intent, EXTRA_CONTACT, DialerContact.getDefaultInstance());
     entries =
         ProtoParsers.getTrusted(
                 intent, EXTRA_CALL_DETAILS_ENTRIES, CallDetailsEntries.getDefaultInstance())
             .getEntriesList();
 
-    RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recycler_view);
+    RecyclerView recyclerView = findViewById(R.id.recycler_view);
     recyclerView.setLayoutManager(new LinearLayoutManager(this));
-    recyclerView.setAdapter(new CallDetailsAdapter(this, contact, entries));
+    recyclerView.setAdapter(new CallDetailsAdapter(this, contact, entries, this));
+    PerformanceReport.logOnScrollStateChange(recyclerView);
   }
 
   @Override
@@ -99,6 +128,22 @@
     return false;
   }
 
+  @Override
+  public void onBackPressed() {
+    PerformanceReport.recordClick(UiAction.Type.PRESS_ANDROID_BACK_BUTTON);
+    super.onBackPressed();
+  }
+
+  @Override
+  public void reportCallId(String number) {
+    ReportDialogFragment.newInstance(number).show(getFragmentManager(), null);
+  }
+
+  @Override
+  public boolean canReportCallerId(String number) {
+    return getIntent().getExtras().getBoolean(EXTRA_CAN_REPORT_CALLER_ID, false);
+  }
+
   /** Delete specified calls from the call log. */
   private class DeleteCallsTask extends AsyncTask<Void, Void, Void> {
 
diff --git a/java/com/android/dialer/calldetails/CallDetailsAdapter.java b/java/com/android/dialer/calldetails/CallDetailsAdapter.java
index 7250779..48e9b69 100644
--- a/java/com/android/dialer/calldetails/CallDetailsAdapter.java
+++ b/java/com/android/dialer/calldetails/CallDetailsAdapter.java
@@ -22,29 +22,32 @@
 import android.support.v7.widget.RecyclerView.ViewHolder;
 import android.view.LayoutInflater;
 import android.view.ViewGroup;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.calldetails.CallDetailsEntries.CallDetailsEntry;
 import com.android.dialer.calllogutils.CallTypeHelper;
 import com.android.dialer.common.Assert;
+import com.android.dialer.dialercontact.DialerContact;
 import java.util.List;
 
 /** Adapter for RecyclerView in {@link CallDetailsActivity}. */
-public class CallDetailsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
+final class CallDetailsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
 
   private static final int HEADER_VIEW_TYPE = 1;
   private static final int CALL_ENTRY_VIEW_TYPE = 2;
   private static final int FOOTER_VIEW_TYPE = 3;
 
-  private final CallComposerContact contact;
+  private final DialerContact contact;
   private final List<CallDetailsEntry> callDetailsEntries;
+  private final CallDetailsFooterViewHolder.ReportCallIdListener listener;
   private final CallTypeHelper callTypeHelper;
 
-  public CallDetailsAdapter(
+  CallDetailsAdapter(
       Context context,
-      @NonNull CallComposerContact contact,
-      @NonNull List<CallDetailsEntry> callDetailsEntries) {
+      @NonNull DialerContact contact,
+      @NonNull List<CallDetailsEntry> callDetailsEntries,
+      CallDetailsFooterViewHolder.ReportCallIdListener listener) {
     this.contact = Assert.isNotNull(contact);
     this.callDetailsEntries = callDetailsEntries;
+    this.listener = listener;
     callTypeHelper = new CallTypeHelper(context.getResources());
   }
 
@@ -60,10 +63,10 @@
             inflater.inflate(R.layout.call_details_entry, parent, false));
       case FOOTER_VIEW_TYPE:
         return new CallDetailsFooterViewHolder(
-            inflater.inflate(R.layout.call_details_footer, parent, false));
+            inflater.inflate(R.layout.call_details_footer, parent, false), listener);
       default:
-        Assert.fail("No ViewHolder available for viewType: " + viewType);
-        return null;
+        throw Assert.createIllegalStateFailException(
+            "No ViewHolder available for viewType: " + viewType);
     }
   }
 
diff --git a/java/com/android/dialer/calldetails/CallDetailsFooterViewHolder.java b/java/com/android/dialer/calldetails/CallDetailsFooterViewHolder.java
index 3f89436..9d3f4bc 100644
--- a/java/com/android/dialer/calldetails/CallDetailsFooterViewHolder.java
+++ b/java/com/android/dialer/calldetails/CallDetailsFooterViewHolder.java
@@ -26,33 +26,41 @@
 import com.android.dialer.common.Assert;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.logging.UiAction;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.util.CallUtil;
 import com.android.dialer.util.DialerUtils;
 
 /** ViewHolder container for {@link CallDetailsActivity} footer. */
-public class CallDetailsFooterViewHolder extends RecyclerView.ViewHolder
-    implements OnClickListener {
+final class CallDetailsFooterViewHolder extends RecyclerView.ViewHolder implements OnClickListener {
 
+  private final ReportCallIdListener listener;
   private final View container;
   private final View copy;
   private final View edit;
+  private final View reportCallerId;
 
   private String number;
 
-  public CallDetailsFooterViewHolder(View view) {
+  CallDetailsFooterViewHolder(View view, ReportCallIdListener listener) {
     super(view);
+    this.listener = listener;
     container = view.findViewById(R.id.footer_container);
     copy = view.findViewById(R.id.call_detail_action_copy);
     edit = view.findViewById(R.id.call_detail_action_edit_before_call);
+    reportCallerId = view.findViewById(R.id.call_detail_action_report_caller_id);
 
     copy.setOnClickListener(this);
     edit.setOnClickListener(this);
+    reportCallerId.setOnClickListener(this);
   }
 
   public void setPhoneNumber(String number) {
     this.number = number;
     if (TextUtils.isEmpty(number)) {
       container.setVisibility(View.GONE);
+    } else if (listener.canReportCallerId(number)) {
+      reportCallerId.setVisibility(View.VISIBLE);
     }
   }
 
@@ -60,14 +68,32 @@
   public void onClick(View view) {
     Context context = view.getContext();
     if (view == copy) {
+      PerformanceReport.recordClick(UiAction.Type.COPY_NUMBER_IN_CALL_DETAIL);
+
       Logger.get(context).logImpression(DialerImpression.Type.CALL_DETAILS_COPY_NUMBER);
       ClipboardUtils.copyText(context, null, number, true);
     } else if (view == edit) {
+      PerformanceReport.recordClick(UiAction.Type.EDIT_NUMBER_BEFORE_CALL_IN_CALL_DETAIL);
+      // Dialpad will be filled with this number, but we don't want to record it as user action
+      PerformanceReport.setIgnoreActionOnce(UiAction.Type.TEXT_CHANGE_WITH_INPUT);
+
       Logger.get(context).logImpression(DialerImpression.Type.CALL_DETAILS_EDIT_BEFORE_CALL);
       Intent dialIntent = new Intent(Intent.ACTION_DIAL, CallUtil.getCallUri(number));
       DialerUtils.startActivityWithErrorToast(context, dialIntent);
+    } else if (view == reportCallerId) {
+      listener.reportCallId(number);
     } else {
       Assert.fail("View on click not implemented: " + view);
     }
   }
+
+  /** Listener for reporting caller id */
+  interface ReportCallIdListener {
+
+    /** Tell listener that the user requested to report caller id info as inaccurate. */
+    void reportCallId(String number);
+
+    /** returns true if the number can be reported as inaccurate. */
+    boolean canReportCallerId(String number);
+  }
 }
diff --git a/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java b/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
index 4d9aacf..3df3c3a 100644
--- a/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
+++ b/java/com/android/dialer/calldetails/CallDetailsHeaderViewHolder.java
@@ -25,11 +25,12 @@
 import android.widget.QuickContactBadge;
 import android.widget.TextView;
 import com.android.contacts.common.ContactPhotoManager;
-import com.android.dialer.callcomposer.CallComposerContact;
 import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallIntentBuilder;
 import com.android.dialer.common.Assert;
+import com.android.dialer.dialercontact.DialerContact;
 import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.InteractionEvent;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.util.DialerUtils;
 
@@ -40,23 +41,29 @@
   private final View callBackButton;
   private final TextView nameView;
   private final TextView numberView;
+  private final TextView networkView;
   private final QuickContactBadge contactPhoto;
   private final Context context;
 
-  private CallComposerContact contact;
+  private DialerContact contact;
 
   CallDetailsHeaderViewHolder(View container) {
     super(container);
     context = container.getContext();
     callBackButton = container.findViewById(R.id.call_back_button);
-    nameView = (TextView) container.findViewById(R.id.contact_name);
-    numberView = (TextView) container.findViewById(R.id.phone_number);
-    contactPhoto = (QuickContactBadge) container.findViewById(R.id.quick_contact_photo);
+    nameView = container.findViewById(R.id.contact_name);
+    numberView = container.findViewById(R.id.phone_number);
+    networkView = container.findViewById(R.id.network);
+    contactPhoto = container.findViewById(R.id.quick_contact_photo);
+
     callBackButton.setOnClickListener(this);
+    Logger.get(context)
+        .logQuickContactOnTouch(
+            contactPhoto, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_CALL_DETAILS, true);
   }
 
   /** Populates the contact info fields based on the current contact information. */
-  void updateContactInfo(CallComposerContact contact) {
+  void updateContactInfo(DialerContact contact) {
     this.contact = contact;
     ContactPhotoManager.getInstance(context)
         .loadDialerThumbnailOrPhoto(
@@ -67,8 +74,6 @@
             contact.getNameOrNumber(),
             contact.getContactType());
 
-    contactPhoto.setContentDescription(
-        context.getString(R.string.description_contact_photo_details, contact.getNameOrNumber()));
     nameView.setText(contact.getNameOrNumber());
     if (!TextUtils.isEmpty(contact.getDisplayNumber())) {
       numberView.setVisibility(View.VISIBLE);
@@ -85,6 +90,12 @@
       numberView.setText(null);
     }
 
+    if (!TextUtils.isEmpty(contact.getSimDetails().getNetwork())) {
+      networkView.setVisibility(View.VISIBLE);
+      networkView.setText(contact.getSimDetails().getNetwork());
+      networkView.setTextColor(context.getResources().getColor(contact.getSimDetails().getColor()));
+    }
+
     if (TextUtils.isEmpty(contact.getNumber())) {
       callBackButton.setVisibility(View.GONE);
     }
@@ -98,7 +109,7 @@
           view.getContext(),
           new CallIntentBuilder(contact.getNumber(), CallInitiationType.Type.CALL_DETAILS).build());
     } else {
-      Assert.fail("View OnClickListener not implemented: " + view);
+      throw Assert.createIllegalStateFailException("View OnClickListener not implemented: " + view);
     }
   }
 }
diff --git a/java/com/android/dialer/calldetails/ReportDialogFragment.java b/java/com/android/dialer/calldetails/ReportDialogFragment.java
new file mode 100644
index 0000000..c27bd61
--- /dev/null
+++ b/java/com/android/dialer/calldetails/ReportDialogFragment.java
@@ -0,0 +1,161 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.calldetails;
+
+import android.app.AlertDialog;
+import android.app.Dialog;
+import android.app.DialogFragment;
+import android.content.Context;
+import android.content.DialogInterface;
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v4.util.Pair;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.widget.TextView;
+import android.widget.Toast;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.common.concurrent.DialerExecutor.SuccessListener;
+import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import com.android.dialer.common.concurrent.DialerExecutorComponent;
+import com.android.dialer.phonenumbercache.CachedNumberLookupService;
+import com.android.dialer.phonenumbercache.CachedNumberLookupService.CachedContactInfo;
+import com.android.dialer.phonenumbercache.PhoneNumberCache;
+
+/** Dialog for reporting an inaccurate caller id information in {@link CallDetailsActivity}. */
+public class ReportDialogFragment extends DialogFragment {
+
+  private static final String KEY_NUMBER = "number";
+  private TextView name;
+  private TextView numberView;
+
+  private CachedNumberLookupService cachedNumberLookupService;
+  private CachedNumberLookupService.CachedContactInfo info;
+  private String number;
+
+  public static ReportDialogFragment newInstance(String number) {
+    ReportDialogFragment fragment = new ReportDialogFragment();
+    Bundle bundle = new Bundle();
+    bundle.putString(KEY_NUMBER, number);
+    fragment.setArguments(bundle);
+    return fragment;
+  }
+
+  @Override
+  public void onCreate(@Nullable Bundle bundle) {
+    super.onCreate(bundle);
+    setRetainInstance(true);
+    number = getArguments().getString(KEY_NUMBER);
+    cachedNumberLookupService = PhoneNumberCache.get(getContext()).getCachedNumberLookupService();
+  }
+
+  @Override
+  public Dialog onCreateDialog(Bundle savedInstanceState) {
+    LayoutInflater inflater = getActivity().getLayoutInflater();
+    View view = inflater.inflate(R.layout.caller_id_report_dialog, null, false);
+    name = view.findViewById(R.id.name);
+    numberView = view.findViewById(R.id.number);
+
+    lookupContactInfo(number);
+
+    AlertDialog reportDialog =
+        new AlertDialog.Builder(getActivity())
+            .setTitle(R.string.report_caller_id_dialog_title)
+            .setPositiveButton(android.R.string.ok, (dialog, which) -> positiveClick(dialog))
+            .setNegativeButton(android.R.string.cancel, (dialog, which) -> dialog.dismiss())
+            .setView(view)
+            .create();
+
+    reportDialog.setOnShowListener(dialog -> onShow(getContext(), reportDialog));
+    return reportDialog;
+  }
+
+  private void positiveClick(DialogInterface dialog) {
+    startReportCallerIdWorker();
+    dialog.dismiss();
+  }
+
+  private static void onShow(Context context, AlertDialog dialog) {
+    int buttonTextColor = context.getColor(R.color.dialer_theme_color);
+    dialog.getButton(AlertDialog.BUTTON_POSITIVE).setTextColor(buttonTextColor);
+    dialog.getButton(AlertDialog.BUTTON_NEGATIVE).setTextColor(buttonTextColor);
+  }
+
+  private void lookupContactInfo(String number) {
+    Worker<String, CachedContactInfo> worker =
+        number1 -> cachedNumberLookupService.lookupCachedContactFromNumber(getContext(), number1);
+    SuccessListener<CachedContactInfo> successListener = this::setCachedContactInfo;
+    DialerExecutorComponent.get(getContext())
+        .dialerExecutorFactory()
+        .createUiTaskBuilder(getFragmentManager(), "lookup_contact_info", worker)
+        .onSuccess(successListener)
+        .build()
+        .executeParallel(number);
+  }
+
+  private void setCachedContactInfo(CachedContactInfo info) {
+    this.info = info;
+    if (info != null) {
+      name.setText(info.getContactInfo().name);
+      numberView.setText(info.getContactInfo().number);
+    } else {
+      numberView.setText(number);
+      name.setVisibility(View.GONE);
+    }
+  }
+
+  private void startReportCallerIdWorker() {
+    Worker<Context, Pair<Context, Boolean>> worker = this::reportCallerId;
+    SuccessListener<Pair<Context, Boolean>> successListener = this::onReportCallerId;
+    DialerExecutorComponent.get(getContext())
+        .dialerExecutorFactory()
+        .createUiTaskBuilder(getFragmentManager(), "report_caller_id", worker)
+        .onSuccess(successListener)
+        .build()
+        .executeParallel(getActivity());
+  }
+
+  private Pair<Context, Boolean> reportCallerId(Context context) {
+    if (cachedNumberLookupService.reportAsInvalid(context, info)) {
+      info.getContactInfo().isBadData = true;
+      cachedNumberLookupService.addContact(context, info);
+      LogUtil.d("ReportUploadTask.doInBackground", "Contact reported.");
+      return new Pair<>(context, true);
+    } else {
+      return new Pair<>(context, false);
+    }
+  }
+
+  private void onReportCallerId(Pair<Context, Boolean> output) {
+    Context context = output.first;
+    boolean wasReport = output.second;
+    if (wasReport) {
+      Toast.makeText(context, R.string.report_caller_id_toast, Toast.LENGTH_SHORT).show();
+    } else {
+      Toast.makeText(context, R.string.report_caller_id_failed, Toast.LENGTH_SHORT).show();
+    }
+  }
+
+  @Override
+  public void onDestroyView() {
+    if (getDialog() != null && getRetainInstance()) {
+      // Prevent dialog from dismissing on rotate.
+      getDialog().setDismissMessage(null);
+    }
+    super.onDestroyView();
+  }
+}
diff --git a/java/com/android/dialer/calldetails/res/layout/call_details_footer.xml b/java/com/android/dialer/calldetails/res/layout/call_details_footer.xml
index ccfa4e7..fbca3f8 100644
--- a/java/com/android/dialer/calldetails/res/layout/call_details_footer.xml
+++ b/java/com/android/dialer/calldetails/res/layout/call_details_footer.xml
@@ -41,4 +41,13 @@
       android:layout_height="wrap_content"
       android:drawableStart="@drawable/quantum_ic_edit_grey600_24"
       android:text="@string/call_details_edit_number"/>
+
+  <TextView
+      android:id="@+id/call_detail_action_report_caller_id"
+      style="@style/CallDetailsActionItemStyle"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:drawableStart="@drawable/quantum_ic_report_grey600_24"
+      android:text="@string/call_details_report_call_id"
+      android:visibility="gone"/>
 </LinearLayout>
diff --git a/java/com/android/dialer/calldetails/res/layout/caller_id_report_dialog.xml b/java/com/android/dialer/calldetails/res/layout/caller_id_report_dialog.xml
new file mode 100644
index 0000000..09d3c2b
--- /dev/null
+++ b/java/com/android/dialer/calldetails/res/layout/caller_id_report_dialog.xml
@@ -0,0 +1,35 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="vertical"
+    android:layout_width="wrap_content"
+    android:layout_height="match_parent">
+
+  <TextView
+      android:id="@+id/name"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_marginStart="24dp"
+      android:textAppearance="?android:attr/textAppearanceMedium"/>
+
+  <TextView
+      android:id="@+id/number"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_marginStart="24dp"
+      android:textAppearance="?android:attr/textAppearanceMedium"/>
+</LinearLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/calldetails/res/layout/contact_container.xml b/java/com/android/dialer/calldetails/res/layout/contact_container.xml
index bb89b36..0911291 100644
--- a/java/com/android/dialer/calldetails/res/layout/contact_container.xml
+++ b/java/com/android/dialer/calldetails/res/layout/contact_container.xml
@@ -29,7 +29,7 @@
       android:id="@+id/quick_contact_photo"
       android:layout_width="@dimen/call_details_contact_photo_size"
       android:layout_height="@dimen/call_details_contact_photo_size"
-      android:layout_marginTop="2dp"
+      android:layout_centerVertical="true"
       android:padding="@dimen/call_details_contact_photo_padding"
       android:focusable="true"
       android:contentDescription="@string/description_quick_contact_for"/>
@@ -47,8 +47,6 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:layout_marginStart="@dimen/photo_text_margin"
-        android:ellipsize="end"
-        android:maxLines="1"
         style="@style/PrimaryText"/>
 
     <TextView
@@ -57,6 +55,14 @@
         android:layout_height="wrap_content"
         android:layout_marginStart="@dimen/photo_text_margin"
         style="@style/SecondaryText"/>
+
+    <TextView
+        android:id="@+id/network"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginStart="@dimen/photo_text_margin"
+        android:visibility="gone"
+        style="@style/SecondaryText"/>
   </LinearLayout>
 
   <ImageView
@@ -66,8 +72,8 @@
       android:layout_alignParentEnd="true"
       android:layout_centerVertical="true"
       android:background="?android:attr/selectableItemBackgroundBorderless"
-      android:contentDescription="@string/description_call_log_call_action"
+      android:contentDescription="@string/call"
       android:scaleType="center"
       android:src="@drawable/quantum_ic_call_white_24"
       android:tint="@color/secondary_text_color"/>
-</RelativeLayout>
+</RelativeLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/calldetails/res/values-af/strings.xml b/java/com/android/dialer/calldetails/res/values-af/strings.xml
index 86bef4b..3d15e5b 100644
--- a/java/com/android/dialer/calldetails/res/values-af/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-af/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Vee uit"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopieer nommer"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Wysig nommer voordat jy bel"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Bel"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Gee foutiewe nommer aan"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Het \'n foto gestuur"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Het \'n foto ontvang"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontakbesonderhede vir <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Gee verkeerde nommer aan"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Kon nie nommer aangee nie"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nommer is aangegee"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-am/strings.xml b/java/com/android/dialer/calldetails/res/values-am/strings.xml
index 2a23945..2103353 100644
--- a/java/com/android/dialer/calldetails/res/values-am/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-am/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ሰርዝ"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ቁጥር ቅዳ"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ከመደወል በፊት ቁጥር አርትዕ ያድርጉ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ጥሪ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"ትክክለኛ ያልሆነ ቁጥርን ሪፓርት አድርግ"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"አንድ ፎቶ ተልኳል"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"አንድ ፎቶ ደርሷል"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"«<xliff:g id="MESSAGE">%1$s</xliff:g>»"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"የ<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> የእውቂያ ዝርዝሮች"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"የተሳሳተ ቁጥርን ሪፖርት ያድርጉ"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ቁጥሩን ሪፖርት ማድረግ አልተቻለም"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"ቁጥሩ ሪፖርት ተደርጓል"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ar/strings.xml b/java/com/android/dialer/calldetails/res/values-ar/strings.xml
index 6b0d8a7..066b89c 100644
--- a/java/com/android/dialer/calldetails/res/values-ar/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ar/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"حذف"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"نسخ الرقم"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"تعديل الرقم قبل الاتصال"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"الاتصال"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"الإبلاغ عن رقم غير دقيق"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"تم إرسال صورة"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"تم تلقي صورة"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"تفاصيل الاتصال بالمستخدم <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"الإبلاغ عن رقم غير صحيح"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"تعذر الإبلاغ عن الرقم"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"تم الإبلاغ عن الرقم"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-az/strings.xml b/java/com/android/dialer/calldetails/res/values-az/strings.xml
index 479837c..e9aaf14 100644
--- a/java/com/android/dialer/calldetails/res/values-az/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-az/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Silin"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Nömrəni kopyalayın"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Zəng etmədən öncə nömrəyə düzəliş edin"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Zəng edin"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Qeyri-dəqiq nömrəni bildirin"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Foto göndərildi"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Foto alındı"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> üçün kontakt detalları"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Yanlış nömrəni bildirin"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nömrəni bildirmək mümkün olmadı"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nömrə bildirildi"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/calldetails/res/values-b+sr+Latn/strings.xml
index 01141ff..780e674 100644
--- a/java/com/android/dialer/calldetails/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-b+sr+Latn/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Izbriši"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiraj broj"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Izmenite broj pre poziva"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Pozovi"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Prijavi netačan broj"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Slika je poslata"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Slika je primljena"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontakt informacije za <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Prijavite netačan broj"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Prijavljivanje broja nije uspelo"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Broj je prijavljen"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-be/strings.xml b/java/com/android/dialer/calldetails/res/values-be/strings.xml
index 683f29b..6c6724c 100644
--- a/java/com/android/dialer/calldetails/res/values-be/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-be/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Выдаліць"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Скапіраваць нумар"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Рэдагаваць нумар перад выклікам"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Выклік"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Падаць заяву аб недакладным нумары"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Адпраўлена фота"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Атрымана фота"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Кантактныя даныя абанента <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Падаць заяву аб няправільным нумары"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Не ўдалося падаць заяву аб нумары"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Аб нумары пададзена заява"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-bg/strings.xml b/java/com/android/dialer/calldetails/res/values-bg/strings.xml
index 9cd70e2..547fdbb 100644
--- a/java/com/android/dialer/calldetails/res/values-bg/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-bg/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Изтриване"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Копиране на номера"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Редактиране на номера преди обаждане"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Обаждане"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Подаване на сигнал за неточен номер"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Изпратена бе снимка"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Получена бе снимка"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Подробности за контакта за <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Подаване на сигнал за неправилен номер"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Сигналът за номера не можа да бъде подаден"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"За номера бе подаден сигнал"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-bn/strings.xml b/java/com/android/dialer/calldetails/res/values-bn/strings.xml
index 148f61a..65798f5 100644
--- a/java/com/android/dialer/calldetails/res/values-bn/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-bn/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"মুছুন"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"নম্বর কপি করুন"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"কল করার আগে নম্বর সম্পাদন করুন"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"কল করুন"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"ভুল নম্বর প্রতিবেদন করুন"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"একটি ফটো পাঠিয়েছেন"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"একটি ফটো পেয়েছেন"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> পরিচিতির বিশদ বিবরণ"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"ভুল নম্বর প্রতিবেদন করুন"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"নম্বরটির প্রতিবেদন করা যায়নি"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"নম্বরটির প্রতিবেদন করা হয়েছে"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-bs/strings.xml b/java/com/android/dialer/calldetails/res/values-bs/strings.xml
index 6f164b2..10ef7aa 100644
--- a/java/com/android/dialer/calldetails/res/values-bs/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-bs/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Izbriši"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiraj broj"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Uredi broj prije poziva"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Poziv"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Prijavite nevažeći broj"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Fotografija poslana"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Fotografija primljena"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalji o kontaktu <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Prijava pogrešnog broja"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Prijava broja nije moguća"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Broj je prijavljen"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ca/strings.xml b/java/com/android/dialer/calldetails/res/values-ca/strings.xml
index 0e33e60..59bd297 100644
--- a/java/com/android/dialer/calldetails/res/values-ca/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ca/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Suprimeix"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copia el número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edita el número abans de trucar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Truca"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Informa d\'un número incorrecte"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"S\'ha enviat una foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"S\'ha rebut una foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"<xliff:g id="MESSAGE">%1$s</xliff:g>"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Dades de contacte de: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Informa d\'un número incorrecte"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"No s\'ha pogut informar del número"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"S\'ha informat del número"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-cs/strings.xml b/java/com/android/dialer/calldetails/res/values-cs/strings.xml
index 9747ee1..d4748fc 100644
--- a/java/com/android/dialer/calldetails/res/values-cs/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-cs/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Smazat"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopírovat číslo"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Před voláním upravit číslo"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Zavolat"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Nahlásit nesprávné číslo"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Byla poslána fotka"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Byla přijata fotka"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Podrobnosti kontaktu <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Nahlásit nesprávné číslo"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Číslo se nepodařilo nahlásit"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Číslo bylo nahlášeno"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-da/strings.xml b/java/com/android/dialer/calldetails/res/values-da/strings.xml
index 41bc252..5de4486 100644
--- a/java/com/android/dialer/calldetails/res/values-da/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-da/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Slet"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiér nummer"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Rediger nummer før opkald"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ring op"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Rapportér et forkert nummer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Der blev sendt et billede"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Der blev modtaget et billede"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktoplysninger for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Rapportér forkert nummer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Det forkerte nummer kunne ikke rapporteres"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummeret blev rapporteret"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-de/strings.xml b/java/com/android/dialer/calldetails/res/values-de/strings.xml
index 014666b..3c30d8e 100644
--- a/java/com/android/dialer/calldetails/res/values-de/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-de/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Löschen"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Nummer kopieren"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Nummer vor Anruf bearbeiten"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Anrufen"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Falsche Nummer melden"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Hat ein Foto gesendet"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Hat ein Foto empfangen"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktdetails für <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Falsche Nummer melden"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nummer konnte nicht gemeldet werden"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummer gemeldet"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-el/strings.xml b/java/com/android/dialer/calldetails/res/values-el/strings.xml
index 6b51fc7..e5097d1 100644
--- a/java/com/android/dialer/calldetails/res/values-el/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-el/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Διαγραφή"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Αντιγραφή αριθμού"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Επεξεργασία αριθμού πριν από την κλήση"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Κλήση"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Αναφορά ανακριβούς αριθμού"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Έγινε αποστολή φωτογραφίας"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Έγινε λήψη φωτογραφίας"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Στοιχεία επικοινωνίας επαφής <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Αναφορά λανθασμένου αριθμού"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Δεν ήταν δυνατή η αναφορά του αριθμού"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Υποβλήθηκε αναφορά για τον αριθμό"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-en-rAU/strings.xml b/java/com/android/dialer/calldetails/res/values-en-rAU/strings.xml
index 2d5210e..45deb49 100644
--- a/java/com/android/dialer/calldetails/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-en-rAU/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Delete"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copy number"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edit number before call"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Call"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Report inaccurate number"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Sent a photo"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Received a photo"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Contact details for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Report incorrect number"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Couldn\'t report number"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Number reported"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-en-rGB/strings.xml b/java/com/android/dialer/calldetails/res/values-en-rGB/strings.xml
index 2d5210e..45deb49 100644
--- a/java/com/android/dialer/calldetails/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-en-rGB/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Delete"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copy number"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edit number before call"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Call"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Report inaccurate number"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Sent a photo"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Received a photo"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Contact details for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Report incorrect number"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Couldn\'t report number"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Number reported"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-en-rIN/strings.xml b/java/com/android/dialer/calldetails/res/values-en-rIN/strings.xml
index 2d5210e..45deb49 100644
--- a/java/com/android/dialer/calldetails/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-en-rIN/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Delete"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copy number"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edit number before call"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Call"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Report inaccurate number"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Sent a photo"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Received a photo"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Contact details for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Report incorrect number"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Couldn\'t report number"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Number reported"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-es-rUS/strings.xml b/java/com/android/dialer/calldetails/res/values-es-rUS/strings.xml
index d9db282..778868e 100644
--- a/java/com/android/dialer/calldetails/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-es-rUS/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Borrar"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar número antes de llamar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Llamar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Informar número incorrecto"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Enviaste una foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Recibiste una foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Datos de contacto de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Informar número incorrecto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"No se pudo informar el número."</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Número informado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-es/strings.xml b/java/com/android/dialer/calldetails/res/values-es/strings.xml
index e72e898..5cecffa 100644
--- a/java/com/android/dialer/calldetails/res/values-es/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-es/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Eliminar"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar número antes de llamar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Llamar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Notificar un número incorrecto"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Se ha enviado una foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Se ha recibido una foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Información de contacto de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Notificar un número incorrecto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"No se ha podido notificar el número"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Número notificado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-et/strings.xml b/java/com/android/dialer/calldetails/res/values-et/strings.xml
index 496459d..c8f52ae 100644
--- a/java/com/android/dialer/calldetails/res/values-et/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-et/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Kustuta"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopeeri number"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Muuda numbrit enne helistamist"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Kõne"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Valest numbrist teavitamine"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Saatis foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Sai foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontakti <xliff:g id="NAMEORNUMBER">%1$s</xliff:g> üksikasjad"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Valest numbrist teavitamine"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Numbrist ei õnnestunud teavitada"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numbrist teavitati"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-eu/strings.xml b/java/com/android/dialer/calldetails/res/values-eu/strings.xml
index 913082f..5184e64 100644
--- a/java/com/android/dialer/calldetails/res/values-eu/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-eu/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Ezabatu"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiatu zenbakia"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editatu zenbakia deitu aurretik"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Deia"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Jakinarazi zenbakiaren informazioa okerra dela"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Argazki bat bidali duzu"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Argazki bat jaso duzu"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> kontaktuaren xehetasunak"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Jakinarazi zenbakia okerra dela"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Ezin izan da bidali jakinarazpena"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Bidali da jakinarazpena"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-fa/strings.xml b/java/com/android/dialer/calldetails/res/values-fa/strings.xml
index cad85a2..b37b2b5 100644
--- a/java/com/android/dialer/calldetails/res/values-fa/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-fa/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"حذف"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"کپی کردن شماره"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ویرایش شماره قبل از تماس"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"تماس"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"گزارش شماره نادرست"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"عکسی ارسال کرد"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"عکسی دریافت کرد"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"«<xliff:g id="MESSAGE">%1$s</xliff:g>»"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"جزئیات تماس <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"گزارش شماره نادرست"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"شماره گزارش نشد"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"شماره گزارش شد"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-fi/strings.xml b/java/com/android/dialer/calldetails/res/values-fi/strings.xml
index c16110d..ead2c6a 100644
--- a/java/com/android/dialer/calldetails/res/values-fi/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-fi/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Poista"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopioi numero"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Muokkaa numeroa ennen puhelua"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Soita"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Ilmoita epätarkasta numerosta"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Lähetetty kuva"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Vastaanotettu kuva"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Yhteystiedot: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Ilmoita väärästä numerosta"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Numerosta ilmoittaminen epäonnistui."</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numeroa koskeva ilmoitus lähetettiin."</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-fr-rCA/strings.xml b/java/com/android/dialer/calldetails/res/values-fr-rCA/strings.xml
index 676861f..714fb7b 100644
--- a/java/com/android/dialer/calldetails/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-fr-rCA/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Supprimer"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copier le numéro"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Modifier le numéro avant de passer l\'appel"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Appeler"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Signaler un numéro inexact"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Photo envoyée"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Photo reçue"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"« <xliff:g id="MESSAGE">%1$s</xliff:g> »"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Coordonnées de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Signaler un numéro incorrect"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Impossible de signaler le numéro"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numéro signalé"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-fr/strings.xml b/java/com/android/dialer/calldetails/res/values-fr/strings.xml
index 606cb10..f612341 100644
--- a/java/com/android/dialer/calldetails/res/values-fr/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-fr/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Supprimer"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copier le numéro"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Modifier le numéro avant d\'appeler"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Appeler"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Signaler un numéro incorrect"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Envoi d\'une photo"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Réception d\'une photo"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Coordonnées associées à <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Signaler un numéro incorrect"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Impossible de signaler le numéro"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Signalement du numéro effectué"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-gl/strings.xml b/java/com/android/dialer/calldetails/res/values-gl/strings.xml
index aa5ff14..7f79834 100644
--- a/java/com/android/dialer/calldetails/res/values-gl/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-gl/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Eliminar"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar número antes de chamar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Chamar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Informar dun número impreciso"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Enviouse unha foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Recibiuse unha foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalles de contacto de: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Informar dun número incorrecto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Non se puido marcar o número como inadecuado"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Marcouse o número como inadecuado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-gu/strings.xml b/java/com/android/dialer/calldetails/res/values-gu/strings.xml
index ccb8755..9299705 100644
--- a/java/com/android/dialer/calldetails/res/values-gu/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-gu/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"કાઢી નાખો"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"નંબર કૉપિ કરો"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"કૉલ કરતાં પહેલાં નંબર સંપાદિત કરો"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"કૉલ કરો"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"અચોક્કસ નંબરની જાણ કરો"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"એક ફોટો મોકલ્યો"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"એક ફોટો પ્રાપ્ત કર્યો"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> માટે સંપર્ક વિગતો"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"ખોટા નંબરની જાણ કરો"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"નંબરની જાણ કરી શકાઈ નથી"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"નંબરની જાણ કરી"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-hi/strings.xml b/java/com/android/dialer/calldetails/res/values-hi/strings.xml
index 517fbe5..08099fe 100644
--- a/java/com/android/dialer/calldetails/res/values-hi/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-hi/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"हटाएं"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"नंबर कॉपी करें"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"कॉल करने से पहले नंबर संपादित करें"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"कॉल करें"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"गलत जानकारी देने वाले नंबर की रिपोर्ट करें"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"फ़ोटो भेजी गई"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"फ़ोटो मिली"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> का संपर्क विवरण"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"गलत नंबर की रिपोर्ट करें"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"नंबर की रिपोर्ट नहीं की जा सकी"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"नंबर की रिपोर्ट की गई"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-hr/strings.xml b/java/com/android/dialer/calldetails/res/values-hr/strings.xml
index 687a65e..6537181 100644
--- a/java/com/android/dialer/calldetails/res/values-hr/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-hr/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Brisanje"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiranje broja"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Uređivanje broja prije poziva"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Poziv"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Prijava netočnog broja"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Šalje fotografiju"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Prima fotografiju"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Pojedinosti o kontaktu <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Prijava netočnog broja"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Prijava broja nije moguća"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Broj je prijavljen"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-hu/strings.xml b/java/com/android/dialer/calldetails/res/values-hu/strings.xml
index 66863e8..43afbe3 100644
--- a/java/com/android/dialer/calldetails/res/values-hu/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-hu/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Törlés"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Szám másolása"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Szám szerkesztése hívás előtt"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Telefonhívás"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Pontatlan szám bejelentése"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Küldött egy fotót"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Kapott egy fotót"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> részletes adatai."</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Helytelen szám bejelentése"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nem sikerült bejelenteni a számot"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Szám bejelentve"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-hy/strings.xml b/java/com/android/dialer/calldetails/res/values-hy/strings.xml
index a1e84e9..05022ca 100644
--- a/java/com/android/dialer/calldetails/res/values-hy/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-hy/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Ջնջել"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Պատճենել համարը"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Փոփոխել համարը զանգելուց առաջ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Զանգ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Հաղորդել սխալ համարի մասին"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Ուղարկվել է լուսանկար"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Ստացվել է լուսանկար"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"«<xliff:g id="MESSAGE">%1$s</xliff:g>»"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>-ի կոնտակտային տվյալները"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Հաղորդում սխալ համարի մասին"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Չհաջողվեց ուղարկել հաղորդումը"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Հաղորդումն ուղարկվեց"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-in/strings.xml b/java/com/android/dialer/calldetails/res/values-in/strings.xml
index ba58ba0..eaeb273 100644
--- a/java/com/android/dialer/calldetails/res/values-in/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-in/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Hapus"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Salin nomor"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edit nomor sebelum menelepon"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Telepon"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Laporkan nomor yang tidak akurat"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Mengirim foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Menerima foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detail kontak <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Laporkan nomor yang salah"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Tidak dapat melaporkan nomor"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nomor dilaporkan"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-is/strings.xml b/java/com/android/dialer/calldetails/res/values-is/strings.xml
index 0770814..ac522d5 100644
--- a/java/com/android/dialer/calldetails/res/values-is/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-is/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Eyða"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Afrita númer"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Breyta númeri áður en hringt er"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Hringja"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Tilkynna rangt númer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Sendi mynd"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Tók á móti mynd"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Tengiliðaupplýsingar um <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Tilkynna rangt númer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Ekki tókst að tilkynna númerið"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Númer tilkynnt"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-it/strings.xml b/java/com/android/dialer/calldetails/res/values-it/strings.xml
index 97af251..40c2245 100644
--- a/java/com/android/dialer/calldetails/res/values-it/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-it/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Elimina"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copia numero"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Modifica numero prima di chiamare"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Chiama"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Segnala numero sbagliato"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Foto inviata"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Foto ricevuta"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Dettagli contatto <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Segnala numero errato"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Impossibile segnalare il numero"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numero segnalato"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-iw/strings.xml b/java/com/android/dialer/calldetails/res/values-iw/strings.xml
index 329eded..ffc4d47 100644
--- a/java/com/android/dialer/calldetails/res/values-iw/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-iw/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"מחק"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"העתק את המספר"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ערוך את המספר לפני השיחה"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"התקשר"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"דיווח על מספר לא מדויק"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"נשלחה תמונה"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"התקבלה תמונה"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"פרטי ההתקשרות של <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"דיווח על מספר שגוי"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"לא ניתן היה לדווח על המספר"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"המספר דווח"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ja/strings.xml b/java/com/android/dialer/calldetails/res/values-ja/strings.xml
index 7aef345..24fcf2c 100644
--- a/java/com/android/dialer/calldetails/res/values-ja/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ja/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"削除"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"電話番号をコピー"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"発信前に電話番号を編集"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"発信"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"情報が間違っている番号を報告"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"写真を送信しました"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"写真を受信しました"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"「<xliff:g id="MESSAGE">%1$s</xliff:g>」"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>の連絡先の詳細"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"間違った番号の報告"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"番号を報告できませんでした"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"番号を報告しました"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ka/strings.xml b/java/com/android/dialer/calldetails/res/values-ka/strings.xml
index 1cd7bc2..3d92f61 100644
--- a/java/com/android/dialer/calldetails/res/values-ka/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ka/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"წაშლა"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ნომრის კოპირება"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ნომრის რედაქტირება დარეკვამდე"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"დარეკვა"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"არაზუსტი ნომრის შეტყობინება"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ფოტო გაიგზავნა"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"მიღებულია ფოტო"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>-ის საკონტაქტო დეტალები"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"არასწორი ნომრის შეტყობინება"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ნომრის შეტყობინება ვერ მოხერხდა"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"ნომერი შეტყობინებულია"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-kk/strings.xml b/java/com/android/dialer/calldetails/res/values-kk/strings.xml
index 1923cf7..c29daeb 100644
--- a/java/com/android/dialer/calldetails/res/values-kk/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-kk/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Жою"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Нөмірді көшіру"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Нөмірді қоңырау шалуға дейін өзгерту"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Қоңырау шалу"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Қате нөмір туралы хабарлау"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Сурет жіберілді"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Сурет қабылданды"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> контакт деректері"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Қате нөмір туралы хабарлау"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Нөмір туралы хабар жіберілмеді"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Нөмір туралы хабар жіберілді"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-km/strings.xml b/java/com/android/dialer/calldetails/res/values-km/strings.xml
index e047279..d5ea830 100644
--- a/java/com/android/dialer/calldetails/res/values-km/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-km/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"លុប"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ថតចម្លងលេខទូរសព្ទ"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"កែ​លេខ​ មុន​ពេល​ហៅទូរសព្ទ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ហៅទូរសព្ទ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"រាយការណ៍លេខមិនត្រឹមត្រូវ"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"បានផ្ញើរូបថត"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"បាន​ទទួល​រូបថត"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"ព័ត៌មាន​ទំនាក់​ទំនង​លម្អិត​សម្រាប់ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"រាយការណ៍​លេខ​មិន​ត្រឹមត្រូវ"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"មិន​អាច​រាយការណ៍​លេខ​បាន​ទេ"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"បាន​រាយការណ៍​លេខ"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-kn/strings.xml b/java/com/android/dialer/calldetails/res/values-kn/strings.xml
index 66c0d63..aeff715 100644
--- a/java/com/android/dialer/calldetails/res/values-kn/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-kn/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ಅಳಿಸಿ"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ಸಂಖ್ಯೆಯನ್ನು ನಕಲಿಸಿ"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ಕರೆ ಮಾಡುವ ಮೊದಲು ಸಂಖ್ಯೆಯನ್ನು ಎಡಿಟ್ ಮಾಡಿ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ಕರೆಮಾಡಿ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"ನಿಖರವಾಗಿಲ್ಲದ ಸಂಖ್ಯೆಯನ್ನು ವರದಿಮಾಡಿ"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ಫೋಟೋ ಕಳುಹಿಸಲಾಗಿದೆ"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ಫೋಟೋ ಸ್ವೀಕರಿಸಲಾಗಿದೆ"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ಗೆ ಸಂಪರ್ಕ ವಿವರಗಳು"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"ತಪ್ಪಾದ ಸಂಖ್ಯೆಯನ್ನು ವರದಿಮಾಡಿ"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ಸಂಖ್ಯೆಯನ್ನು ವರದಿ ಮಾಡಲು ಸಾಧ್ಯವಾಗಲಿಲ್ಲ"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"ವರದಿ ಮಾಡಲಾದ ಸಂಖ್ಯೆ"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ko/strings.xml b/java/com/android/dialer/calldetails/res/values-ko/strings.xml
index 35c5038..f45d712 100644
--- a/java/com/android/dialer/calldetails/res/values-ko/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ko/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"삭제"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"전화번호 복사"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"통화하기 전에 번호 수정"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"전화걸기"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"잘못된 번호 신고하기"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"사진 전송됨"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"사진 수신됨"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\'<xliff:g id="MESSAGE">%1$s</xliff:g>\'"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>의 연락처 세부정보"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"잘못된 번호 신고"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"번호를 신고할 수 없습니다."</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"번호가 신고되었습니다."</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ky/strings.xml b/java/com/android/dialer/calldetails/res/values-ky/strings.xml
index fe37b33..9735abc 100644
--- a/java/com/android/dialer/calldetails/res/values-ky/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ky/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Жок кылуу"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Номерди көчүрүү"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Чалуудан мурун номерди түзөтүү"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Чалуу"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Номердеги ката жөнүндө кабар берүү"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Сүрөт жөнөтүлдү"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Сүрөт алынды"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> байланыш маалыматтары"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Туура эмес номер жөнүндө кабарлоо"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Туура эмес номер жөнүндө кабар жөнөтүлбөй койду"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Туура эмес номер жөнүндө кабар берүү"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-lo/strings.xml b/java/com/android/dialer/calldetails/res/values-lo/strings.xml
index 85b636a..880510e 100644
--- a/java/com/android/dialer/calldetails/res/values-lo/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-lo/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"​ລຶບ"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ສຳເນົາເບີໂທ"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ແກ້ໄຂເບີກ່ອນໂທ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ໂທ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"ລາຍງານເບີໂທທີ່ບໍ່ຖືກຕ້ອງ"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ສົ່ງຮູບພາບ"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ໄດ້ຮັບຮູບພາບແລ້ວ"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"ລາຍລະອຽດ​ການຕິດຕໍ່​ສຳລັບ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"​ລາຍ​ງານ​ເບີ​ໂທບໍ່​ຖືກ​ຕ້ອງ"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ບໍ່ສາມາດລາຍງານເບີໂທໄດ້"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"ລາຍງານເບີໂທແລ້ວ"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-lt/strings.xml b/java/com/android/dialer/calldetails/res/values-lt/strings.xml
index 9c8ad7b..2f195de 100644
--- a/java/com/android/dialer/calldetails/res/values-lt/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-lt/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Ištrinti"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopijuoti numerį"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Redaguoti numerį prieš skambinant"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Skambinti"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Pranešti apie netikslų numerį"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Išsiuntė nuotrauką"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Gavo nuotrauką"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Išsami kontaktinė informacija: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Pranešimas apie netinkamą numerį"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nepavyko pranešti apie numerį"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Apie numerį pranešta"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-lv/strings.xml b/java/com/android/dialer/calldetails/res/values-lv/strings.xml
index d878393..e119b12 100644
--- a/java/com/android/dialer/calldetails/res/values-lv/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-lv/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Dzēst"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopēt numuru"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Rediģēt numuru pirms zvanīšanas"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Zvanīt"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Ziņot par neprecīzu numuru"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Nosūtīja fotoattēlu"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Saņēma fotoattēlu"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"“<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktpersonas informācija: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Ziņošana par nepareizu numuru"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nevarēja nosūtīt ziņojumu par numuru"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Ziņojums par numuru nosūtīts"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-mk/strings.xml b/java/com/android/dialer/calldetails/res/values-mk/strings.xml
index 9388ae0..2458e08 100644
--- a/java/com/android/dialer/calldetails/res/values-mk/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-mk/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Избриши"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Копирај го бројот"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Измени го бројот пред повикот"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Повикај"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Пријавете погрешен број"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Испрати фотографија"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Прими фотографија"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Детали за контакт за <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Пријавете неточен број"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Не можеше да пријави бројот"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Бројот е пријавен"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ml/strings.xml b/java/com/android/dialer/calldetails/res/values-ml/strings.xml
index d296911..8164a21 100644
--- a/java/com/android/dialer/calldetails/res/values-ml/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ml/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ഇല്ലാതാക്കുക"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"നമ്പർ പകർത്തുക"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"കോൾ ചെയ്യുന്നതിന് മുമ്പായി നമ്പർ എഡിറ്റുചെയ്യുക"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"കോള്‍ ചെയ്യുക"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"കൃത്യമല്ലാത്ത നമ്പർ റിപ്പോർട്ടുചെയ്യുക"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ഒരു ഫോട്ടോ അയച്ചു"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ഒരു ഫോട്ടോ ലഭിച്ചു"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> എന്നതിന്റെ കോൺ‌ടാക്റ്റ് വിശദാംശങ്ങൾ"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"തെറ്റായ നമ്പർ റിപ്പോർട്ടുചെയ്യുക"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"നമ്പർ റിപ്പോർട്ടുചെയ്യാനായില്ല"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"നമ്പർ റിപ്പോർട്ടുചെയ്‌തു"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-mn/strings.xml b/java/com/android/dialer/calldetails/res/values-mn/strings.xml
index cb264e0..242f6ab 100644
--- a/java/com/android/dialer/calldetails/res/values-mn/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-mn/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Устгах"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Дугаар хуулах"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Залгахын өмнө дугаар засах"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Залгах"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Тодорхой бус дугаарыг мэдээлэх"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Зураг илгээсэн"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Зураг хүлээн авсан"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>-н харилцагчийн мэдээлэл"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Буруу дугаарыг мэдээлэх"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Дугаарыг мэдээлж чадсангүй"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Дугаарыг мэдээлсэн"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-mr/strings.xml b/java/com/android/dialer/calldetails/res/values-mr/strings.xml
index 5c31e36..d869e13 100644
--- a/java/com/android/dialer/calldetails/res/values-mr/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-mr/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"हटवा"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"नंबर कॉपी करा"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"कॉल करण्यापूर्वी नंबर संपादित करा"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"कॉल करा"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"चुकीच्या नंबरचा अहवाल द्या"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"एक फोटो पाठविला"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"एक फोटो प्राप्त झाला"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> साठी संपर्क तपशील"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"चुकीच्या नंबरचा अहवाल द्या"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"नंबरचा अहवाल देऊ शकलो नाही"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"नंबरचा अहवाल दिला"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ms/strings.xml b/java/com/android/dialer/calldetails/res/values-ms/strings.xml
index da17d6e..7c0bfdd 100644
--- a/java/com/android/dialer/calldetails/res/values-ms/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ms/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Padam"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Salin nombor"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edit nombor sebelum panggilan"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Panggil"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Laporkan nombor yang tidak tepat"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Menghantar foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Foto diterima"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Butiran hubungan untuk <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Laporkan nombor yang tidak betul"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Tidak dapat melaporkan nombor"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nombor dilaporkan"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-my/strings.xml b/java/com/android/dialer/calldetails/res/values-my/strings.xml
index 75508d8..34a57d5 100644
--- a/java/com/android/dialer/calldetails/res/values-my/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-my/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ဖျက်ရန်"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"နံပါတ်ကိုကူးယူရန်"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"မခေါ်ဆိုမီ နံပါတ်ကိုပြင်ဆင်ရန်"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ခေါ်ဆိုရန်"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"မတိကျသော နံပါတ်ကို တိုင်ကြားရန်"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ဓာတ်ပုံ ပို့လိုက်သည်"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ဓာတ်ပုံ လက်ခံရရှိသည်"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ၏ အဆက်အသွယ် အသေးစိတ်"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"မမှန်ကန်သည့် နံပါတ်ကို တိုင်ကြားရန်"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"နံပါတ်ကို မတိုင်ကြားနိုင်ပါ"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"နံပါတ်ကို တိုင်ကြားပြီးပါပြီ"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-nb/strings.xml b/java/com/android/dialer/calldetails/res/values-nb/strings.xml
index 022025f..53ffd3a 100644
--- a/java/com/android/dialer/calldetails/res/values-nb/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-nb/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Slett"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiér nummeret"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Rediger nummeret før du ringer"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ring"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Rapportér feil nummer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Et bilde ble sendt"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Et bilde ble mottatt"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"«<xliff:g id="MESSAGE">%1$s</xliff:g>»"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktinformasjon for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Rapportér feil nummer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Kunne ikke rapportere nummeret"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummeret er rapportert"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ne/strings.xml b/java/com/android/dialer/calldetails/res/values-ne/strings.xml
index 8fe355b..f8e10ca 100644
--- a/java/com/android/dialer/calldetails/res/values-ne/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ne/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"मेट्नुहोस्"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"नम्बर प्रतिलिपि गर्नुहोस्"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"कल गर्नु अघि नम्बर सम्पादन गर्नुहोस्"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"कल"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"गलत नम्बरको रिपोर्ट गर्नुहोस्"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"एउटा तस्बिर पठाइयो"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"एउटा तस्बिर प्राप्त भयो"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> का सम्पर्क विवरणहरू"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"गलत नम्बरको रिपोर्ट गर्नुहोस्"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"नम्बरको रिपोर्ट गर्न सकिएन"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"नम्बरको रिपोर्ट गरियो"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-nl/strings.xml b/java/com/android/dialer/calldetails/res/values-nl/strings.xml
index 71657b8..b8cb7fe 100644
--- a/java/com/android/dialer/calldetails/res/values-nl/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-nl/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Verwijderen"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Nummer kopiëren"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Nummer bewerken vóór bellen"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Bellen"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Onjuist nummer melden"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Foto verzonden"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Foto ontvangen"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\'<xliff:g id="MESSAGE">%1$s</xliff:g>\'"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Contactgegevens voor <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Incorrect nummer melden"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Kan nummer niet melden"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummer gemeld"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-no/strings.xml b/java/com/android/dialer/calldetails/res/values-no/strings.xml
index 022025f..53ffd3a 100644
--- a/java/com/android/dialer/calldetails/res/values-no/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-no/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Slett"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiér nummeret"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Rediger nummeret før du ringer"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ring"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Rapportér feil nummer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Et bilde ble sendt"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Et bilde ble mottatt"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"«<xliff:g id="MESSAGE">%1$s</xliff:g>»"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktinformasjon for <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Rapportér feil nummer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Kunne ikke rapportere nummeret"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummeret er rapportert"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-pa/strings.xml b/java/com/android/dialer/calldetails/res/values-pa/strings.xml
index d4f1759..b488d53 100644
--- a/java/com/android/dialer/calldetails/res/values-pa/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-pa/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ਮਿਟਾਓ"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"ਨੰਬਰ ਕਾਪੀ ਕਰੋ"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ਕਾਲ ਤੋਂ ਪਹਿਲਾਂ ਨੰਬਰ ਸੰਪਾਦਿਤ ਕਰੋ"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"ਕਾਲ ਕਰੋ"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"ਗਲਤ ਨੰਬਰ ਦੀ ਰਿਪੋਰਟ ਕਰੋ"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ਇੱਕ ਫ਼ੋਟੋ ਭੇਜੀ ਗਈ"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ਇੱਕ ਫ਼ੋਟੋ ਪ੍ਰਾਪਤ ਹੋਈ"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> ਲਈ ਸੰਪਰਕ ਵੇਰਵੇ"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"ਗਲਤ ਨੰਬਰ ਦੀ ਰਿਪੋਰਟ ਕਰੋ"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ਨੰਬਰ ਦੀ ਰਿਪੋਰਟ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"ਨੰਬਰ ਦੀ ਰਿਪੋਰਟ ਕੀਤੀ ਗਈ"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-pl/strings.xml b/java/com/android/dialer/calldetails/res/values-pl/strings.xml
index 9644600..790dade 100644
--- a/java/com/android/dialer/calldetails/res/values-pl/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-pl/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Usuń"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiuj numer"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Edytuj numer, zanim zadzwonisz"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Zadzwoń"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Zgłoś niedokładny numer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Wysłano zdjęcie"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Odebrano zdjęcie"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Informacje kontaktowe: <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Zgłoś nieprawidłowy numer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Nie udało się zgłosić numeru"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numer został zgłoszony"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-pt-rBR/strings.xml b/java/com/android/dialer/calldetails/res/values-pt-rBR/strings.xml
index 467973d..7cd3282 100644
--- a/java/com/android/dialer/calldetails/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-pt-rBR/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Excluir"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar número antes de ligar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ligar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Informar número inválido"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Enviou uma foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Recebeu uma foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalhes de contato para <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Informar número incorreto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Não foi possível informar o número"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Número informado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-pt-rPT/strings.xml b/java/com/android/dialer/calldetails/res/values-pt-rPT/strings.xml
index cfbbc02..5749ebb 100644
--- a/java/com/android/dialer/calldetails/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-pt-rPT/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Eliminar"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar o número antes de efetuar a chamada"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Telefonar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Denunciar número incorreto"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Enviou uma foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Recebeu uma foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalhes de contacto de <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Denunciar número incorreto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Não foi possível denunciar o número."</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Número denunciado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-pt/strings.xml b/java/com/android/dialer/calldetails/res/values-pt/strings.xml
index 467973d..7cd3282 100644
--- a/java/com/android/dialer/calldetails/res/values-pt/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-pt/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Excluir"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiar número"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Editar número antes de ligar"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ligar"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Informar número inválido"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Enviou uma foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Recebeu uma foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalhes de contato para <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Informar número incorreto"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Não foi possível informar o número"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Número informado"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ro/strings.xml b/java/com/android/dialer/calldetails/res/values-ro/strings.xml
index e9281ae..00ab0a3 100644
--- a/java/com/android/dialer/calldetails/res/values-ro/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ro/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Ștergeți"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Copiați numărul"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Modificați numărul înainte de apelare"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Apelați"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Raportați numărul ca incorect"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"A fost trimisă o fotografie."</string>
     <string name="received_a_photo" msgid="3528953225576480505">"A fost primită o fotografie."</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detalii de contact pentru <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Raportați un număr incorect"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Numărul nu a putut fi raportat."</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numărul a fost raportat."</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ru/strings.xml b/java/com/android/dialer/calldetails/res/values-ru/strings.xml
index bf981e2..b31b832 100644
--- a/java/com/android/dialer/calldetails/res/values-ru/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ru/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Удалить"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Скопировать номер"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Изменить номер перед вызовом"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Позвонить"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Сообщить об ошибке в номере"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Отправлена фотография"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Получена фотография"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Сведения о контакте <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Неверный номер"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Не удалось отправить отчет о неверном номере"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Отчет о неверном номере отправлен"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-si/strings.xml b/java/com/android/dialer/calldetails/res/values-si/strings.xml
index 5fdca0d..62968ab 100644
--- a/java/com/android/dialer/calldetails/res/values-si/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-si/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"මකන්න"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"අංකය පිටපත් කරන්න"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"ඇමතුමට පෙර අංකය සංස්කරණය කරන්න"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"අමතන්න"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"වැරදි අංකය වාර්තා කරන්න"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ඡායාරූපයක් යැවිණි"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ඡායාරූපයක් ලැබිණි"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> සඳහා සම්බන්ධතා විස්තර"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"වැරදි අංකය වාර්තා කරන්න"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"අංකය වාර්තා කිරීමට නොහැකි විය"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"අංකය වාර්තා කරන ලදී"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sk/strings.xml b/java/com/android/dialer/calldetails/res/values-sk/strings.xml
index db04787..ee62cbd 100644
--- a/java/com/android/dialer/calldetails/res/values-sk/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sk/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Odstrániť"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopírovať číslo"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Pred volaním upraviť číslo"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Volať"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Nahlásiť nesprávne číslo"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Bola odoslaná fotka"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Bola prijatá fotka"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> – podrobnosti kontaktu"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Nahlásenie nesprávneho čísla"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Číslo sa nepodarilo nahlásiť"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Číslo bolo nahlásené"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sl/strings.xml b/java/com/android/dialer/calldetails/res/values-sl/strings.xml
index 98975f4..70b0e59 100644
--- a/java/com/android/dialer/calldetails/res/values-sl/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sl/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Izbriši"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiraj številko"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Pred klicanjem uredi številko"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Pokliči"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Prijavi netočno številko"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Poslana fotografija"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Prejeta fotografija"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"»<xliff:g id="MESSAGE">%1$s</xliff:g>«"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Podrobnosti stika za <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Prijava napačne številke"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Številke ni bilo mogoče prijaviti"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Številka je prijavljena"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sq/strings.xml b/java/com/android/dialer/calldetails/res/values-sq/strings.xml
index dd9915d..a3de4f1 100644
--- a/java/com/android/dialer/calldetails/res/values-sq/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sq/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Fshi"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopjo numrin"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Redakto numrin para telefonatës"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Telefono"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Raporto numrin e pasaktë"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"U dërgua një fotografi"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"U mor një fotografi"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Detajet e kontaktit për <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Raporto numrin e pasaktë"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Numri nuk mund të raportohej"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numri u raportua"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sr/strings.xml b/java/com/android/dialer/calldetails/res/values-sr/strings.xml
index 7f4005d..54c1550 100644
--- a/java/com/android/dialer/calldetails/res/values-sr/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sr/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Избриши"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Копирај број"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Измените број пре позива"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Позови"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Пријави нетачан број"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Слика је послата"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Слика је примљена"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"„<xliff:g id="MESSAGE">%1$s</xliff:g>“"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Контакт информације за <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Пријавите нетачан број"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Пријављивање броја није успело"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Број је пријављен"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sv/strings.xml b/java/com/android/dialer/calldetails/res/values-sv/strings.xml
index 3967b4f..a7e1c12 100644
--- a/java/com/android/dialer/calldetails/res/values-sv/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sv/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Radera"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopiera nummer"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Redigera nummer före samtal"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Ring"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Rapportera felaktigt nummer"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Skickade ett foto"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Tog emot ett foto"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"<xliff:g id="MESSAGE">%1$s</xliff:g>"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Kontaktuppgifter för <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Rapportera felaktigt nummer"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Det gick inte att rapportera nummer"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nummer rapporterat"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-sw/strings.xml b/java/com/android/dialer/calldetails/res/values-sw/strings.xml
index e5df823..f19fb7b 100644
--- a/java/com/android/dialer/calldetails/res/values-sw/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-sw/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Futa"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Nakili nambari"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Hariri nambari kabla ya kupiga"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Piga simu"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Ripoti nambari isiyo sahihi"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Picha imetumwa"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Picha imepokelewa"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Maelezo ya <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Ripoti nambari isiyosahihi"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Imeshindwa kuripoti nambari"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Nambari imeripotiwa"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ta/strings.xml b/java/com/android/dialer/calldetails/res/values-ta/strings.xml
index 840ad87..7f625f8 100644
--- a/java/com/android/dialer/calldetails/res/values-ta/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ta/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"நீக்கு"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"எண்ணை நகலெடு"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"அழைப்பதற்கு முன் எண்ணைத் திருத்து"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"அழை"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"துல்லியமற்ற எண் எனப் புகாரளி"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"படம் அனுப்பப்பட்டது"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"படம் பெறப்பட்டது"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>க்கான தொடர்பு விவரங்கள்"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"தவறான எண் எனப் புகாரளி"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"எண்ணைப் புகாரளிக்க முடியவில்லை"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"எண் புகாரளிக்கப்பட்டது"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-te/strings.xml b/java/com/android/dialer/calldetails/res/values-te/strings.xml
index 3054444..d6fc792 100644
--- a/java/com/android/dialer/calldetails/res/values-te/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-te/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"తొలగించు"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"నంబర్‌ను కాపీ చేయి"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"కాల్ చేసే ముందు నంబర్‌ను సవరించు"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"కాల్ చేయి"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"అనిర్దిష్టంగా ఉండే నంబర్‌ను నివేదించు"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ఫోటో పంపబడింది"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ఫోటో స్వీకరించబడింది"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> యొక్క సంప్రదింపు వివరాలు"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"చెల్లని నంబర్‌ను నివేదించండి"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"నంబర్‌ను నివేదించడం సాధ్యపడలేదు"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"నంబర్ నివేదించబడింది"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-th/strings.xml b/java/com/android/dialer/calldetails/res/values-th/strings.xml
index c565eba..7bbcd12 100644
--- a/java/com/android/dialer/calldetails/res/values-th/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-th/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"ลบ"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"คัดลอกหมายเลข"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"แก้ไขหมายเลขก่อนโทร"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"โทร"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"รายงานหมายเลขที่ผิดพลาด"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ส่งรูปภาพแล้ว"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ได้รับรูปภาพแล้ว"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"รายละเอียดที่ติดต่อสำหรับ <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"รายงานหมายเลขที่ไม่ถูกต้อง"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"ไม่สามารถรายงานหมายเลข"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"รายงานหมายเลขแล้ว"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-tl/strings.xml b/java/com/android/dialer/calldetails/res/values-tl/strings.xml
index 81c148e..969a33a 100644
--- a/java/com/android/dialer/calldetails/res/values-tl/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-tl/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"I-delete"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopyahin ang numero"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"I-edit ang numero bago tumawag"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Tumawag"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Iulat ang hindi wastong numero"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Nagpadala ng larawan"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Nakatanggap ng larawan"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Mga detalye sa pakikipag-ugnayan para kay/sa <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Iulat ang hindi tamang numero"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Hindi maiulat ang numero"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Inulat ang numero"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-tr/strings.xml b/java/com/android/dialer/calldetails/res/values-tr/strings.xml
index ade4018..9976312 100644
--- a/java/com/android/dialer/calldetails/res/values-tr/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-tr/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Sil"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Numarayı kopyala"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Telefon etmeden önce numarayı düzenleyin"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Telefon eder"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Hatalı numarayı bildir"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Bir fotoğraf gönderildi"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Bir fotoğraf alındı"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> için kişi ayrıntıları"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Yanlış numarayı bildir"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Numara bildirilemedi"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Numara bildirildi"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-uk/strings.xml b/java/com/android/dialer/calldetails/res/values-uk/strings.xml
index 6538d66..d37a54e 100644
--- a/java/com/android/dialer/calldetails/res/values-uk/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-uk/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Видалити"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Копіювати номер"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Редагувати номер перед дзвінком"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Виклик"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Повідомити про неправильний номер"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Надіслано фотографію"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Отримано фотографію"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Відомості про контакт <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Повідомити про неправильний номер"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Не вдалося повідомити про неправильний номер"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Ви повідомили про неправильний номер"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-ur/strings.xml b/java/com/android/dialer/calldetails/res/values-ur/strings.xml
index 90c3a59..960bef4 100644
--- a/java/com/android/dialer/calldetails/res/values-ur/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-ur/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"حذف کریں"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"نمبر کاپی کریں"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"کال کرنے سے پہلے نمبر میں ترمیم کریں"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"کال"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"غلط نمبر کی رپورٹ کریں"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"ایک تصویر بھیجی"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"ایک تصویر موصول ہوئی"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> کیلئے رابطہ کی تفصیلات"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"غلط نمبر کی اطلاع دیں"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"نمبر کی اطلاع نہیں دی جا سکی"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"نمبر کی اطلاع دے دی گئی"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-uz/strings.xml b/java/com/android/dialer/calldetails/res/values-uz/strings.xml
index 7b443ca..4f38cab 100644
--- a/java/com/android/dialer/calldetails/res/values-uz/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-uz/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"O‘chirib tashlash"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Raqamni nusxalash"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Qo‘ng‘iroq qilishdan oldin raqamni tahrirlash"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Qo‘ng‘iroq qilish"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Raqamdagi xatolik haqida xabar berish"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Rasm yuborildi"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Rasm qabul qilindi"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"“<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g> kontakt ma’lumotlari"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Noto‘g‘ri raqam"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Raqamdagi xatolik haqida xabar yuborib bo‘lmadi"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Raqamdagi xatolik haqida xabar yuborildi"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-vi/strings.xml b/java/com/android/dialer/calldetails/res/values-vi/strings.xml
index 7a95021..6adae2b 100644
--- a/java/com/android/dialer/calldetails/res/values-vi/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-vi/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Xóa"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Sao chép số"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Chỉnh sửa số trước khi gọi"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Gọi"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Báo cáo số không chính xác"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Đã gửi một ảnh"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Đã nhận một ảnh"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Chi tiết liên hệ cho <xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Báo cáo số không chính xác"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Không thể báo cáo số"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Đã báo cáo số"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-zh-rCN/strings.xml b/java/com/android/dialer/calldetails/res/values-zh-rCN/strings.xml
index aad695a..1edb5e1 100644
--- a/java/com/android/dialer/calldetails/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-zh-rCN/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"删除"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"复制号码"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"拨打电话之前修改号码"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"拨打电话"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"报告错误的号码"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"发送了一张照片"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"收到了一张照片"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"“<xliff:g id="MESSAGE">%1$s</xliff:g>”"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>的详细联系信息"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"报告错误号码"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"无法报告错误的号码"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"已报告错误的号码"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-zh-rHK/strings.xml b/java/com/android/dialer/calldetails/res/values-zh-rHK/strings.xml
index eb5b606..a82e070 100644
--- a/java/com/android/dialer/calldetails/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-zh-rHK/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"刪除"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"複製號碼"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"在撥打前編輯號碼"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"通話"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"報告錯誤號碼"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"已傳送相片"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"已收到相片"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"「<xliff:g id="MESSAGE">%1$s</xliff:g>」"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"「<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>」的聯絡人詳細資料"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"報告不正確的號碼"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"無法報告號碼"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"已報告號碼"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-zh-rTW/strings.xml b/java/com/android/dialer/calldetails/res/values-zh-rTW/strings.xml
index fd426c0..3b9dd56 100644
--- a/java/com/android/dialer/calldetails/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-zh-rTW/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"刪除"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"複製號碼"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"撥打電話前編輯號碼"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"撥號"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"回報號碼錯誤"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"傳送了 1 張相片"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"收到了 1 張相片"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"「<xliff:g id="MESSAGE">%1$s</xliff:g>」"</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"「<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>」的聯絡詳細資料"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"回報不正確的號碼"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"無法回報號碼"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"已回報號碼"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values-zu/strings.xml b/java/com/android/dialer/calldetails/res/values-zu/strings.xml
index d41d1f5..25e0cea 100644
--- a/java/com/android/dialer/calldetails/res/values-zu/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values-zu/strings.xml
@@ -21,9 +21,11 @@
     <string name="delete" msgid="2141020674108406737">"Susa"</string>
     <string name="call_details_copy_number" msgid="4265479408878990796">"Kopisha inombolo"</string>
     <string name="call_details_edit_number" msgid="8718476514903513624">"Hlela inombolo ngaphambi kokushaya ucingo"</string>
-    <string name="description_call_log_call_action" msgid="1421313064764221900">"Shaya"</string>
+    <string name="call_details_report_call_id" msgid="8857541295264421217">"Bika inombolo engalungile"</string>
     <string name="sent_a_photo" msgid="3978670717462979502">"Uthumele isithombe"</string>
     <string name="received_a_photo" msgid="3528953225576480505">"Uthole isithombe"</string>
     <string name="message_in_quotes" msgid="3270574830115828365">"\"<xliff:g id="MESSAGE">%1$s</xliff:g>\""</string>
-    <string name="description_contact_photo_details" msgid="3035869307063629315">"Imininingwane yokuxhumana ka-<xliff:g id="NAMEORNUMBER">%1$s</xliff:g>"</string>
+    <string name="report_caller_id_dialog_title" msgid="145323726250371695">"Bika inombolo engalungile"</string>
+    <string name="report_caller_id_failed" msgid="1471904930106125702">"Ayikwazanga ukubika inombolo"</string>
+    <string name="report_caller_id_toast" msgid="5494870403429969932">"Inombolo ibikiwe"</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values/dimens.xml b/java/com/android/dialer/calldetails/res/values/dimens.xml
index f85d02f..91bf70e 100644
--- a/java/com/android/dialer/calldetails/res/values/dimens.xml
+++ b/java/com/android/dialer/calldetails/res/values/dimens.xml
@@ -15,8 +15,6 @@
   ~ limitations under the License
   -->
 <resources>
-  <dimen name="call_details_primary_text_size">16sp</dimen>
-  <dimen name="call_details_secondary_text_size">14sp</dimen>
   <dimen name="call_details_top_margin">6dp</dimen>
 
   <!-- contact container -->
diff --git a/java/com/android/dialer/calldetails/res/values/strings.xml b/java/com/android/dialer/calldetails/res/values/strings.xml
index 4471605..1441efd 100644
--- a/java/com/android/dialer/calldetails/res/values/strings.xml
+++ b/java/com/android/dialer/calldetails/res/values/strings.xml
@@ -27,9 +27,8 @@
   <!-- Label for action to edit a number before calling it. [CHAR LIMIT=48] -->
   <string name="call_details_edit_number">Edit number before call</string>
 
-  <!-- String describing the phone icon on a call log list item. When tapped, it will place a
-       call to the number represented by that call log entry. [CHAR LIMIT=NONE]-->
-  <string name="description_call_log_call_action">Call</string>
+  <!-- Label for action to report a number with inaccurate caller id information. [CHAR LIMIT=48] -->
+  <string name="call_details_report_call_id">Report inaccurate number</string>
 
   <!-- String shown when the call details show a image that was sent -->
   <string name="sent_a_photo">Sent a photo</string>
@@ -40,10 +39,14 @@
   <!-- Messages shown to the user are wrapped in quotes, e.g. the user would see "Some text" -->
   <string name="message_in_quotes">\"<xliff:g id="message">%1$s</xliff:g>\"</string>
 
-  <!-- String describing the button to access the contact details for a name or number.
+  <!-- Title of dialog that confirms whether a user wants to report an incorrect number.
+       [CHAR LIMIT=NONE] -->
+  <string name="report_caller_id_dialog_title">Report incorrect number</string>
 
-      Note: AccessibilityServices use this attribute to announce what the view represents.
-            This is especially valuable for views without textual representation like ImageView.
-  -->
-  <string name="description_contact_photo_details">Contact details for <xliff:g id="nameOrNumber">%1$s</xliff:g></string>
+  <!-- Toast that appears when a caller id report fails to send. Could be due to network error or
+       authentication error. [CHAR LIMIT=NONE] -->
+  <string name="report_caller_id_failed">Couldn\'t report number</string>
+
+  <!-- Toast message which appears when a contact's caller id is reported as incorrect. [CHAR LIMIT=NONE] -->
+  <string name="report_caller_id_toast">Number reported</string>
 </resources>
diff --git a/java/com/android/dialer/calldetails/res/values/styles.xml b/java/com/android/dialer/calldetails/res/values/styles.xml
index 4fffe1a..1a2b529 100644
--- a/java/com/android/dialer/calldetails/res/values/styles.xml
+++ b/java/com/android/dialer/calldetails/res/values/styles.xml
@@ -15,24 +15,6 @@
   ~ limitations under the License
   -->
 <resources>
-  <style name="PrimaryText">
-    <item name="android:textColor">#DE000000</item>
-    <item name="android:textSize">@dimen/call_details_primary_text_size</item>
-    <item name="android:maxLines">1</item>
-  </style>
-
-  <style name="SecondaryText">
-    <item name="android:textColor">#8A000000</item>
-    <item name="android:textSize">@dimen/call_details_secondary_text_size</item>
-    <item name="android:maxLines">1</item>
-  </style>
-
-  <style name="ECText">
-    <item name="android:textColor">#8A000000</item>
-    <item name="android:textSize">@dimen/call_details_ec_text_size</item>
-    <item name="android:maxLines">1</item>
-  </style>
-
   <style name="CallDetailsActionItemStyle">
     <item name="android:foreground">?android:attr/selectableItemBackground</item>
     <item name="android:clickable">true</item>
diff --git a/java/com/android/dialer/callintent/CallIntentBuilder.java b/java/com/android/dialer/callintent/CallIntentBuilder.java
index 6066f66..c9468ba 100644
--- a/java/com/android/dialer/callintent/CallIntentBuilder.java
+++ b/java/com/android/dialer/callintent/CallIntentBuilder.java
@@ -27,6 +27,7 @@
 import android.telecom.VideoProfile;
 import android.text.TextUtils;
 import com.android.dialer.common.Assert;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.util.CallUtil;
 
 /** Creates an intent to start a new outgoing call. */
@@ -39,9 +40,22 @@
 
   public CallIntentBuilder(@NonNull Uri uri, @NonNull CallSpecificAppData callSpecificAppData) {
     this.uri = Assert.isNotNull(uri);
-    this.callSpecificAppData = Assert.isNotNull(callSpecificAppData);
+    Assert.isNotNull(callSpecificAppData);
     Assert.checkArgument(
         callSpecificAppData.getCallInitiationType() != CallInitiationType.Type.UNKNOWN_INITIATION);
+
+    if (PerformanceReport.isRecording()) {
+      this.callSpecificAppData =
+          CallSpecificAppData.newBuilder(callSpecificAppData)
+              .setTimeSinceAppLaunch(PerformanceReport.getTimeSinceAppLaunch())
+              .setTimeSinceFirstClick(PerformanceReport.getTimeSinceFirstClick())
+              .addAllUiActionsSinceAppLaunch(PerformanceReport.getActions())
+              .addAllUiActionTimestampsSinceAppLaunch(PerformanceReport.getActionTimestamps())
+              .build();
+      PerformanceReport.stopRecording();
+    } else {
+      this.callSpecificAppData = callSpecificAppData;
+    }
   }
 
   public CallIntentBuilder(@NonNull Uri uri, CallInitiationType.Type callInitiationType) {
diff --git a/java/com/android/dialer/callintent/call_specific_app_data.proto b/java/com/android/dialer/callintent/call_specific_app_data.proto
index 20ffc1f..766449f 100644
--- a/java/com/android/dialer/callintent/call_specific_app_data.proto
+++ b/java/com/android/dialer/callintent/call_specific_app_data.proto
@@ -7,14 +7,28 @@
 package com.android.dialer.callintent;
 
 import "java/com/android/dialer/callintent/call_initiation_type.proto";
+import "java/com/android/dialer/callintent/speed_dial_contact_type.proto";
+import "java/com/android/dialer/logging/ui_action.proto";
 
 // Miscellaneous data that's included in a new outgoing call initiated by
 // Dialer. The system will pass this data to the InCallUi which can use it
 // for logging or for something else.
+// Next tag: 10
 message CallSpecificAppData {
   optional CallInitiationType.Type call_initiation_type = 1;
 
   optional int32 position_of_selected_search_result = 2;
 
   optional int32 characters_in_search_string = 3;
+
+  repeated SpeedDialContactType.Type speed_dial_contact_type = 4;
+  optional int32 speed_dial_contact_position = 5;
+
+  optional int64 time_since_app_launch = 6;
+  optional int64 time_since_first_click = 7;
+  // The following two list should be of the same length
+  // (adding another message is not allowed here)
+  repeated com.android.dialer.logging.UiAction.Type
+      ui_actions_since_app_launch = 8;
+  repeated int64 ui_action_timestamps_since_app_launch = 9;
 }
diff --git a/java/com/android/dialer/callintent/speed_dial_contact_type.proto b/java/com/android/dialer/callintent/speed_dial_contact_type.proto
new file mode 100644
index 0000000..2d1fa3f
--- /dev/null
+++ b/java/com/android/dialer/callintent/speed_dial_contact_type.proto
@@ -0,0 +1,19 @@
+syntax = "proto2";
+
+option java_package = "com.android.dialer.callintent";
+option java_multiple_files = true;
+option optimize_for = LITE_RUNTIME;
+
+package com.android.dialer.callintent;
+
+
+// The type of speed call contact (favorites). Applies to initiation type
+// SPEED_DIAL only.
+message SpeedDialContactType {
+  enum Type {
+    UNDEFINED = 0;
+    PINNED_CONTACT = 1;
+    STARRED_CONTACT = 2;
+    FREQUENT_CONTACT = 3;
+  }
+}
diff --git a/java/com/android/dialer/calllog/CallLogComponent.java b/java/com/android/dialer/calllog/CallLogComponent.java
index 5cdd2b4..c7db2a1 100644
--- a/java/com/android/dialer/calllog/CallLogComponent.java
+++ b/java/com/android/dialer/calllog/CallLogComponent.java
@@ -25,6 +25,8 @@
 
   public abstract CallLogFramework callLogFramework();
 
+  public abstract RefreshAnnotatedCallLogWorker getRefreshAnnotatedCallLogWorker();
+
   public static CallLogComponent get(Context context) {
     return ((HasComponent) ((HasRootComponent) context.getApplicationContext()).component())
         .callLogComponent();
diff --git a/java/com/android/dialer/calllog/CallLogFramework.java b/java/com/android/dialer/calllog/CallLogFramework.java
index 508413b..d3a2c63 100644
--- a/java/com/android/dialer/calllog/CallLogFramework.java
+++ b/java/com/android/dialer/calllog/CallLogFramework.java
@@ -22,9 +22,10 @@
 import android.support.annotation.MainThread;
 import android.support.annotation.Nullable;
 import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.DataSources;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import javax.inject.Inject;
 import javax.inject.Singleton;
 
@@ -38,7 +39,6 @@
 public final class CallLogFramework implements CallLogDataSource.ContentObserverCallbacks {
 
   static final String PREF_FORCE_REBUILD = "callLogFrameworkForceRebuild";
-  static final String PREF_LAST_REBUILD_TIMESTAMP_MILLIS = "callLogFrameworkLastRebuild";
 
   private final DataSources dataSources;
 
@@ -58,6 +58,7 @@
     LogUtil.enterBlock("CallLogFramework.registerContentObservers");
 
     if (!isNewCallLogEnabled(appContext)) {
+      LogUtil.i("CallLogFramework.registerContentObservers", "new call log not enabled");
       return;
     }
 
diff --git a/java/com/android/dialer/calllog/CallLogModule.java b/java/com/android/dialer/calllog/CallLogModule.java
index d7473a7..2f2f16d 100644
--- a/java/com/android/dialer/calllog/CallLogModule.java
+++ b/java/com/android/dialer/calllog/CallLogModule.java
@@ -17,11 +17,9 @@
 package com.android.dialer.calllog;
 
 import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.DataSources;
 import com.android.dialer.calllog.datasources.contacts.ContactsDataSource;
 import com.android.dialer.calllog.datasources.systemcalllog.SystemCallLogDataSource;
-import com.android.dialer.common.concurrent.DefaultDialerExecutorFactory;
-import com.android.dialer.common.concurrent.DialerExecutorFactory;
-import dagger.Binds;
 import dagger.Module;
 import dagger.Provides;
 import java.util.Arrays;
@@ -32,10 +30,6 @@
 @Module
 public abstract class CallLogModule {
 
-  @Binds
-  abstract DialerExecutorFactory bindDialerExecutorFactory(
-      DefaultDialerExecutorFactory defaultDialerExecutorFactory);
-
   @Provides
   static DataSources provideCallLogDataSources(
       SystemCallLogDataSource systemCallLogDataSource, ContactsDataSource contactsDataSource) {
diff --git a/java/com/android/dialer/calllog/RefreshAnnotatedCallLogWorker.java b/java/com/android/dialer/calllog/RefreshAnnotatedCallLogWorker.java
index f9f0c99..2732466 100644
--- a/java/com/android/dialer/calllog/RefreshAnnotatedCallLogWorker.java
+++ b/java/com/android/dialer/calllog/RefreshAnnotatedCallLogWorker.java
@@ -18,91 +18,84 @@
 
 import android.annotation.TargetApi;
 import android.content.Context;
+import android.content.OperationApplicationException;
 import android.content.SharedPreferences;
-import android.database.sqlite.SQLiteDatabase;
 import android.os.Build;
+import android.os.RemoteException;
 import android.preference.PreferenceManager;
 import android.support.annotation.WorkerThread;
-import com.android.dialer.calllog.database.AnnotatedCallLog;
-import com.android.dialer.calllog.database.CallLogMutations;
+import com.android.dialer.calllog.database.CallLogDatabaseComponent;
 import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.CallLogMutations;
+import com.android.dialer.calllog.datasources.DataSources;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import com.android.dialer.inject.ApplicationContext;
 import javax.inject.Inject;
 
 /**
  * Worker which brings the annotated call log up to date, if necessary.
  *
- * <p>Accepts a boolean which indicates if the dirty check should be skipped, and returns true if
- * the annotated call log was updated.
+ * <p>Accepts a boolean which indicates if the dirty check should be skipped.
  */
-public class RefreshAnnotatedCallLogWorker implements Worker<Boolean, Boolean> {
+public class RefreshAnnotatedCallLogWorker implements Worker<Boolean, Void> {
 
   private final Context appContext;
   private final DataSources dataSources;
 
   @Inject
-  public RefreshAnnotatedCallLogWorker(Context appContext, DataSources dataSources) {
+  RefreshAnnotatedCallLogWorker(@ApplicationContext Context appContext, DataSources dataSources) {
     this.appContext = appContext;
     this.dataSources = dataSources;
   }
 
   @Override
-  public Boolean doInBackground(Boolean skipDirtyCheck) {
-    LogUtil.enterBlock("RefreshAnnotatedCallLogWorker.doInBackgroundFallible");
+  public Void doInBackground(Boolean skipDirtyCheck)
+      throws RemoteException, OperationApplicationException {
+    LogUtil.enterBlock("RefreshAnnotatedCallLogWorker.doInBackground");
 
     long startTime = System.currentTimeMillis();
-    boolean annotatedCallLogUpdated = checkDirtyAndRebuildIfNecessary(appContext, skipDirtyCheck);
+    checkDirtyAndRebuildIfNecessary(appContext, skipDirtyCheck);
     LogUtil.i(
-        "RefreshAnnotatedCallLogWorker.doInBackgroundFallible",
-        "updated? %s, took %dms",
-        annotatedCallLogUpdated,
+        "RefreshAnnotatedCallLogWorker.doInBackground",
+        "took %dms",
         System.currentTimeMillis() - startTime);
-    return annotatedCallLogUpdated;
+    return null;
   }
 
   @WorkerThread
-  private boolean checkDirtyAndRebuildIfNecessary(Context appContext, boolean skipDirtyCheck) {
+  private void checkDirtyAndRebuildIfNecessary(Context appContext, boolean skipDirtyCheck)
+      throws RemoteException, OperationApplicationException {
     Assert.isWorkerThread();
 
     long startTime = System.currentTimeMillis();
 
     SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(appContext);
-    long lastRebuildTimeMillis =
-        sharedPreferences.getLong(CallLogFramework.PREF_LAST_REBUILD_TIMESTAMP_MILLIS, 0);
-    if (lastRebuildTimeMillis == 0) {
-      LogUtil.i(
-          "RefreshAnnotatedCallLogWorker.checkDirtyAndRebuildIfNecessary",
-          "annotated call log has never been built, marking it dirty");
-    }
+    // Default to true. If the pref doesn't exist, the annotated call log hasn't been created and
+    // we just skip isDirty checks and force a rebuild.
     boolean forceRebuildPrefValue =
-        sharedPreferences.getBoolean(CallLogFramework.PREF_FORCE_REBUILD, false);
+        sharedPreferences.getBoolean(CallLogFramework.PREF_FORCE_REBUILD, true);
     if (forceRebuildPrefValue) {
       LogUtil.i(
           "RefreshAnnotatedCallLogWorker.checkDirtyAndRebuildIfNecessary",
-          "call log has been marked dirty");
+          "annotated call log has been marked dirty or does not exist");
     }
 
-    boolean isDirty =
-        lastRebuildTimeMillis == 0
-            || skipDirtyCheck
-            || forceRebuildPrefValue
-            || isDirty(appContext);
+    boolean isDirty = skipDirtyCheck || forceRebuildPrefValue || isDirty(appContext);
+
     LogUtil.i(
         "RefreshAnnotatedCallLogWorker.checkDirtyAndRebuildIfNecessary",
         "isDirty took: %dms",
         System.currentTimeMillis() - startTime);
     if (isDirty) {
       startTime = System.currentTimeMillis();
-      rebuild(appContext, lastRebuildTimeMillis);
+      rebuild(appContext);
       LogUtil.i(
           "RefreshAnnotatedCallLogWorker.checkDirtyAndRebuildIfNecessary",
           "rebuild took: %dms",
           System.currentTimeMillis() - startTime);
-      return true; // Annotated call log was updated.
     }
-    return false; // Annotated call log was not updated.
   }
 
   @WorkerThread
@@ -129,52 +122,58 @@
 
   @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
   @WorkerThread
-  private void rebuild(Context appContext, long lastRebuildTimeMillis) {
+  private void rebuild(Context appContext) throws RemoteException, OperationApplicationException {
     Assert.isWorkerThread();
 
-    // TODO: Start a transaction?
-    try (SQLiteDatabase database = AnnotatedCallLog.getWritableDatabase(appContext)) {
+    CallLogMutations mutations = new CallLogMutations();
 
-      CallLogMutations mutations = new CallLogMutations();
+    // System call log data source must go first!
+    CallLogDataSource systemCallLogDataSource = dataSources.getSystemCallLogDataSource();
+    String dataSourceName = getName(systemCallLogDataSource);
+    LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "filling %s", dataSourceName);
+    long startTime = System.currentTimeMillis();
+    systemCallLogDataSource.fill(appContext, mutations);
+    LogUtil.i(
+        "RefreshAnnotatedCallLogWorker.rebuild",
+        "%s.fill took: %dms",
+        dataSourceName,
+        System.currentTimeMillis() - startTime);
 
-      // System call log data source must go first!
-      CallLogDataSource systemCallLogDataSource = dataSources.getSystemCallLogDataSource();
-      String dataSourceName = getName(systemCallLogDataSource);
+    for (CallLogDataSource dataSource : dataSources.getDataSourcesExcludingSystemCallLog()) {
+      dataSourceName = getName(dataSource);
       LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "filling %s", dataSourceName);
-      long startTime = System.currentTimeMillis();
-      systemCallLogDataSource.fill(appContext, database, lastRebuildTimeMillis, mutations);
+      startTime = System.currentTimeMillis();
+      dataSource.fill(appContext, mutations);
       LogUtil.i(
-          "RefreshAnnotatedCallLogWorker.rebuild",
+          "CallLogFramework.rebuild",
           "%s.fill took: %dms",
           dataSourceName,
           System.currentTimeMillis() - startTime);
+    }
+    LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "applying mutations to database");
+    startTime = System.currentTimeMillis();
+    CallLogDatabaseComponent.get(appContext)
+        .mutationApplier()
+        .applyToDatabase(mutations, appContext);
+    LogUtil.i(
+        "RefreshAnnotatedCallLogWorker.rebuild",
+        "applyToDatabase took: %dms",
+        System.currentTimeMillis() - startTime);
 
-      for (CallLogDataSource dataSource : dataSources.getDataSourcesExcludingSystemCallLog()) {
-        dataSourceName = getName(dataSource);
-        LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "filling %s", dataSourceName);
-        startTime = System.currentTimeMillis();
-        dataSource.fill(appContext, database, lastRebuildTimeMillis, mutations);
-        LogUtil.i(
-            "CallLogFramework.rebuild",
-            "%s.fill took: %dms",
-            dataSourceName,
-            System.currentTimeMillis() - startTime);
-      }
-      LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "applying mutations to database");
+    for (CallLogDataSource dataSource : dataSources.getDataSourcesIncludingSystemCallLog()) {
+      dataSourceName = getName(dataSource);
+      LogUtil.i("RefreshAnnotatedCallLogWorker.rebuild", "onSuccessfulFill'ing %s", dataSourceName);
       startTime = System.currentTimeMillis();
-      mutations.applyToDatabase(database);
+      dataSource.onSuccessfulFill(appContext);
       LogUtil.i(
-          "RefreshAnnotatedCallLogWorker.rebuild",
-          "applyToDatabase took: %dms",
+          "CallLogFramework.rebuild",
+          "%s.onSuccessfulFill took: %dms",
+          dataSourceName,
           System.currentTimeMillis() - startTime);
     }
 
     SharedPreferences sharedPreferences = PreferenceManager.getDefaultSharedPreferences(appContext);
-    sharedPreferences
-        .edit()
-        .putBoolean(CallLogFramework.PREF_FORCE_REBUILD, false)
-        .putLong(CallLogFramework.PREF_LAST_REBUILD_TIMESTAMP_MILLIS, System.currentTimeMillis())
-        .commit();
+    sharedPreferences.edit().putBoolean(CallLogFramework.PREF_FORCE_REBUILD, false).apply();
   }
 
   private static String getName(CallLogDataSource dataSource) {
diff --git a/java/com/android/dialer/calllog/database/AndroidManifest.xml b/java/com/android/dialer/calllog/database/AndroidManifest.xml
new file mode 100644
index 0000000..396a6d9
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/AndroidManifest.xml
@@ -0,0 +1,28 @@
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.android.dialer.calllog.database">
+
+  <application>
+
+    <provider
+        android:authorities="com.android.dialer.annotatedcalllog"
+        android:exported="false"
+        android:multiprocess="false"
+        android:name=".AnnotatedCallLogContentProvider"/>
+
+  </application>
+</manifest>
diff --git a/java/com/android/dialer/calllog/database/AnnotatedCallLog.java b/java/com/android/dialer/calllog/database/AnnotatedCallLog.java
deleted file mode 100644
index 7dca44a..0000000
--- a/java/com/android/dialer/calllog/database/AnnotatedCallLog.java
+++ /dev/null
@@ -1,53 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.dialer.calllog.database;
-
-import android.content.Context;
-import android.database.sqlite.SQLiteDatabase;
-import android.support.annotation.WorkerThread;
-import com.android.dialer.common.Assert;
-
-/** Static methods and constants for interacting with the annotated call log table. */
-public final class AnnotatedCallLog {
-
-  private static final String DATABASE_NAME = "annotated_call_log.db";
-
-  public static final String TABLE_NAME = "AnnotatedCallLog";
-
-  /** Column names for the annotated call log table. */
-  public static final class Columns {
-    public static final String ID = "_id";
-    public static final String TIMESTAMP = "timestamp";
-    public static final String CONTACT_NAME = "contact_name";
-  }
-
-  private AnnotatedCallLog() {}
-
-  @WorkerThread
-  public static SQLiteDatabase getWritableDatabase(Context appContext) {
-    Assert.isWorkerThread();
-
-    return new AnnotatedCallLogDatabaseHelper(appContext, DATABASE_NAME).getWritableDatabase();
-  }
-
-  @WorkerThread
-  public static SQLiteDatabase getReadableDatabase(Context appContext) {
-    Assert.isWorkerThread();
-
-    return new AnnotatedCallLogDatabaseHelper(appContext, DATABASE_NAME).getReadableDatabase();
-  }
-}
diff --git a/java/com/android/dialer/calllog/database/AnnotatedCallLogContentProvider.java b/java/com/android/dialer/calllog/database/AnnotatedCallLogContentProvider.java
new file mode 100644
index 0000000..30aa2bf
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/AnnotatedCallLogContentProvider.java
@@ -0,0 +1,331 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.calllog.database;
+
+import android.annotation.TargetApi;
+import android.content.ContentProvider;
+import android.content.ContentProviderOperation;
+import android.content.ContentProviderResult;
+import android.content.ContentUris;
+import android.content.ContentValues;
+import android.content.OperationApplicationException;
+import android.content.UriMatcher;
+import android.database.Cursor;
+import android.database.sqlite.SQLiteDatabase;
+import android.database.sqlite.SQLiteQueryBuilder;
+import android.net.Uri;
+import android.os.Build;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.CoalescedAnnotatedCallLog;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import java.util.ArrayList;
+
+/** {@link ContentProvider} for the annotated call log. */
+public class AnnotatedCallLogContentProvider extends ContentProvider {
+
+  /**
+   * We sometimes run queries where we potentially pass every ID into a where clause using the
+   * (?,?,?,...) syntax. The maximum number of host parameters is 999, so that's the maximum size
+   * this table can be. See https://www.sqlite.org/limits.html for more details.
+   */
+  private static final int MAX_ROWS = 999;
+
+  private static final int ANNOTATED_CALL_LOG_TABLE_CODE = 1;
+  private static final int ANNOTATED_CALL_LOG_TABLE_ID_CODE = 2;
+  private static final int COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE = 3;
+
+  private static final UriMatcher uriMatcher = new UriMatcher(UriMatcher.NO_MATCH);
+
+  static {
+    uriMatcher.addURI(
+        AnnotatedCallLogContract.AUTHORITY, AnnotatedCallLog.TABLE, ANNOTATED_CALL_LOG_TABLE_CODE);
+    uriMatcher.addURI(
+        AnnotatedCallLogContract.AUTHORITY,
+        AnnotatedCallLog.TABLE + "/#",
+        ANNOTATED_CALL_LOG_TABLE_ID_CODE);
+    uriMatcher.addURI(
+        AnnotatedCallLogContract.AUTHORITY,
+        CoalescedAnnotatedCallLog.TABLE,
+        COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE);
+  }
+
+  private AnnotatedCallLogDatabaseHelper databaseHelper;
+  private Coalescer coalescer;
+
+  private final ThreadLocal<Boolean> applyingBatch = new ThreadLocal<>();
+
+  /** Ensures that only a single notification is generated from {@link #applyBatch(ArrayList)}. */
+  private boolean isApplyingBatch() {
+    return applyingBatch.get() != null && applyingBatch.get();
+  }
+
+  @Override
+  public boolean onCreate() {
+    databaseHelper = new AnnotatedCallLogDatabaseHelper(getContext(), MAX_ROWS);
+    coalescer = CallLogDatabaseComponent.get(getContext()).coalescer();
+    return true;
+  }
+
+  @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
+  @Nullable
+  @Override
+  public Cursor query(
+      @NonNull Uri uri,
+      @Nullable String[] projection,
+      @Nullable String selection,
+      @Nullable String[] selectionArgs,
+      @Nullable String sortOrder) {
+    SQLiteDatabase db = databaseHelper.getReadableDatabase();
+    SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
+    queryBuilder.setTables(AnnotatedCallLog.TABLE);
+    int match = uriMatcher.match(uri);
+    switch (match) {
+      case ANNOTATED_CALL_LOG_TABLE_ID_CODE:
+        queryBuilder.appendWhere(AnnotatedCallLog._ID + "=" + ContentUris.parseId(uri));
+        // fall through
+      case ANNOTATED_CALL_LOG_TABLE_CODE:
+        Cursor cursor =
+            queryBuilder.query(db, projection, selection, selectionArgs, null, null, sortOrder);
+        if (cursor != null) {
+          cursor.setNotificationUri(
+              getContext().getContentResolver(), AnnotatedCallLog.CONTENT_URI);
+        } else {
+          LogUtil.w("AnnotatedCallLogContentProvider.query", "cursor was null");
+        }
+        return cursor;
+      case COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE:
+        Assert.checkArgument(projection == null, "projection not supported for coalesced call log");
+        Assert.checkArgument(selection == null, "selection not supported for coalesced call log");
+        Assert.checkArgument(
+            selectionArgs == null, "selection args not supported for coalesced call log");
+        Assert.checkArgument(sortOrder == null, "sort order not supported for coalesced call log");
+        try (Cursor allAnnotatedCallLogRows =
+            queryBuilder.query(
+                db, null, null, null, null, null, AnnotatedCallLog.TIMESTAMP + " DESC")) {
+          Cursor coalescedRows = coalescer.coalesce(allAnnotatedCallLogRows);
+          coalescedRows.setNotificationUri(
+              getContext().getContentResolver(), CoalescedAnnotatedCallLog.CONTENT_URI);
+          return coalescedRows;
+        }
+      default:
+        throw new IllegalArgumentException("Unknown uri: " + uri);
+    }
+  }
+
+  @Nullable
+  @Override
+  public String getType(@NonNull Uri uri) {
+    return AnnotatedCallLog.CONTENT_ITEM_TYPE;
+  }
+
+  @Nullable
+  @Override
+  public Uri insert(@NonNull Uri uri, @Nullable ContentValues values) {
+    // Javadoc states values is not nullable, even though it is annotated as such (b/38123194)!
+    Assert.checkArgument(values != null);
+
+    SQLiteDatabase database = databaseHelper.getWritableDatabase();
+    int match = uriMatcher.match(uri);
+    switch (match) {
+      case ANNOTATED_CALL_LOG_TABLE_CODE:
+        Assert.checkArgument(
+            values.get(AnnotatedCallLog._ID) != null, "You must specify an _ID when inserting");
+        break;
+      case ANNOTATED_CALL_LOG_TABLE_ID_CODE:
+        Long idFromUri = ContentUris.parseId(uri);
+        Long idFromValues = values.getAsLong(AnnotatedCallLog._ID);
+        Assert.checkArgument(
+            idFromValues == null || idFromValues.equals(idFromUri),
+            "_ID from values %d does not match ID from URI: %s",
+            idFromValues,
+            uri);
+        if (idFromValues == null) {
+          values.put(AnnotatedCallLog._ID, idFromUri);
+        }
+        break;
+      case COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE:
+        throw new UnsupportedOperationException("coalesced call log does not support inserting");
+      default:
+        throw new IllegalArgumentException("Unknown uri: " + uri);
+    }
+    long id = database.insert(AnnotatedCallLog.TABLE, null, values);
+    if (id < 0) {
+      LogUtil.w(
+          "AnnotatedCallLogContentProvider.insert",
+          "error inserting row with id: %d",
+          values.get(AnnotatedCallLog._ID));
+      return null;
+    }
+    Uri insertedUri = ContentUris.withAppendedId(AnnotatedCallLog.CONTENT_URI, id);
+    if (!isApplyingBatch()) {
+      notifyChange(insertedUri);
+    }
+    return insertedUri;
+  }
+
+  @Override
+  public int delete(
+      @NonNull Uri uri, @Nullable String selection, @Nullable String[] selectionArgs) {
+    SQLiteDatabase database = databaseHelper.getWritableDatabase();
+    final int match = uriMatcher.match(uri);
+    switch (match) {
+      case ANNOTATED_CALL_LOG_TABLE_CODE:
+        break;
+      case ANNOTATED_CALL_LOG_TABLE_ID_CODE:
+        Assert.checkArgument(selection == null, "Do not specify selection when deleting by ID");
+        Assert.checkArgument(
+            selectionArgs == null, "Do not specify selection args when deleting by ID");
+        long id = ContentUris.parseId(uri);
+        Assert.checkArgument(id != -1, "error parsing id from uri %s", uri);
+        selection = getSelectionWithId(id);
+        break;
+      case COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE:
+        throw new UnsupportedOperationException("coalesced call log does not support deleting");
+      default:
+        throw new IllegalArgumentException("Unknown uri: " + uri);
+    }
+    int rows = database.delete(AnnotatedCallLog.TABLE, selection, selectionArgs);
+    if (rows > 0) {
+      if (!isApplyingBatch()) {
+        notifyChange(uri);
+      }
+    } else {
+      LogUtil.w("AnnotatedCallLogContentProvider.delete", "no rows deleted");
+    }
+    return rows;
+  }
+
+  @Override
+  public int update(
+      @NonNull Uri uri,
+      @Nullable ContentValues values,
+      @Nullable String selection,
+      @Nullable String[] selectionArgs) {
+    // Javadoc states values is not nullable, even though it is annotated as such (b/38123194)!
+    Assert.checkArgument(values != null);
+
+    SQLiteDatabase database = databaseHelper.getWritableDatabase();
+    int match = uriMatcher.match(uri);
+    switch (match) {
+      case ANNOTATED_CALL_LOG_TABLE_CODE:
+        break;
+      case ANNOTATED_CALL_LOG_TABLE_ID_CODE:
+        Assert.checkArgument(
+            !values.containsKey(AnnotatedCallLog._ID), "Do not specify _ID when updating by ID");
+        Assert.checkArgument(selection == null, "Do not specify selection when updating by ID");
+        Assert.checkArgument(
+            selectionArgs == null, "Do not specify selection args when updating by ID");
+        selection = getSelectionWithId(ContentUris.parseId(uri));
+        break;
+      case COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE:
+        throw new UnsupportedOperationException("coalesced call log does not support updating");
+      default:
+        throw new IllegalArgumentException("Unknown uri: " + uri);
+    }
+    int rows = database.update(AnnotatedCallLog.TABLE, values, selection, selectionArgs);
+    if (rows > 0) {
+      if (!isApplyingBatch()) {
+        notifyChange(uri);
+      }
+    } else {
+      LogUtil.w("AnnotatedCallLogContentProvider.update", "no rows updated");
+    }
+    return rows;
+  }
+
+  /**
+   * {@inheritDoc}
+   *
+   * <p>Note: When applyBatch is used with the AnnotatedCallLog, only a single notification for the
+   * content URI is generated, not individual notifications for each affected URI.
+   */
+  @NonNull
+  @Override
+  public ContentProviderResult[] applyBatch(@NonNull ArrayList<ContentProviderOperation> operations)
+      throws OperationApplicationException {
+    ContentProviderResult[] results = new ContentProviderResult[operations.size()];
+    if (operations.isEmpty()) {
+      return results;
+    }
+
+    SQLiteDatabase database = databaseHelper.getWritableDatabase();
+    try {
+      applyingBatch.set(true);
+      database.beginTransaction();
+      for (int i = 0; i < operations.size(); i++) {
+        ContentProviderOperation operation = operations.get(i);
+        int match = uriMatcher.match(operation.getUri());
+        switch (match) {
+          case ANNOTATED_CALL_LOG_TABLE_CODE:
+          case ANNOTATED_CALL_LOG_TABLE_ID_CODE:
+            // These are allowed values, continue.
+            break;
+          case COALESCED_ANNOTATED_CALL_LOG_TABLE_CODE:
+            throw new UnsupportedOperationException(
+                "coalesced call log does not support applyBatch");
+          default:
+            throw new IllegalArgumentException("Unknown uri: " + operation.getUri());
+        }
+        ContentProviderResult result = operation.apply(this, results, i);
+        if (operations.get(i).isInsert()) {
+          if (result.uri == null) {
+            throw new OperationApplicationException("error inserting row");
+          }
+        } else if (result.count == 0) {
+          /*
+           * The batches built by MutationApplier happen to contain operations in order of:
+           *
+           * 1. Inserts
+           * 2. Updates
+           * 3. Deletes
+           *
+           * Let's say the last row in the table is row Z, and MutationApplier wishes to update it,
+           * as well as insert row A. When row A gets inserted, row Z will be deleted via the
+           * trigger if the table is full. Then later, when we try to process the update for row Z,
+           * it won't exist.
+           */
+          LogUtil.w(
+              "AnnotatedCallLogContentProvider.applyBatch",
+              "update or delete failed, possibly because row got cleaned up");
+        }
+        results[i] = result;
+      }
+      database.setTransactionSuccessful();
+    } finally {
+      applyingBatch.set(false);
+      database.endTransaction();
+    }
+    notifyChange(AnnotatedCallLog.CONTENT_URI);
+    return results;
+  }
+
+  private String getSelectionWithId(long id) {
+    return AnnotatedCallLog._ID + "=" + id;
+  }
+
+  private void notifyChange(Uri uri) {
+    getContext().getContentResolver().notifyChange(uri, null);
+    // Any time the annotated call log changes, we need to also notify observers of the
+    // CoalescedAnnotatedCallLog, since that is just a massaged in-memory view of the real annotated
+    // call log table.
+    getContext().getContentResolver().notifyChange(CoalescedAnnotatedCallLog.CONTENT_URI, null);
+  }
+}
diff --git a/java/com/android/dialer/calllog/database/AnnotatedCallLogDatabaseHelper.java b/java/com/android/dialer/calllog/database/AnnotatedCallLogDatabaseHelper.java
index 7b28e55..887dfcb 100644
--- a/java/com/android/dialer/calllog/database/AnnotatedCallLogDatabaseHelper.java
+++ b/java/com/android/dialer/calllog/database/AnnotatedCallLogDatabaseHelper.java
@@ -16,36 +16,58 @@
 
 package com.android.dialer.calllog.database;
 
-import static com.android.dialer.calllog.database.AnnotatedCallLog.Columns.CONTACT_NAME;
-import static com.android.dialer.calllog.database.AnnotatedCallLog.Columns.ID;
-import static com.android.dialer.calllog.database.AnnotatedCallLog.Columns.TIMESTAMP;
-
 import android.content.Context;
 import android.database.sqlite.SQLiteDatabase;
 import android.database.sqlite.SQLiteOpenHelper;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
 import com.android.dialer.common.LogUtil;
+import java.util.Locale;
 
 /** {@link SQLiteOpenHelper} for the AnnotatedCallLog database. */
 class AnnotatedCallLogDatabaseHelper extends SQLiteOpenHelper {
+  private final int maxRows;
 
-  AnnotatedCallLogDatabaseHelper(Context appContext, String databaseName) {
-    super(appContext, databaseName, null, 1);
+  AnnotatedCallLogDatabaseHelper(Context appContext, int maxRows) {
+    super(appContext, "annotated_call_log.db", null, 1);
+    this.maxRows = maxRows;
   }
 
-  private static final String CREATE_SQL =
+  private static final String CREATE_TABLE_SQL =
       new StringBuilder()
-          .append("create table if not exists " + AnnotatedCallLog.TABLE_NAME + " (")
-          .append(ID + " integer primary key, ")
-          .append(TIMESTAMP + " integer, ")
-          .append(CONTACT_NAME + " string")
+          .append("create table if not exists " + AnnotatedCallLog.TABLE + " (")
+          .append(AnnotatedCallLog._ID + " integer primary key, ")
+          .append(AnnotatedCallLog.TIMESTAMP + " integer, ")
+          .append(AnnotatedCallLog.CONTACT_NAME + " string, ")
+          .append(AnnotatedCallLog.NUMBER + " blob")
           .append(");")
           .toString();
 
+  /** Deletes all but the first maxRows rows (by timestamp) to keep the table a manageable size. */
+  private static final String CREATE_TRIGGER_SQL =
+      "create trigger delete_old_rows after insert on "
+          + AnnotatedCallLog.TABLE
+          + " when (select count(*) from "
+          + AnnotatedCallLog.TABLE
+          + ") > %d"
+          + " begin delete from "
+          + AnnotatedCallLog.TABLE
+          + " where "
+          + AnnotatedCallLog._ID
+          + " in (select "
+          + AnnotatedCallLog._ID
+          + " from "
+          + AnnotatedCallLog.TABLE
+          + " order by timestamp limit (select count(*)-%d"
+          + " from "
+          + AnnotatedCallLog.TABLE
+          + " )); end;";
+
   @Override
   public void onCreate(SQLiteDatabase db) {
     LogUtil.enterBlock("AnnotatedCallLogDatabaseHelper.onCreate");
     long startTime = System.currentTimeMillis();
-    db.execSQL(CREATE_SQL);
+    db.execSQL(CREATE_TABLE_SQL);
+    db.execSQL(String.format(Locale.US, CREATE_TRIGGER_SQL, maxRows, maxRows));
     // TODO: Consider logging impression.
     LogUtil.i(
         "AnnotatedCallLogDatabaseHelper.onCreate",
diff --git a/java/com/android/dialer/calllog/database/CallLogDatabaseComponent.java b/java/com/android/dialer/calllog/database/CallLogDatabaseComponent.java
new file mode 100644
index 0000000..ede4691
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/CallLogDatabaseComponent.java
@@ -0,0 +1,40 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.dialer.calllog.database;
+
+import android.content.Context;
+import com.android.dialer.inject.HasRootComponent;
+import dagger.Subcomponent;
+
+/** Dagger component for database package. */
+@Subcomponent
+public abstract class CallLogDatabaseComponent {
+
+  public abstract Coalescer coalescer();
+
+  public abstract MutationApplier mutationApplier();
+
+  public static CallLogDatabaseComponent get(Context context) {
+    return ((CallLogDatabaseComponent.HasComponent)
+            ((HasRootComponent) context.getApplicationContext()).component())
+        .callLogDatabaseComponent();
+  }
+
+  /** Used to refer to the root application component. */
+  public interface HasComponent {
+    CallLogDatabaseComponent callLogDatabaseComponent();
+  }
+}
diff --git a/java/com/android/dialer/calllog/database/CallLogMutations.java b/java/com/android/dialer/calllog/database/CallLogMutations.java
deleted file mode 100644
index ec020c6..0000000
--- a/java/com/android/dialer/calllog/database/CallLogMutations.java
+++ /dev/null
@@ -1,58 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.dialer.calllog.database;
-
-import android.content.ContentValues;
-import android.database.sqlite.SQLiteDatabase;
-import android.support.annotation.WorkerThread;
-import android.util.ArrayMap;
-import android.util.ArraySet;
-import com.android.dialer.common.Assert;
-
-/** A collection of mutations to the annotated call log. */
-public final class CallLogMutations {
-
-  private final ArrayMap<Integer, ContentValues> inserts = new ArrayMap<>();
-  private final ArrayMap<Integer, ContentValues> updates = new ArrayMap<>();
-  private final ArraySet<Integer> deletes = new ArraySet<>();
-
-  /** @param contentValues an entire row not including the ID */
-  public void insert(int id, ContentValues contentValues) {
-    inserts.put(id, contentValues);
-  }
-
-  /** @param contentValues the specific columns to update, not including the ID. */
-  public void update(int id, ContentValues contentValues) {
-    // TODO: Consider merging automatically.
-    updates.put(id, contentValues);
-  }
-
-  public void delete(int id) {
-    deletes.add(id);
-  }
-
-  public boolean isEmpty() {
-    return inserts.isEmpty() && updates.isEmpty() && deletes.isEmpty();
-  }
-
-  @WorkerThread
-  public void applyToDatabase(SQLiteDatabase writableDatabase) {
-    Assert.isWorkerThread();
-
-    // TODO: Implementation.
-  }
-}
diff --git a/java/com/android/dialer/calllog/database/Coalescer.java b/java/com/android/dialer/calllog/database/Coalescer.java
new file mode 100644
index 0000000..5683687
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/Coalescer.java
@@ -0,0 +1,180 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.dialer.calllog.database;
+
+import android.content.ContentValues;
+import android.database.Cursor;
+import android.database.MatrixCursor;
+import android.support.annotation.NonNull;
+import android.support.annotation.WorkerThread;
+import com.android.dialer.DialerPhoneNumber;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.CoalescedAnnotatedCallLog;
+import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.DataSources;
+import com.android.dialer.common.Assert;
+import com.android.dialer.phonenumberproto.DialerPhoneNumberUtil;
+import com.google.i18n.phonenumbers.PhoneNumberUtil;
+import com.google.protobuf.InvalidProtocolBufferException;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import javax.inject.Inject;
+
+/**
+ * Coalesces call log rows by combining some adjacent rows.
+ *
+ * <p>Applies the business which logic which determines which adjacent rows should be coalasced, and
+ * then delegates to each data source to determine how individual columns should be aggregated.
+ */
+public class Coalescer {
+
+  private final DataSources dataSources;
+
+  @Inject
+  Coalescer(DataSources dataSources) {
+    this.dataSources = dataSources;
+  }
+
+  /**
+   * Reads the entire {@link AnnotatedCallLog} database into memory from the provided {@code
+   * allAnnotatedCallLog} parameter and then builds and returns a new {@link MatrixCursor} which is
+   * the result of combining adjacent rows which should be collapsed for display purposes.
+   *
+   * @param allAnnotatedCallLogRowsSortedByTimestampDesc all {@link AnnotatedCallLog} rows, sorted
+   *     by timestamp descending
+   * @return a new {@link MatrixCursor} containing the {@link CoalescedAnnotatedCallLog} rows to
+   *     display
+   */
+  @WorkerThread
+  @NonNull
+  Cursor coalesce(@NonNull Cursor allAnnotatedCallLogRowsSortedByTimestampDesc) {
+    Assert.isWorkerThread();
+
+    // Note: This method relies on rowsShouldBeCombined to determine which rows should be combined,
+    // but delegates to data sources to actually aggregate column values.
+
+    DialerPhoneNumberUtil dialerPhoneNumberUtil =
+        new DialerPhoneNumberUtil(PhoneNumberUtil.getInstance());
+
+    MatrixCursor allCoalescedRowsMatrixCursor =
+        new MatrixCursor(
+            CoalescedAnnotatedCallLog.ALL_COLUMNS,
+            Assert.isNotNull(allAnnotatedCallLogRowsSortedByTimestampDesc).getCount());
+
+    if (allAnnotatedCallLogRowsSortedByTimestampDesc.moveToFirst()) {
+      int coalescedRowId = 0;
+
+      List<ContentValues> currentRowGroup = new ArrayList<>();
+
+      do {
+        ContentValues currentRow =
+            cursorRowToContentValues(allAnnotatedCallLogRowsSortedByTimestampDesc);
+
+        if (currentRowGroup.isEmpty()) {
+          currentRowGroup.add(currentRow);
+          continue;
+        }
+
+        ContentValues previousRow = currentRowGroup.get(currentRowGroup.size() - 1);
+
+        if (!rowsShouldBeCombined(dialerPhoneNumberUtil, previousRow, currentRow)) {
+          ContentValues coalescedRow = coalesceRowsForAllDataSources(currentRowGroup);
+          coalescedRow.put(CoalescedAnnotatedCallLog.NUMBER_CALLS, currentRowGroup.size());
+          addContentValuesToMatrixCursor(
+              coalescedRow, allCoalescedRowsMatrixCursor, coalescedRowId++);
+          currentRowGroup.clear();
+        }
+        currentRowGroup.add(currentRow);
+      } while (allAnnotatedCallLogRowsSortedByTimestampDesc.moveToNext());
+
+      // Deal with leftover rows.
+      ContentValues coalescedRow = coalesceRowsForAllDataSources(currentRowGroup);
+      coalescedRow.put(CoalescedAnnotatedCallLog.NUMBER_CALLS, currentRowGroup.size());
+      addContentValuesToMatrixCursor(coalescedRow, allCoalescedRowsMatrixCursor, coalescedRowId);
+    }
+    return allCoalescedRowsMatrixCursor;
+  }
+
+  private static ContentValues cursorRowToContentValues(Cursor cursor) {
+    ContentValues values = new ContentValues();
+    String[] columns = cursor.getColumnNames();
+    int length = columns.length;
+    for (int i = 0; i < length; i++) {
+      if (cursor.getType(i) == Cursor.FIELD_TYPE_BLOB) {
+        values.put(columns[i], cursor.getBlob(i));
+      } else {
+        values.put(columns[i], cursor.getString(i));
+      }
+    }
+    return values;
+  }
+
+  /**
+   * @param row1 a row from {@link AnnotatedCallLog}
+   * @param row2 a row from {@link AnnotatedCallLog}
+   */
+  private static boolean rowsShouldBeCombined(
+      DialerPhoneNumberUtil dialerPhoneNumberUtil, ContentValues row1, ContentValues row2) {
+    // TODO: Real implementation.
+    DialerPhoneNumber number1;
+    DialerPhoneNumber number2;
+    try {
+      number1 = DialerPhoneNumber.parseFrom(row1.getAsByteArray(AnnotatedCallLog.NUMBER));
+      number2 = DialerPhoneNumber.parseFrom(row2.getAsByteArray(AnnotatedCallLog.NUMBER));
+    } catch (InvalidProtocolBufferException e) {
+      throw Assert.createAssertionFailException("error parsing DialerPhoneNumber proto", e);
+    }
+
+    if (!number1.hasDialerInternalPhoneNumber() && !number2.hasDialerInternalPhoneNumber()) {
+      // Empty numbers should not be combined.
+      return false;
+    }
+
+    if (!number1.hasDialerInternalPhoneNumber() || !number2.hasDialerInternalPhoneNumber()) {
+      // An empty number should not be combined with a non-empty number.
+      return false;
+    }
+    return dialerPhoneNumberUtil.isExactMatch(number1, number2);
+  }
+
+  /**
+   * Delegates to data sources to aggregate individual columns to create a new coalesced row.
+   *
+   * @param individualRows {@link AnnotatedCallLog} rows sorted by timestamp descending
+   * @return a {@link CoalescedAnnotatedCallLog} row
+   */
+  private ContentValues coalesceRowsForAllDataSources(List<ContentValues> individualRows) {
+    ContentValues coalescedValues = new ContentValues();
+    for (CallLogDataSource dataSource : dataSources.getDataSourcesIncludingSystemCallLog()) {
+      coalescedValues.putAll(dataSource.coalesce(individualRows));
+    }
+    return coalescedValues;
+  }
+
+  /**
+   * @param contentValues a {@link CoalescedAnnotatedCallLog} row
+   * @param matrixCursor represents {@link CoalescedAnnotatedCallLog}
+   */
+  private static void addContentValuesToMatrixCursor(
+      ContentValues contentValues, MatrixCursor matrixCursor, int rowId) {
+    MatrixCursor.RowBuilder rowBuilder = matrixCursor.newRow();
+    rowBuilder.add(CoalescedAnnotatedCallLog._ID, rowId);
+    for (Map.Entry<String, Object> entry : contentValues.valueSet()) {
+      rowBuilder.add(entry.getKey(), entry.getValue());
+    }
+  }
+}
diff --git a/java/com/android/dialer/calllog/database/MutationApplier.java b/java/com/android/dialer/calllog/database/MutationApplier.java
new file mode 100644
index 0000000..21c8a50
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/MutationApplier.java
@@ -0,0 +1,105 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.dialer.calllog.database;
+
+import android.content.ContentProviderOperation;
+import android.content.ContentUris;
+import android.content.ContentValues;
+import android.content.Context;
+import android.content.OperationApplicationException;
+import android.os.RemoteException;
+import android.support.annotation.WorkerThread;
+import android.text.TextUtils;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
+import com.android.dialer.calllog.datasources.CallLogMutations;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Map.Entry;
+import javax.inject.Inject;
+
+/** Applies {@link CallLogMutations} to the annotated call log. */
+public class MutationApplier {
+
+  @Inject
+  MutationApplier() {}
+
+  /** Applies the provided {@link CallLogMutations} to the annotated call log. */
+  @WorkerThread
+  public void applyToDatabase(CallLogMutations mutations, Context appContext)
+      throws RemoteException, OperationApplicationException {
+    Assert.isWorkerThread();
+
+    if (mutations.isEmpty()) {
+      return;
+    }
+
+    ArrayList<ContentProviderOperation> operations = new ArrayList<>();
+
+    if (!mutations.getInserts().isEmpty()) {
+      LogUtil.i(
+          "CallLogMutations.applyToDatabase", "inserting %d rows", mutations.getInserts().size());
+      for (Entry<Long, ContentValues> entry : mutations.getInserts().entrySet()) {
+        long id = entry.getKey();
+        ContentValues contentValues = entry.getValue();
+        operations.add(
+            ContentProviderOperation.newInsert(
+                    ContentUris.withAppendedId(AnnotatedCallLog.CONTENT_URI, id))
+                .withValues(contentValues)
+                .build());
+      }
+    }
+
+    if (!mutations.getUpdates().isEmpty()) {
+      LogUtil.i(
+          "CallLogMutations.applyToDatabase", "updating %d rows", mutations.getUpdates().size());
+      for (Entry<Long, ContentValues> entry : mutations.getUpdates().entrySet()) {
+        long id = entry.getKey();
+        ContentValues contentValues = entry.getValue();
+        operations.add(
+            ContentProviderOperation.newUpdate(
+                    ContentUris.withAppendedId(AnnotatedCallLog.CONTENT_URI, id))
+                .withValues(contentValues)
+                .build());
+      }
+    }
+
+    if (!mutations.getDeletes().isEmpty()) {
+      LogUtil.i(
+          "CallLogMutations.applyToDatabase", "deleting %d rows", mutations.getDeletes().size());
+      String[] questionMarks = new String[mutations.getDeletes().size()];
+      Arrays.fill(questionMarks, "?");
+
+      String whereClause =
+          (AnnotatedCallLog._ID + " in (") + TextUtils.join(",", questionMarks) + ")";
+
+      String[] whereArgs = new String[mutations.getDeletes().size()];
+      int i = 0;
+      for (long id : mutations.getDeletes()) {
+        whereArgs[i++] = String.valueOf(id);
+      }
+
+      operations.add(
+          ContentProviderOperation.newDelete(AnnotatedCallLog.CONTENT_URI)
+              .withSelection(whereClause, whereArgs)
+              .build());
+    }
+
+    appContext.getContentResolver().applyBatch(AnnotatedCallLogContract.AUTHORITY, operations);
+  }
+}
diff --git a/java/com/android/dialer/calllog/database/contract/AnnotatedCallLogContract.java b/java/com/android/dialer/calllog/database/contract/AnnotatedCallLogContract.java
new file mode 100644
index 0000000..7f314e3
--- /dev/null
+++ b/java/com/android/dialer/calllog/database/contract/AnnotatedCallLogContract.java
@@ -0,0 +1,135 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.calllog.database.contract;
+
+import android.net.Uri;
+import android.provider.BaseColumns;
+import com.android.dialer.constants.Constants;
+import java.util.Arrays;
+
+/** Contract for the AnnotatedCallLog content provider. */
+public class AnnotatedCallLogContract {
+  public static final String AUTHORITY = Constants.get().getAnnotatedCallLogProviderAuthority();
+
+  public static final Uri CONTENT_URI = Uri.parse("content://" + AUTHORITY);
+
+  /**
+   * Columns shared by {@link AnnotatedCallLog} and {@link CoalescedAnnotatedCallLog}.
+   *
+   * <p>When adding columns be sure to update {@link #ALL_COMMON_COLUMNS}.
+   */
+  interface CommonColumns extends BaseColumns {
+
+    /**
+     * Timestamp of the entry, in milliseconds.
+     *
+     * <p>Type: INTEGER (long)
+     */
+    String TIMESTAMP = "timestamp";
+
+    /**
+     * Name to display for the entry.
+     *
+     * <p>Type: TEXT
+     */
+    String CONTACT_NAME = "contact_name";
+
+    String[] ALL_COMMON_COLUMNS = new String[] {_ID, TIMESTAMP, CONTACT_NAME};
+  }
+
+  /**
+   * AnnotatedCallLog table.
+   *
+   * <p>This contains all of the non-coalesced call log entries.
+   */
+  public static final class AnnotatedCallLog implements CommonColumns {
+
+    public static final String TABLE = "AnnotatedCallLog";
+
+    /** The content URI for this table. */
+    public static final Uri CONTENT_URI =
+        Uri.withAppendedPath(AnnotatedCallLogContract.CONTENT_URI, TABLE);
+
+    /** The MIME type of a {@link android.content.ContentProvider#getType(Uri)} single entry. */
+    public static final String CONTENT_ITEM_TYPE = "vnd.android.cursor.item/annotated_call_log";
+
+    /**
+     * The phone number called or number the call came from, encoded as a {@link
+     * com.android.dialer.DialerPhoneNumber} proto. The number may be empty if it was an incoming
+     * call and the number was unknown.
+     *
+     * <p>This column is only present in the annotated call log, and not the coalesced annotated
+     * call log. The coalesced version uses a formatted number string rather than proto bytes.
+     *
+     * <p>Type: BLOB
+     */
+    public static final String NUMBER = "number";
+  }
+
+  /**
+   * Coalesced view of the AnnotatedCallLog table.
+   *
+   * <p>This is an in-memory view of the {@link AnnotatedCallLog} with some adjacent entries
+   * collapsed.
+   *
+   * <p>When adding columns be sure to update {@link #COLUMNS_ONLY_IN_COALESCED_CALL_LOG}.
+   */
+  public static final class CoalescedAnnotatedCallLog implements CommonColumns {
+
+    public static final String TABLE = "CoalescedAnnotatedCallLog";
+
+    /** The content URI for this table. */
+    public static final Uri CONTENT_URI =
+        Uri.withAppendedPath(AnnotatedCallLogContract.CONTENT_URI, TABLE);
+
+    /** The MIME type of a {@link android.content.ContentProvider#getType(Uri)} single entry. */
+    public static final String CONTENT_ITEM_TYPE =
+        "vnd.android.cursor.item/coalesced_annotated_call_log";
+
+    /**
+     * Number of AnnotatedCallLog rows represented by this CoalescedAnnotatedCallLog row.
+     *
+     * <p>Type: INTEGER
+     */
+    public static final String NUMBER_CALLS = "number_calls";
+
+    /**
+     * The phone number formatted in a way suitable for display to the user. This value is generated
+     * on the fly when the {@link CoalescedAnnotatedCallLog} is generated.
+     *
+     * <p>Type: TEXT
+     */
+    public static final String FORMATTED_NUMBER = "formatted_number";
+
+    /**
+     * Columns that are only in the {@link CoalescedAnnotatedCallLog} but not the {@link
+     * AnnotatedCallLog}.
+     */
+    private static final String[] COLUMNS_ONLY_IN_COALESCED_CALL_LOG =
+        new String[] {NUMBER_CALLS, FORMATTED_NUMBER};
+
+    /** All columns in the {@link CoalescedAnnotatedCallLog}. */
+    public static final String[] ALL_COLUMNS =
+        concat(ALL_COMMON_COLUMNS, COLUMNS_ONLY_IN_COALESCED_CALL_LOG);
+  }
+
+  private static String[] concat(String[] first, String[] second) {
+    String[] result = Arrays.copyOf(first, first.length + second.length);
+    System.arraycopy(second, 0, result, first.length, second.length);
+    return result;
+  }
+}
diff --git a/java/com/android/dialer/calllog/datasources/CallLogDataSource.java b/java/com/android/dialer/calllog/datasources/CallLogDataSource.java
index 13d0b84..3fff3ba 100644
--- a/java/com/android/dialer/calllog/datasources/CallLogDataSource.java
+++ b/java/com/android/dialer/calllog/datasources/CallLogDataSource.java
@@ -16,13 +16,39 @@
 
 package com.android.dialer.calllog.datasources;
 
+import android.content.ContentValues;
 import android.content.Context;
-import android.database.sqlite.SQLiteDatabase;
 import android.support.annotation.MainThread;
 import android.support.annotation.WorkerThread;
-import com.android.dialer.calllog.database.CallLogMutations;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract;
+import java.util.List;
 
-/** A source of data for one or more columns in the annotated call log. */
+/**
+ * A source of data for one or more columns in the annotated call log.
+ *
+ * <p>Data sources have three lifecycle operations, which are always called on the same thread and
+ * in the same order for a particular "checkDirtyAndRebuild" cycle. However, not all operations are
+ * always invoked.
+ *
+ * <ol>
+ *   <li>{@link #isDirty(Context)}: Invoked only if the framework doesn't yet know if a rebuild is
+ *       necessary.
+ *   <li>{@link #fill(Context, CallLogMutations)}: Invoked only if the framework determined a
+ *       rebuild is necessary.
+ *   <li>{@link #onSuccessfulFill(Context)}: Invoked if and only if fill was previously called and
+ *       the mutations provided by the previous fill operation succeeded in being applied.
+ * </ol>
+ *
+ * <p>Because {@link #isDirty(Context)} is not always invoked, {@link #fill(Context,
+ * CallLogMutations)} shouldn't rely on any state saved during {@link #isDirty(Context)}. It
+ * <em>is</em> safe to assume that {@link #onSuccessfulFill(Context)} refers to the previous fill
+ * operation.
+ *
+ * <p>The same data source objects may be reused across multiple checkDirtyAndRebuild cycles, so
+ * implementors should take care to clear any internal state at the start of a new cycle.
+ *
+ * <p>{@link #coalesce(List)} may be called from any worker thread at any time.
+ */
 public interface CallLogDataSource {
 
   /**
@@ -35,6 +61,8 @@
    * <p>Most implementations of this method will rely on some sort of last modified timestamp. If it
    * is impossible for a data source to be modified without the dialer application being notified,
    * this method may immediately return false.
+   *
+   * @see CallLogDataSource class doc for complete lifecyle information
    */
   @WorkerThread
   boolean isDirty(Context appContext);
@@ -43,16 +71,39 @@
    * Computes the set of mutations necessary to update the annotated call log with respect to this
    * data source.
    *
+   * @see CallLogDataSource class doc for complete lifecyle information
    * @param mutations the set of mutations which this method should contribute to. Note that it may
    *     contain inserts from the system call log, and these inserts should be modified by each data
    *     source.
    */
   @WorkerThread
-  void fill(
-      Context appContext,
-      SQLiteDatabase readableDatabase,
-      long lastRebuildTimeMillis,
-      CallLogMutations mutations);
+  void fill(Context appContext, CallLogMutations mutations);
+
+  /**
+   * Called after database mutations have been applied to all data sources. This is useful for
+   * saving state such as the timestamp of the last row processed in an underlying database. Note
+   * that all mutations across all data sources are applied in a single transaction.
+   *
+   * @see CallLogDataSource class doc for complete lifecyle information
+   */
+  @WorkerThread
+  void onSuccessfulFill(Context appContext);
+
+  /**
+   * Combines raw annotated call log rows into a single coalesced row.
+   *
+   * <p>May be called by any worker thread at any time so implementations should take care to be
+   * threadsafe. (Ideally no state should be required to implement this.)
+   *
+   * @param individualRowsSortedByTimestampDesc group of fully populated rows from {@link
+   *     AnnotatedCallLogContract.AnnotatedCallLog} which need to be combined for display purposes.
+   *     This method should not modify this list.
+   * @return a partial {@link AnnotatedCallLogContract.CoalescedAnnotatedCallLog} row containing
+   *     only columns which this data source is responsible for, which is the result of aggregating
+   *     {@code individualRowsSortedByTimestampDesc}.
+   */
+  @WorkerThread
+  ContentValues coalesce(List<ContentValues> individualRowsSortedByTimestampDesc);
 
   @MainThread
   void registerContentObservers(
diff --git a/java/com/android/dialer/calllog/datasources/CallLogMutations.java b/java/com/android/dialer/calllog/datasources/CallLogMutations.java
new file mode 100644
index 0000000..148601d
--- /dev/null
+++ b/java/com/android/dialer/calllog/datasources/CallLogMutations.java
@@ -0,0 +1,110 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.calllog.datasources;
+
+import android.content.ContentValues;
+import android.util.ArrayMap;
+import android.util.ArraySet;
+import com.android.dialer.common.Assert;
+
+/** A collection of mutations to the annotated call log. */
+public final class CallLogMutations {
+
+  private final ArrayMap<Long, ContentValues> inserts = new ArrayMap<>();
+  private final ArrayMap<Long, ContentValues> updates = new ArrayMap<>();
+  private final ArraySet<Long> deletes = new ArraySet<>();
+
+  /**
+   * @param contentValues an entire row not including the ID
+   * @throws IllegalStateException if this {@link CallLogMutations} already contains an insert,
+   *     update, or delete with the provided id
+   */
+  public void insert(long id, ContentValues contentValues) {
+    Assert.checkArgument(!inserts.containsKey(id), "Can't insert row already scheduled for insert");
+    Assert.checkArgument(!updates.containsKey(id), "Can't insert row scheduled for update");
+    Assert.checkArgument(!deletes.contains(id), "Can't insert row scheduled for delete");
+
+    inserts.put(id, contentValues);
+  }
+
+  /**
+   * Stores a database update using the provided ID and content values. If this {@link
+   * CallLogMutations} object already contains an update with the specified ID, the existing content
+   * values are merged with the provided ones, with the provided ones overwriting the existing ones
+   * for values with the same key.
+   *
+   * @param contentValues the specific columns to update, not including the ID.
+   * @throws IllegalStateException if this {@link CallLogMutations} already contains an insert or
+   *     delete with the provided id
+   */
+  public void update(long id, ContentValues contentValues) {
+    Assert.checkArgument(!inserts.containsKey(id), "Can't update row scheduled for insert");
+    Assert.checkArgument(!deletes.contains(id), "Can't delete row scheduled for delete");
+
+    ContentValues existingContentValues = updates.get(id);
+    if (existingContentValues != null) {
+      existingContentValues.putAll(contentValues);
+    } else {
+      updates.put(id, contentValues);
+    }
+  }
+
+  /**
+   * @throws IllegalStateException if this {@link CallLogMutations} already contains an insert,
+   *     update, or delete with the provided id
+   */
+  public void delete(long id) {
+    Assert.checkArgument(!inserts.containsKey(id), "Can't delete row scheduled for insert");
+    Assert.checkArgument(!updates.containsKey(id), "Can't delete row scheduled for update");
+    Assert.checkArgument(!deletes.contains(id), "Can't delete row already scheduled for delete");
+
+    deletes.add(id);
+  }
+
+  public boolean isEmpty() {
+    return inserts.isEmpty() && updates.isEmpty() && deletes.isEmpty();
+  }
+
+  /**
+   * Get the pending inserts.
+   *
+   * @return the pending inserts where the key is the annotated call log database ID and the values
+   *     are values to be inserted (not including the ID)
+   */
+  public ArrayMap<Long, ContentValues> getInserts() {
+    return inserts;
+  }
+
+  /**
+   * Get the pending updates.
+   *
+   * @return the pending updates where the key is the annotated call log database ID and the values
+   *     are values to be updated (not including the ID)
+   */
+  public ArrayMap<Long, ContentValues> getUpdates() {
+    return updates;
+  }
+
+  /**
+   * Get the pending deletes.
+   *
+   * @return the annotated call log database IDs corresponding to the rows to be deleted
+   */
+  public ArraySet<Long> getDeletes() {
+    return deletes;
+  }
+}
diff --git a/java/com/android/dialer/calllog/DataSources.java b/java/com/android/dialer/calllog/datasources/DataSources.java
similarity index 88%
rename from java/com/android/dialer/calllog/DataSources.java
rename to java/com/android/dialer/calllog/datasources/DataSources.java
index 21d1901..911ca3f 100644
--- a/java/com/android/dialer/calllog/DataSources.java
+++ b/java/com/android/dialer/calllog/datasources/DataSources.java
@@ -14,14 +14,13 @@
  * limitations under the License
  */
 
-package com.android.dialer.calllog;
+package com.android.dialer.calllog.datasources;
 
-import com.android.dialer.calllog.datasources.CallLogDataSource;
 import com.android.dialer.calllog.datasources.systemcalllog.SystemCallLogDataSource;
 import java.util.List;
 
 /** Immutable lists of data sources used to populate the annotated call log. */
-interface DataSources {
+public interface DataSources {
 
   SystemCallLogDataSource getSystemCallLogDataSource();
 
diff --git a/java/com/android/dialer/calllog/datasources/contacts/ContactsDataSource.java b/java/com/android/dialer/calllog/datasources/contacts/ContactsDataSource.java
index 355940f..82a8523 100644
--- a/java/com/android/dialer/calllog/datasources/contacts/ContactsDataSource.java
+++ b/java/com/android/dialer/calllog/datasources/contacts/ContactsDataSource.java
@@ -16,13 +16,16 @@
 
 package com.android.dialer.calllog.datasources.contacts;
 
+import android.content.ContentValues;
 import android.content.Context;
-import android.database.sqlite.SQLiteDatabase;
 import android.support.annotation.MainThread;
 import android.support.annotation.WorkerThread;
-import com.android.dialer.calllog.database.CallLogMutations;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
 import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.CallLogMutations;
+import com.android.dialer.calllog.datasources.util.RowCombiner;
 import com.android.dialer.common.Assert;
+import java.util.List;
 import javax.inject.Inject;
 
 /** Responsible for maintaining the contacts related columns in the annotated call log. */
@@ -44,11 +47,25 @@
   @Override
   public void fill(
       Context appContext,
-      SQLiteDatabase readableDatabase,
-      long lastRebuildTimeMillis,
       CallLogMutations mutations) {
     Assert.isWorkerThread();
     // TODO: Implementation.
+    for (ContentValues contentValues : mutations.getInserts().values()) {
+      contentValues.put(AnnotatedCallLog.CONTACT_NAME, "Placeholder name");
+    }
+  }
+
+  @Override
+  public void onSuccessfulFill(Context appContext) {
+    // TODO: Implementation.
+  }
+
+  @Override
+  public ContentValues coalesce(List<ContentValues> individualRowsSortedByTimestampDesc) {
+    // TODO: Implementation.
+    return new RowCombiner(individualRowsSortedByTimestampDesc)
+        .useSingleValueString(AnnotatedCallLog.CONTACT_NAME)
+        .combine();
   }
 
   @MainThread
diff --git a/java/com/android/dialer/calllog/datasources/systemcalllog/SystemCallLogDataSource.java b/java/com/android/dialer/calllog/datasources/systemcalllog/SystemCallLogDataSource.java
index ea6663f..f206328 100644
--- a/java/com/android/dialer/calllog/datasources/systemcalllog/SystemCallLogDataSource.java
+++ b/java/com/android/dialer/calllog/datasources/systemcalllog/SystemCallLogDataSource.java
@@ -16,28 +16,54 @@
 
 package com.android.dialer.calllog.datasources.systemcalllog;
 
+import android.Manifest.permission;
+import android.annotation.TargetApi;
+import android.content.ContentValues;
 import android.content.Context;
 import android.database.ContentObserver;
-import android.database.sqlite.SQLiteDatabase;
+import android.database.Cursor;
 import android.net.Uri;
+import android.os.Build;
 import android.os.Handler;
+import android.preference.PreferenceManager;
 import android.provider.CallLog;
+import android.provider.CallLog.Calls;
 import android.support.annotation.MainThread;
+import android.support.annotation.Nullable;
+import android.support.annotation.VisibleForTesting;
 import android.support.annotation.WorkerThread;
-import com.android.dialer.calllog.database.CallLogMutations;
+import android.text.TextUtils;
+import android.util.ArraySet;
+import com.android.dialer.DialerPhoneNumber;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.AnnotatedCallLog;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.CoalescedAnnotatedCallLog;
 import com.android.dialer.calllog.datasources.CallLogDataSource;
+import com.android.dialer.calllog.datasources.CallLogMutations;
+import com.android.dialer.calllog.datasources.util.RowCombiner;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.concurrent.ThreadUtil;
+import com.android.dialer.phonenumberproto.DialerPhoneNumberUtil;
 import com.android.dialer.util.PermissionsUtil;
+import com.google.i18n.phonenumbers.PhoneNumberUtil;
+import com.google.protobuf.InvalidProtocolBufferException;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Set;
 import javax.inject.Inject;
 
 /**
  * Responsible for defining the rows in the annotated call log and maintaining the columns in it
  * which are derived from the system call log.
  */
+@SuppressWarnings("MissingPermission")
 public class SystemCallLogDataSource implements CallLogDataSource {
 
+  @VisibleForTesting
+  static final String PREF_LAST_TIMESTAMP_PROCESSED = "systemCallLogLastTimestampProcessed";
+
+  @Nullable private Long lastTimestampProcessed;
+
   @Inject
   public SystemCallLogDataSource() {}
 
@@ -47,6 +73,8 @@
       Context appContext, ContentObserverCallbacks contentObserverCallbacks) {
     Assert.isMainThread();
 
+    LogUtil.enterBlock("SystemCallLogDataSource.registerContentObservers");
+
     if (!PermissionsUtil.hasCallLogReadPermissions(appContext)) {
       LogUtil.i("SystemCallLogDataSource.registerContentObservers", "no call log permissions");
       return;
@@ -77,17 +105,222 @@
 
   @WorkerThread
   @Override
-  public void fill(
-      Context appContext,
-      SQLiteDatabase readableDatabase,
-      long lastRebuildTimeMillis,
-      CallLogMutations mutations) {
+  public void fill(Context appContext, CallLogMutations mutations) {
     Assert.isWorkerThread();
 
-    // This data source should always run first so the mutations should always be empty.
-    Assert.checkState(mutations.isEmpty());
+    lastTimestampProcessed = null;
 
-    // TODO: Implementation.
+    if (!PermissionsUtil.hasPermission(appContext, permission.READ_CALL_LOG)) {
+      LogUtil.i("SystemCallLogDataSource.fill", "no call log permissions");
+      return;
+    }
+
+    // This data source should always run first so the mutations should always be empty.
+    Assert.checkArgument(mutations.isEmpty());
+
+    Set<Long> annotatedCallLogIds = getAnnotatedCallLogIds(appContext);
+
+    LogUtil.i(
+        "SystemCallLogDataSource.fill",
+        "found %d existing annotated call log ids",
+        annotatedCallLogIds.size());
+
+    handleInsertsAndUpdates(appContext, mutations, annotatedCallLogIds);
+    handleDeletes(appContext, annotatedCallLogIds, mutations);
+  }
+
+  @WorkerThread
+  @Override
+  public void onSuccessfulFill(Context appContext) {
+    // If a fill operation was a no-op, lastTimestampProcessed could still be null.
+    if (lastTimestampProcessed != null) {
+      PreferenceManager.getDefaultSharedPreferences(appContext)
+          .edit()
+          .putLong(PREF_LAST_TIMESTAMP_PROCESSED, lastTimestampProcessed)
+          .apply();
+    }
+  }
+
+  @Override
+  public ContentValues coalesce(List<ContentValues> individualRowsSortedByTimestampDesc) {
+    // TODO: Complete implementation.
+    ContentValues coalescedValues =
+        new RowCombiner(individualRowsSortedByTimestampDesc)
+            .useMostRecentLong(AnnotatedCallLog.TIMESTAMP)
+            .combine();
+
+    // All phone numbers in the provided group should be equivalent (but could be formatted
+    // differently). Arbitrarily show the raw phone number of the most recent call.
+    DialerPhoneNumber mostRecentPhoneNumber =
+        getMostRecentPhoneNumber(individualRowsSortedByTimestampDesc);
+    coalescedValues.put(
+        CoalescedAnnotatedCallLog.FORMATTED_NUMBER,
+        mostRecentPhoneNumber.getRawInput().getNumber());
+    return coalescedValues;
+  }
+
+  private static DialerPhoneNumber getMostRecentPhoneNumber(
+      List<ContentValues> individualRowsSortedByTimestampDesc) {
+    DialerPhoneNumber dialerPhoneNumber;
+    byte[] protoBytes =
+        individualRowsSortedByTimestampDesc.get(0).getAsByteArray(AnnotatedCallLog.NUMBER);
+    try {
+      dialerPhoneNumber = DialerPhoneNumber.parseFrom(protoBytes);
+    } catch (InvalidProtocolBufferException e) {
+      throw Assert.createAssertionFailException("couldn't parse DialerPhoneNumber", e);
+    }
+    return dialerPhoneNumber;
+  }
+
+  @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
+  private void handleInsertsAndUpdates(
+      Context appContext, CallLogMutations mutations, Set<Long> existingAnnotatedCallLogIds) {
+    long previousTimestampProcessed =
+        PreferenceManager.getDefaultSharedPreferences(appContext)
+            .getLong(PREF_LAST_TIMESTAMP_PROCESSED, 0L);
+
+    DialerPhoneNumberUtil dialerPhoneNumberUtil =
+        new DialerPhoneNumberUtil(PhoneNumberUtil.getInstance());
+
+    // TODO: Really should be getting last 1000 by timestamp, not by last modified.
+    try (Cursor cursor =
+        appContext
+            .getContentResolver()
+            .query(
+                Calls.CONTENT_URI, // Excludes voicemail
+                new String[] {
+                  Calls._ID, Calls.DATE, Calls.LAST_MODIFIED, Calls.NUMBER, Calls.COUNTRY_ISO
+                },
+                Calls.LAST_MODIFIED + " > ?",
+                new String[] {String.valueOf(previousTimestampProcessed)},
+                Calls.LAST_MODIFIED + " DESC LIMIT 1000")) {
+
+      if (cursor == null) {
+        LogUtil.e("SystemCallLogDataSource.handleInsertsAndUpdates", "null cursor");
+        return;
+      }
+
+      LogUtil.i(
+          "SystemCallLogDataSource.handleInsertsAndUpdates",
+          "found %d entries to insert/update",
+          cursor.getCount());
+
+      if (cursor.moveToFirst()) {
+        int idColumn = cursor.getColumnIndexOrThrow(Calls._ID);
+        int dateColumn = cursor.getColumnIndexOrThrow(Calls.DATE);
+        int lastModifiedColumn = cursor.getColumnIndexOrThrow(Calls.LAST_MODIFIED);
+        int numberColumn = cursor.getColumnIndexOrThrow(Calls.NUMBER);
+        int countryIsoColumn = cursor.getColumnIndexOrThrow(Calls.COUNTRY_ISO);
+
+        // The cursor orders by LAST_MODIFIED DESC, so the first result is the most recent timestamp
+        // processed.
+        lastTimestampProcessed = cursor.getLong(lastModifiedColumn);
+        do {
+          long id = cursor.getLong(idColumn);
+          long date = cursor.getLong(dateColumn);
+          String numberAsStr = cursor.getString(numberColumn);
+          String countryIso = cursor.getString(countryIsoColumn);
+
+          byte[] numberAsProtoBytes =
+              dialerPhoneNumberUtil.parse(numberAsStr, countryIso).toByteArray();
+
+          ContentValues contentValues = new ContentValues();
+          contentValues.put(AnnotatedCallLog.TIMESTAMP, date);
+          contentValues.put(AnnotatedCallLog.NUMBER, numberAsProtoBytes);
+
+          if (existingAnnotatedCallLogIds.contains(id)) {
+            mutations.update(id, contentValues);
+          } else {
+            mutations.insert(id, contentValues);
+          }
+        } while (cursor.moveToNext());
+      } // else no new results, do nothing.
+    }
+  }
+
+  private static void handleDeletes(
+      Context appContext, Set<Long> existingAnnotatedCallLogIds, CallLogMutations mutations) {
+    Set<Long> systemCallLogIds =
+        getIdsFromSystemCallLogThatMatch(appContext, existingAnnotatedCallLogIds);
+    LogUtil.i(
+        "SystemCallLogDataSource.handleDeletes",
+        "found %d matching entries in system call log",
+        systemCallLogIds.size());
+    Set<Long> idsInAnnotatedCallLogNoLongerInSystemCallLog = new ArraySet<>();
+    idsInAnnotatedCallLogNoLongerInSystemCallLog.addAll(existingAnnotatedCallLogIds);
+    idsInAnnotatedCallLogNoLongerInSystemCallLog.removeAll(systemCallLogIds);
+
+    LogUtil.i(
+        "SystemCallLogDataSource.handleDeletes",
+        "found %d call log entries to remove",
+        idsInAnnotatedCallLogNoLongerInSystemCallLog.size());
+
+    for (long id : idsInAnnotatedCallLogNoLongerInSystemCallLog) {
+      mutations.delete(id);
+    }
+  }
+
+  @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
+  private static Set<Long> getAnnotatedCallLogIds(Context appContext) {
+    ArraySet<Long> ids = new ArraySet<>();
+
+    try (Cursor cursor =
+        appContext
+            .getContentResolver()
+            .query(
+                AnnotatedCallLog.CONTENT_URI,
+                new String[] {AnnotatedCallLog._ID},
+                null,
+                null,
+                null)) {
+
+      if (cursor == null) {
+        LogUtil.e("SystemCallLogDataSource.getAnnotatedCallLogIds", "null cursor");
+        return ids;
+      }
+
+      if (cursor.moveToFirst()) {
+        int idColumn = cursor.getColumnIndexOrThrow(AnnotatedCallLog._ID);
+        do {
+          ids.add(cursor.getLong(idColumn));
+        } while (cursor.moveToNext());
+      }
+    }
+    return ids;
+  }
+
+  @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
+  private static Set<Long> getIdsFromSystemCallLogThatMatch(
+      Context appContext, Set<Long> matchingIds) {
+    ArraySet<Long> ids = new ArraySet<>();
+
+    String[] questionMarks = new String[matchingIds.size()];
+    Arrays.fill(questionMarks, "?");
+    String whereClause = (Calls._ID + " in (") + TextUtils.join(",", questionMarks) + ")";
+    String[] whereArgs = new String[matchingIds.size()];
+    int i = 0;
+    for (long id : matchingIds) {
+      whereArgs[i++] = String.valueOf(id);
+    }
+
+    try (Cursor cursor =
+        appContext
+            .getContentResolver()
+            .query(Calls.CONTENT_URI, new String[] {Calls._ID}, whereClause, whereArgs, null)) {
+
+      if (cursor == null) {
+        LogUtil.e("SystemCallLogDataSource.getIdsFromSystemCallLog", "null cursor");
+        return ids;
+      }
+
+      if (cursor.moveToFirst()) {
+        int idColumn = cursor.getColumnIndexOrThrow(Calls._ID);
+        do {
+          ids.add(cursor.getLong(idColumn));
+        } while (cursor.moveToNext());
+      }
+      return ids;
+    }
   }
 
   private static class CallLogObserver extends ContentObserver {
diff --git a/java/com/android/dialer/calllog/datasources/util/RowCombiner.java b/java/com/android/dialer/calllog/datasources/util/RowCombiner.java
new file mode 100644
index 0000000..0c7be1e
--- /dev/null
+++ b/java/com/android/dialer/calllog/datasources/util/RowCombiner.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.dialer.calllog.datasources.util;
+
+import android.content.ContentValues;
+import com.android.dialer.common.Assert;
+import java.util.Iterator;
+import java.util.List;
+
+/** Convenience class for aggregating row values. */
+public class RowCombiner {
+  private final List<ContentValues> individualRowsSortedByTimestampDesc;
+  private final ContentValues combinedRow = new ContentValues();
+
+  public RowCombiner(List<ContentValues> individualRowsSortedByTimestampDesc) {
+    Assert.checkArgument(!individualRowsSortedByTimestampDesc.isEmpty());
+    this.individualRowsSortedByTimestampDesc = individualRowsSortedByTimestampDesc;
+  }
+
+  /** Use the most recent value for the specified column. */
+  public RowCombiner useMostRecentLong(String columnName) {
+    combinedRow.put(columnName, individualRowsSortedByTimestampDesc.get(0).getAsLong(columnName));
+    return this;
+  }
+
+  /** Asserts that all column values for the given column name are the same, and uses it. */
+  public RowCombiner useSingleValueString(String columnName) {
+    Iterator<ContentValues> iterator = individualRowsSortedByTimestampDesc.iterator();
+    String singleValue = iterator.next().getAsString(columnName);
+    while (iterator.hasNext()) {
+      Assert.checkState(iterator.next().getAsString(columnName).equals(singleValue));
+    }
+    combinedRow.put(columnName, singleValue);
+    return this;
+  }
+
+  public ContentValues combine() {
+    return combinedRow;
+  }
+}
diff --git a/java/com/android/dialer/calllog/testing/FakeCallLogApplication.java b/java/com/android/dialer/calllog/testing/FakeCallLogApplication.java
new file mode 100644
index 0000000..8aee7dd
--- /dev/null
+++ b/java/com/android/dialer/calllog/testing/FakeCallLogApplication.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.dialer.calllog.testing;
+
+import android.app.Application;
+import com.android.dialer.calllog.CallLogComponent;
+import com.android.dialer.calllog.CallLogModule;
+import com.android.dialer.calllog.database.CallLogDatabaseComponent;
+import com.android.dialer.common.concurrent.DialerExecutorComponent;
+import com.android.dialer.common.concurrent.testing.TestDialerExecutorModule;
+import com.android.dialer.inject.ContextModule;
+import com.android.dialer.inject.HasRootComponent;
+import dagger.Component;
+import javax.inject.Singleton;
+
+/**
+ * Fake application for call log robolectric tests which uses all real bindings but doesn't require
+ * tests to depend on and use all of DialerApplication.
+ */
+public final class FakeCallLogApplication extends Application implements HasRootComponent {
+  private Object rootComponent;
+
+  @Override
+  public final synchronized Object component() {
+    if (rootComponent == null) {
+      rootComponent =
+          DaggerFakeCallLogApplication_FakeComponent.builder()
+              .contextModule(new ContextModule(this))
+              .build();
+    }
+    return rootComponent;
+  }
+
+  @Singleton
+  @Component(modules = {CallLogModule.class, ContextModule.class, TestDialerExecutorModule.class})
+  interface FakeComponent
+      extends CallLogDatabaseComponent.HasComponent,
+          CallLogComponent.HasComponent,
+          DialerExecutorComponent.HasComponent {}
+}
diff --git a/java/com/android/dialer/calllog/ui/AndroidManifest.xml b/java/com/android/dialer/calllog/ui/AndroidManifest.xml
index 2281677..eaf71ab 100644
--- a/java/com/android/dialer/calllog/ui/AndroidManifest.xml
+++ b/java/com/android/dialer/calllog/ui/AndroidManifest.xml
@@ -13,4 +13,4 @@
  ~ See the License for the specific language governing permissions and
  ~ limitations under the License
  -->
-<manifest package="com.android.dialer.calllog"/>
+<manifest package="com.android.dialer.calllog.ui"/>
diff --git a/java/com/android/dialer/calllog/ui/AnnotatedCallLogCursorLoader.java b/java/com/android/dialer/calllog/ui/AnnotatedCallLogCursorLoader.java
deleted file mode 100644
index cd8622e..0000000
--- a/java/com/android/dialer/calllog/ui/AnnotatedCallLogCursorLoader.java
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.dialer.calllog.ui;
-
-import android.annotation.TargetApi;
-import android.content.Context;
-import android.content.CursorLoader;
-import android.database.Cursor;
-import android.database.sqlite.SQLiteDatabase;
-import android.os.Build;
-import com.android.dialer.calllog.database.AnnotatedCallLog;
-import com.android.dialer.calllog.database.AnnotatedCallLog.Columns;
-
-/** CursorLoader which reads the annotated call log. */
-class AnnotatedCallLogCursorLoader extends CursorLoader {
-
-  AnnotatedCallLogCursorLoader(Context context) {
-    super(context);
-  }
-
-  @TargetApi(Build.VERSION_CODES.M) // Uses try-with-resources
-  @Override
-  public Cursor loadInBackground() {
-    try (SQLiteDatabase readableDatabase = AnnotatedCallLog.getReadableDatabase(getContext())) {
-      return readableDatabase.rawQuery(
-          "SELECT * FROM "
-              + AnnotatedCallLog.TABLE_NAME
-              + " ORDER BY "
-              + Columns.TIMESTAMP
-              + " DESC",
-          null /* selectionArgs */);
-    }
-  }
-}
diff --git a/java/com/android/dialer/calllog/ui/NewCallLogAdapter.java b/java/com/android/dialer/calllog/ui/NewCallLogAdapter.java
new file mode 100644
index 0000000..f9ab21c
--- /dev/null
+++ b/java/com/android/dialer/calllog/ui/NewCallLogAdapter.java
@@ -0,0 +1,53 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.dialer.calllog.ui;
+
+import android.database.Cursor;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.ViewGroup;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.CoalescedAnnotatedCallLog;
+
+/** {@link RecyclerView.Adapter} for the new call log fragment. */
+final class NewCallLogAdapter extends RecyclerView.Adapter<NewCallLogViewHolder> {
+
+  private final Cursor cursor;
+  private final int timestampIndex;
+
+  NewCallLogAdapter(Cursor cursor) {
+    this.cursor = cursor;
+    timestampIndex = cursor.getColumnIndexOrThrow(CoalescedAnnotatedCallLog.TIMESTAMP);
+  }
+
+  @Override
+  public NewCallLogViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
+    return new NewCallLogViewHolder(
+        LayoutInflater.from(viewGroup.getContext())
+            .inflate(R.layout.new_call_log_entry, viewGroup, false));
+  }
+
+  @Override
+  public void onBindViewHolder(NewCallLogViewHolder viewHolder, int position) {
+    cursor.moveToPosition(position);
+    long timestamp = cursor.getLong(timestampIndex);
+    viewHolder.bind(timestamp);
+  }
+
+  @Override
+  public int getItemCount() {
+    return cursor.getCount();
+  }
+}
diff --git a/java/com/android/dialer/calllog/ui/NewCallLogFragment.java b/java/com/android/dialer/calllog/ui/NewCallLogFragment.java
index b8f2b13..712f7cf 100644
--- a/java/com/android/dialer/calllog/ui/NewCallLogFragment.java
+++ b/java/com/android/dialer/calllog/ui/NewCallLogFragment.java
@@ -17,30 +17,38 @@
 
 import android.app.Fragment;
 import android.app.LoaderManager.LoaderCallbacks;
-import android.content.Context;
+import android.content.CursorLoader;
 import android.content.Loader;
 import android.database.Cursor;
 import android.os.Bundle;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
-import android.widget.CursorAdapter;
-import android.widget.ListView;
-import android.widget.SimpleCursorAdapter;
-import android.widget.TextView;
 import com.android.dialer.calllog.CallLogComponent;
 import com.android.dialer.calllog.CallLogFramework;
 import com.android.dialer.calllog.CallLogFramework.CallLogUi;
-import com.android.dialer.calllog.database.AnnotatedCallLog.Columns;
+import com.android.dialer.calllog.database.contract.AnnotatedCallLogContract.CoalescedAnnotatedCallLog;
 import com.android.dialer.common.LogUtil;
-import java.text.SimpleDateFormat;
-import java.util.Locale;
+import com.android.dialer.common.concurrent.DialerExecutor;
+import com.android.dialer.common.concurrent.DialerExecutorComponent;
+import com.android.dialer.common.concurrent.DialerExecutorFactory;
 
 /** The "new" call log fragment implementation, which is built on top of the annotated call log. */
 public final class NewCallLogFragment extends Fragment
     implements CallLogUi, LoaderCallbacks<Cursor> {
 
-  private CursorAdapter cursorAdapter;
+  /*
+   * This is a reasonable time that it might take between related call log writes, that also
+   * shouldn't slow down single-writes too much. For example, when populating the database using
+   * the simulator, using this value results in ~6 refresh cycles (on a release build) to write 120
+   * call log entries.
+   */
+  private static final long WAIT_MILLIS = 100L;
+
+  private DialerExecutor<Boolean> refreshAnnotatedCallLogTask;
+  private RecyclerView recyclerView;
 
   public NewCallLogFragment() {
     LogUtil.enterBlock("NewCallLogFragment.NewCallLogFragment");
@@ -52,8 +60,27 @@
 
     LogUtil.enterBlock("NewCallLogFragment.onCreate");
 
-    CallLogFramework callLogFramework = CallLogComponent.get(getContext()).callLogFramework();
+    CallLogComponent component = CallLogComponent.get(getContext());
+    CallLogFramework callLogFramework = component.callLogFramework();
     callLogFramework.attachUi(this);
+
+    DialerExecutorFactory dialerExecutorFactory =
+        DialerExecutorComponent.get(getContext()).dialerExecutorFactory();
+
+    refreshAnnotatedCallLogTask =
+        dialerExecutorFactory
+            .createUiTaskBuilder(
+                getFragmentManager(),
+                "NewCallLogFragment.refreshAnnotatedCallLog",
+                component.getRefreshAnnotatedCallLogWorker())
+            .build();
+  }
+
+  @Override
+  public void onStart() {
+    super.onStart();
+
+    LogUtil.enterBlock("NewCallLogFragment.onStart");
   }
 
   @Override
@@ -64,6 +91,9 @@
 
     CallLogFramework callLogFramework = CallLogComponent.get(getContext()).callLogFramework();
     callLogFramework.attachUi(this);
+
+    // TODO: Consider doing this when fragment becomes visible.
+    checkAnnotatedCallLogDirtyAndRefreshIfNecessary();
   }
 
   @Override
@@ -82,57 +112,44 @@
     LogUtil.enterBlock("NewCallLogFragment.onCreateView");
 
     View view = inflater.inflate(R.layout.new_call_log_fragment, container, false);
-    ListView listView = (ListView) view.findViewById(R.id.list);
+    recyclerView = view.findViewById(R.id.new_call_log_recycler_view);
 
-    this.cursorAdapter =
-        new MyCursorAdapter(
-            getContext(),
-            R.layout.new_call_log_entry,
-            null /* cursor */,
-            new String[] {Columns.TIMESTAMP, Columns.CONTACT_NAME},
-            new int[] {R.id.timestamp, R.id.contact_name},
-            0);
-    listView.setAdapter(cursorAdapter);
-
-    getLoaderManager().initLoader(0, null, this);
+    getLoaderManager().restartLoader(0, null, this);
 
     return view;
   }
 
+  private void checkAnnotatedCallLogDirtyAndRefreshIfNecessary() {
+    LogUtil.enterBlock("NewCallLogFragment.checkAnnotatedCallLogDirtyAndRefreshIfNecessary");
+    refreshAnnotatedCallLogTask.executeSerialWithWait(false /* skipDirtyCheck */, WAIT_MILLIS);
+  }
+
   @Override
   public void invalidateUi() {
     LogUtil.enterBlock("NewCallLogFragment.invalidateUi");
-    // TODO: Implementation.
+    refreshAnnotatedCallLogTask.executeSerialWithWait(true /* skipDirtyCheck */, WAIT_MILLIS);
   }
 
   @Override
   public Loader<Cursor> onCreateLoader(int id, Bundle args) {
-    // TODO: This is sort of weird, do we need to implement a content provider?
-    return new AnnotatedCallLogCursorLoader(getContext());
+    LogUtil.enterBlock("NewCallLogFragment.onCreateLoader");
+    // CoalescedAnnotatedCallLog requires that all params be null.
+    return new CursorLoader(
+        getContext(), CoalescedAnnotatedCallLog.CONTENT_URI, null, null, null, null);
   }
 
   @Override
   public void onLoadFinished(Loader<Cursor> loader, Cursor newCursor) {
-    cursorAdapter.swapCursor(newCursor);
+    LogUtil.enterBlock("NewCallLogFragment.onLoadFinished");
+
+    // TODO: Handle empty cursor by showing empty view.
+    recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
+    recyclerView.setAdapter(new NewCallLogAdapter(newCursor));
   }
 
   @Override
   public void onLoaderReset(Loader<Cursor> loader) {
-    cursorAdapter.swapCursor(null);
-  }
-
-  private static class MyCursorAdapter extends SimpleCursorAdapter {
-
-    MyCursorAdapter(Context context, int layout, Cursor c, String[] from, int[] to, int flags) {
-      super(context, layout, c, from, to, flags);
-    }
-
-    @Override
-    public void setViewText(TextView view, String text) {
-      if (view.getId() == R.id.timestamp) {
-        text = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.US).format(Long.valueOf(text));
-      }
-      view.setText(text);
-    }
+    LogUtil.enterBlock("NewCallLogFragment.onLoaderReset");
+    recyclerView.setAdapter(null);
   }
 }
diff --git a/java/com/android/dialer/calllog/ui/NewCallLogViewHolder.java b/java/com/android/dialer/calllog/ui/NewCallLogViewHolder.java
new file mode 100644
index 0000000..4c459e1
--- /dev/null
+++ b/java/com/android/dialer/calllog/ui/NewCallLogViewHolder.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.dialer.calllog.ui;
+
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+import android.widget.TextView;
+import java.text.SimpleDateFormat;
+import java.util.Locale;
+
+/** {@link RecyclerView.ViewHolder} for the new call log. */
+final class NewCallLogViewHolder extends RecyclerView.ViewHolder {
+
+  // TODO: Format correctly using current locale.
+  private final SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm", Locale.US);
+
+  private final TextView contactNameView;
+  private final TextView timestampView;
+
+  NewCallLogViewHolder(View view) {
+    super(view);
+    contactNameView = view.findViewById(R.id.contact_name);
+    timestampView = view.findViewById(R.id.timestamp);
+  }
+
+  void bind(long timestamp) {
+    contactNameView.setText("Contact Name Placeholder");
+    timestampView.setText(dateFormat.format(timestamp));
+  }
+}
diff --git a/java/com/android/dialer/calllog/ui/res/layout/new_call_log_entry.xml b/java/com/android/dialer/calllog/ui/res/layout/new_call_log_entry.xml
index ee3efd0..99797fa 100644
--- a/java/com/android/dialer/calllog/ui/res/layout/new_call_log_entry.xml
+++ b/java/com/android/dialer/calllog/ui/res/layout/new_call_log_entry.xml
@@ -18,16 +18,20 @@
 <LinearLayout
     xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"
-    android:orientation="horizontal">
-
-  <TextView
-      android:id="@+id/timestamp"
-      android:layout_width="wrap_content"
-      android:layout_height="wrap_content"/>
+    android:layout_height="wrap_content"
+    android:padding="8dp"
+    android:orientation="vertical">
 
   <TextView
       android:id="@+id/contact_name"
       android:layout_width="wrap_content"
-      android:layout_height="wrap_content"/>
+      android:layout_height="wrap_content"
+      style="@style/PrimaryText"/>
+
+  <TextView
+      android:id="@+id/timestamp"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      style="@style/SecondaryText"/>
+
 </LinearLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/calllog/ui/res/layout/new_call_log_fragment.xml b/java/com/android/dialer/calllog/ui/res/layout/new_call_log_fragment.xml
index 433dbdd..e1d8410 100644
--- a/java/com/android/dialer/calllog/ui/res/layout/new_call_log_fragment.xml
+++ b/java/com/android/dialer/calllog/ui/res/layout/new_call_log_fragment.xml
@@ -15,8 +15,9 @@
   ~ limitations under the License
   -->
 
-<ListView
+<android.support.v7.widget.RecyclerView
     xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/list"
+    android:id="@+id/new_call_log_recycler_view"
     android:layout_width="match_parent"
-    android:layout_height="match_parent"/>
+    android:layout_height="match_parent"
+    android:background="@color/background_dialer_light"/>
diff --git a/java/com/android/dialer/common/Assert.java b/java/com/android/dialer/common/Assert.java
index 189d209..2d7f199 100644
--- a/java/com/android/dialer/common/Assert.java
+++ b/java/com/android/dialer/common/Assert.java
@@ -30,10 +30,6 @@
     Assert.areThreadAssertsEnabled = areThreadAssertsEnabled;
   }
 
-  public static boolean areThreadAssertsEnabled() {
-    return areThreadAssertsEnabled;
-  }
-
   /**
    * Called when a truly exceptional case occurs.
    *
@@ -63,6 +59,11 @@
   }
 
   @CheckReturnValue
+  public static AssertionError createAssertionFailException(String msg, Throwable reason) {
+    return new AssertionError(msg, reason);
+  }
+
+  @CheckReturnValue
   public static UnsupportedOperationException createUnsupportedOperationFailException() {
     return new UnsupportedOperationException();
   }
diff --git a/java/com/android/dialer/common/concurrent/DefaultDialerExecutorFactory.java b/java/com/android/dialer/common/concurrent/DefaultDialerExecutorFactory.java
index 4b6d81a..82e517d 100644
--- a/java/com/android/dialer/common/concurrent/DefaultDialerExecutorFactory.java
+++ b/java/com/android/dialer/common/concurrent/DefaultDialerExecutorFactory.java
@@ -17,6 +17,7 @@
 package com.android.dialer.common.concurrent;
 
 import android.app.FragmentManager;
+import android.os.AsyncTask;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import com.android.dialer.common.Assert;
@@ -25,9 +26,13 @@
 import com.android.dialer.common.concurrent.DialerExecutor.FailureListener;
 import com.android.dialer.common.concurrent.DialerExecutor.SuccessListener;
 import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import java.util.concurrent.Executor;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Executors;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.ScheduledFuture;
 import java.util.concurrent.ThreadFactory;
+import java.util.concurrent.TimeUnit;
 import javax.inject.Inject;
 
 /** The production {@link DialerExecutorFactory}. */
@@ -62,16 +67,16 @@
         throwable -> {
           throw new RuntimeException(throwable);
         };
-    @Nullable final ExecutorService serialExecutorService;
-    @Nullable final ExecutorService parallelExecutorService;
+    @Nullable final ScheduledExecutorService serialExecutorService;
+    @Nullable final Executor parallelExecutor;
 
     BaseTaskBuilder(
         Worker<InputT, OutputT> worker,
-        @Nullable ExecutorService serialExecutorService,
-        @Nullable ExecutorService parallelExecutorService) {
+        @Nullable ScheduledExecutorService serialExecutorService,
+        @Nullable Executor parallelExecutor) {
       this.worker = worker;
       this.serialExecutorService = serialExecutorService;
-      this.parallelExecutorService = parallelExecutorService;
+      this.parallelExecutor = parallelExecutor;
     }
 
     @NonNull
@@ -91,6 +96,19 @@
 
   /** Convenience class for use by {@link DialerExecutorFactory} implementations. */
   public static class UiTaskBuilder<InputT, OutputT> extends BaseTaskBuilder<InputT, OutputT> {
+    private static final ScheduledExecutorService defaultSerialExecutorService =
+        Executors.newSingleThreadScheduledExecutor(
+            new ThreadFactory() {
+              @Override
+              public Thread newThread(Runnable runnable) {
+                LogUtil.i("UiTaskBuilder.newThread", "creating serial thread");
+                Thread thread = new Thread(runnable, "UiTaskBuilder-Serial");
+                thread.setPriority(5); // Corresponds to Process.THREAD_PRIORITY_DEFAULT
+                return thread;
+              }
+            });
+
+    private static final Executor defaultParallelExecutorService = AsyncTask.THREAD_POOL_EXECUTOR;
 
     private final FragmentManager fragmentManager;
     private final String id;
@@ -102,16 +120,16 @@
           fragmentManager,
           id,
           worker,
-          null /* serialExecutorService */,
-          null /* parallelExecutorService */);
+          defaultSerialExecutorService,
+          defaultParallelExecutorService);
     }
 
     public UiTaskBuilder(
         FragmentManager fragmentManager,
         String id,
         Worker<InputT, OutputT> worker,
-        ExecutorService serialExecutor,
-        ExecutorService parallelExecutor) {
+        ScheduledExecutorService serialExecutor,
+        Executor parallelExecutor) {
       super(worker, serialExecutor, parallelExecutor);
       this.fragmentManager = fragmentManager;
       this.id = id;
@@ -128,46 +146,46 @@
               super.successListener,
               super.failureListener,
               serialExecutorService,
-              parallelExecutorService);
+              parallelExecutor);
       return new UiDialerExecutor<>(dialerUiTaskFragment);
     }
   }
 
   /** Convenience class for use by {@link DialerExecutorFactory} implementations. */
   public static class NonUiTaskBuilder<InputT, OutputT> extends BaseTaskBuilder<InputT, OutputT> {
-    private static final ExecutorService defaultSerialExecutorService =
-        Executors.newSingleThreadExecutor(
+    private static final ScheduledExecutorService defaultSerialExecutorService =
+        Executors.newSingleThreadScheduledExecutor(
             new ThreadFactory() {
               @Override
               public Thread newThread(Runnable runnable) {
                 LogUtil.i("NonUiTaskBuilder.newThread", "creating serial thread");
-                Thread thread = new Thread(runnable, "NonUiTaskBuilder");
+                Thread thread = new Thread(runnable, "NonUiTaskBuilder-Serial");
                 thread.setPriority(4); // Corresponds to Process.THREAD_PRIORITY_BACKGROUND
                 return thread;
               }
             });
 
-    private static final ExecutorService defaultParallelExecutorService =
+    private static final Executor defaultParallelExecutor =
         Executors.newFixedThreadPool(
             5,
             new ThreadFactory() {
               @Override
               public Thread newThread(Runnable runnable) {
                 LogUtil.i("NonUiTaskBuilder.newThread", "creating parallel thread");
-                Thread thread = new Thread(runnable, "NonUiTaskBuilder");
+                Thread thread = new Thread(runnable, "NonUiTaskBuilder-Parallel");
                 thread.setPriority(4); // Corresponds to Process.THREAD_PRIORITY_BACKGROUND
                 return thread;
               }
             });
 
     NonUiTaskBuilder(Worker<InputT, OutputT> worker) {
-      this(worker, defaultSerialExecutorService, defaultParallelExecutorService);
+      this(worker, defaultSerialExecutorService, defaultParallelExecutor);
     }
 
     public NonUiTaskBuilder(
         Worker<InputT, OutputT> worker,
-        @NonNull ExecutorService serialExecutor,
-        @NonNull ExecutorService parallelExecutor) {
+        @NonNull ScheduledExecutorService serialExecutor,
+        @NonNull Executor parallelExecutor) {
       super(worker, Assert.isNotNull(serialExecutor), Assert.isNotNull(parallelExecutor));
     }
 
@@ -179,7 +197,7 @@
           super.successListener,
           super.failureListener,
           serialExecutorService,
-          parallelExecutorService);
+          parallelExecutor);
     }
   }
 
@@ -197,6 +215,11 @@
     }
 
     @Override
+    public void executeSerialWithWait(@Nullable InputT input, long waitMillis) {
+      dialerUiTaskFragment.executeSerialWithWait(input, waitMillis);
+    }
+
+    @Override
     public void executeParallel(@Nullable InputT input) {
       dialerUiTaskFragment.executeParallel(input);
     }
@@ -214,47 +237,59 @@
     private final SuccessListener<OutputT> successListener;
     private final FailureListener failureListener;
 
-    private final ExecutorService serialExecutorService;
-    private final ExecutorService parallelExecutorService;
+    private final ScheduledExecutorService serialExecutorService;
+    private final Executor parallelExecutor;
+
+    private ScheduledFuture<?> scheduledFuture;
 
     NonUiDialerExecutor(
         Worker<InputT, OutputT> worker,
         SuccessListener<OutputT> successListener,
         FailureListener failureListener,
-        ExecutorService serialExecutorService,
-        ExecutorService parallelExecutorService) {
+        ScheduledExecutorService serialExecutorService,
+        Executor parallelExecutor) {
       this.worker = worker;
       this.successListener = successListener;
       this.failureListener = failureListener;
       this.serialExecutorService = serialExecutorService;
-      this.parallelExecutorService = parallelExecutorService;
+      this.parallelExecutor = parallelExecutor;
     }
 
     @Override
     public void executeSerial(@Nullable InputT input) {
-      executeOnCustomExecutorService(serialExecutorService, input);
+      serialExecutorService.execute(() -> run(input));
+    }
+
+    @Override
+    public void executeSerialWithWait(@Nullable InputT input, long waitMillis) {
+      if (scheduledFuture != null) {
+        LogUtil.i("NonUiDialerExecutor.executeSerialWithWait", "cancelling waiting task");
+        scheduledFuture.cancel(false /* mayInterrupt */);
+      }
+      scheduledFuture =
+          serialExecutorService.schedule(() -> run(input), waitMillis, TimeUnit.MILLISECONDS);
     }
 
     @Override
     public void executeParallel(@Nullable InputT input) {
-      executeOnCustomExecutorService(parallelExecutorService, input);
+      parallelExecutor.execute(() -> run(input));
     }
 
     @Override
     public void executeOnCustomExecutorService(
         @NonNull ExecutorService executorService, @Nullable InputT input) {
-      Assert.isNotNull(executorService)
-          .execute(
-              () -> {
-                OutputT output;
-                try {
-                  output = worker.doInBackground(input);
-                } catch (Throwable throwable) {
-                  ThreadUtil.postOnUiThread(() -> failureListener.onFailure(throwable));
-                  return;
-                }
-                ThreadUtil.postOnUiThread(() -> successListener.onSuccess(output));
-              });
+      Assert.isNotNull(executorService).execute(() -> run(input));
+    }
+
+    private void run(@Nullable InputT input) {
+      OutputT output;
+      try {
+        output = worker.doInBackground(input);
+      } catch (Throwable throwable) {
+        ThreadUtil.postOnUiThread(() -> failureListener.onFailure(throwable));
+        return;
+      }
+      ThreadUtil.postOnUiThread(() -> successListener.onSuccess(output));
     }
   }
 }
diff --git a/java/com/android/dialer/common/concurrent/DialerExecutor.java b/java/com/android/dialer/common/concurrent/DialerExecutor.java
index 0237e3a..0414581 100644
--- a/java/com/android/dialer/common/concurrent/DialerExecutor.java
+++ b/java/com/android/dialer/common/concurrent/DialerExecutor.java
@@ -84,6 +84,16 @@
   void executeSerial(@Nullable InputT input);
 
   /**
+   * Executes the task after waiting {@code waitMillis}. If called while the previous invocation is
+   * still waiting to be started, the original invocation is cancelled.
+   *
+   * <p>This is useful for tasks which might get scheduled many times in very quick succession, but
+   * it is only the last one that actually needs to be executed.
+   */
+  @MainThread
+  void executeSerialWithWait(@Nullable InputT input, long waitMillis);
+
+  /**
    * Executes the task on a thread pool shared across the application. Multiple calls using this
    * method may result in tasks being executed in parallel.
    */
diff --git a/java/com/android/dialer/common/concurrent/DialerExecutorComponent.java b/java/com/android/dialer/common/concurrent/DialerExecutorComponent.java
new file mode 100644
index 0000000..2503325
--- /dev/null
+++ b/java/com/android/dialer/common/concurrent/DialerExecutorComponent.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.common.concurrent;
+
+import android.content.Context;
+import com.android.dialer.inject.HasRootComponent;
+import dagger.Subcomponent;
+
+/** Dagger component which provides a {@link DialerExecutorFactory}. */
+@Subcomponent
+public abstract class DialerExecutorComponent {
+
+  public abstract DialerExecutorFactory dialerExecutorFactory();
+
+  public static DialerExecutorComponent get(Context context) {
+    return ((DialerExecutorComponent.HasComponent)
+            ((HasRootComponent) context.getApplicationContext()).component())
+        .dialerExecutorComponent();
+  }
+
+  /** Used to refer to the root application component. */
+  public interface HasComponent {
+    DialerExecutorComponent dialerExecutorComponent();
+  }
+}
diff --git a/java/com/android/incallui/calllocation/impl/TrafficStatsTags.java b/java/com/android/dialer/common/concurrent/DialerExecutorModule.java
similarity index 60%
copy from java/com/android/incallui/calllocation/impl/TrafficStatsTags.java
copy to java/com/android/dialer/common/concurrent/DialerExecutorModule.java
index 02cc2e0..281f88c 100644
--- a/java/com/android/incallui/calllocation/impl/TrafficStatsTags.java
+++ b/java/com/android/dialer/common/concurrent/DialerExecutorModule.java
@@ -13,17 +13,16 @@
  * See the License for the specific language governing permissions and
  * limitations under the License
  */
+package com.android.dialer.common.concurrent;
 
-package com.android.incallui.calllocation.impl;
+import dagger.Binds;
+import dagger.Module;
 
-/** Constants used for logging */
-public class TrafficStatsTags {
+/** Module which binds the production {@link DialerExecutorFactory}. */
+@Module
+public abstract class DialerExecutorModule {
 
-  /**
-   * Must be greater than {@link com.android.contacts.common.util.TrafficStatsTags#TAG_MAX}, to
-   * respect the namespace of the tags in ContactsCommon.
-   */
-  public static final int DOWNLOAD_LOCATION_MAP_TAG = 0xd000;
-
-  public static final int REVERSE_GEOCODE_TAG = 0xd001;
+  @Binds
+  abstract DialerExecutorFactory bindDialerExecutorFactory(
+      DefaultDialerExecutorFactory defaultDialerExecutorFactory);
 }
diff --git a/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java b/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java
index 6273368..7f2a5a0 100644
--- a/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java
+++ b/java/com/android/dialer/common/concurrent/DialerUiTaskFragment.java
@@ -18,17 +18,21 @@
 
 import android.app.Fragment;
 import android.app.FragmentManager;
-import android.os.AsyncTask;
 import android.os.Bundle;
 import android.support.annotation.MainThread;
+import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.support.annotation.WorkerThread;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.common.concurrent.AsyncTaskExecutors.SimpleAsyncTaskExecutor;
 import com.android.dialer.common.concurrent.DialerExecutor.FailureListener;
 import com.android.dialer.common.concurrent.DialerExecutor.SuccessListener;
 import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import java.util.concurrent.Executor;
 import java.util.concurrent.ExecutorService;
+import java.util.concurrent.ScheduledExecutorService;
+import java.util.concurrent.ScheduledFuture;
+import java.util.concurrent.TimeUnit;
 
 /**
  * Do not use this class directly. Instead use {@link DialerExecutors}.
@@ -38,13 +42,13 @@
  */
 public final class DialerUiTaskFragment<InputT, OutputT> extends Fragment {
 
-  private String taskId;
   private Worker<InputT, OutputT> worker;
   private SuccessListener<OutputT> successListener;
   private FailureListener failureListener;
 
-  private AsyncTaskExecutor serialExecutor = AsyncTaskExecutors.createAsyncTaskExecutor();
-  private AsyncTaskExecutor parallelExecutor = AsyncTaskExecutors.createThreadPoolExecutor();
+  private ScheduledExecutorService serialExecutor;
+  private Executor parallelExecutor;
+  private ScheduledFuture<?> scheduledFuture;
 
   /**
    * Creates a new {@link DialerUiTaskFragment} or gets an existing one in the event that a
@@ -76,8 +80,8 @@
       Worker<InputT, OutputT> worker,
       SuccessListener<OutputT> successListener,
       FailureListener failureListener,
-      @Nullable ExecutorService serialExecutorService,
-      @Nullable ExecutorService parallelExecutorService) {
+      @NonNull ScheduledExecutorService serialExecutorService,
+      @NonNull Executor parallelExecutor) {
     Assert.isMainThread();
 
     DialerUiTaskFragment<InputT, OutputT> fragment =
@@ -88,16 +92,11 @@
       fragment = new DialerUiTaskFragment<>();
       fragmentManager.beginTransaction().add(fragment, taskId).commit();
     }
-    fragment.taskId = taskId;
     fragment.worker = worker;
     fragment.successListener = successListener;
     fragment.failureListener = failureListener;
-    if (serialExecutorService != null) {
-      fragment.serialExecutor = new SimpleAsyncTaskExecutor(serialExecutorService);
-    }
-    if (parallelExecutorService != null) {
-      fragment.parallelExecutor = new SimpleAsyncTaskExecutor(parallelExecutorService);
-    }
+    fragment.serialExecutor = Assert.isNotNull(serialExecutorService);
+    fragment.parallelExecutor = Assert.isNotNull(parallelExecutor);
     return fragment;
   }
 
@@ -111,60 +110,51 @@
   public void onDetach() {
     super.onDetach();
     LogUtil.enterBlock("DialerUiTaskFragment.onDetach");
-    taskId = null;
     successListener = null;
     failureListener = null;
+    if (scheduledFuture != null) {
+      scheduledFuture.cancel(false /* mayInterrupt */);
+      scheduledFuture = null;
+    }
   }
 
   void executeSerial(InputT input) {
-    serialExecutor.submit(taskId, new InternalTask(), input);
+    serialExecutor.execute(() -> runTask(input));
+  }
+
+  void executeSerialWithWait(InputT input, long waitMillis) {
+    if (scheduledFuture != null) {
+      LogUtil.i("DialerUiTaskFragment.executeSerialWithWait", "cancelling waiting task");
+      scheduledFuture.cancel(false /* mayInterrupt */);
+    }
+    scheduledFuture =
+        serialExecutor.schedule(() -> runTask(input), waitMillis, TimeUnit.MILLISECONDS);
   }
 
   void executeParallel(InputT input) {
-    parallelExecutor.submit(taskId, new InternalTask(), input);
+    parallelExecutor.execute(() -> runTask(input));
   }
 
   void executeOnCustomExecutor(ExecutorService executor, InputT input) {
-    new SimpleAsyncTaskExecutor(executor).submit(taskId, new InternalTask(), input);
+    executor.execute(() -> runTask(input));
   }
 
-  private final class InternalTask extends AsyncTask<InputT, Void, InternalTaskResult<OutputT>> {
-
-    @SafeVarargs
-    @Override
-    protected final InternalTaskResult<OutputT> doInBackground(InputT... params) {
-      try {
-        return new InternalTaskResult<>(null, worker.doInBackground(params[0]));
-      } catch (Throwable throwable) {
-        LogUtil.e("InternalTask.doInBackground", "task failed", throwable);
-        return new InternalTaskResult<>(throwable, null);
-      }
-    }
-
-    @Override
-    protected void onPostExecute(InternalTaskResult<OutputT> result) {
-      if (result.throwable != null) {
-        if (failureListener == null) {
-          LogUtil.i("InternalTask.onPostExecute", "task failed but UI is dead");
-        } else {
-          failureListener.onFailure(result.throwable);
-        }
-      } else if (successListener == null) {
-        LogUtil.i("InternalTask.onPostExecute", "task succeeded but UI is dead");
+  @WorkerThread
+  private void runTask(@Nullable InputT input) {
+    try {
+      OutputT output = worker.doInBackground(input);
+      if (successListener == null) {
+        LogUtil.i("DialerUiTaskFragment.runTask", "task succeeded but UI is dead");
       } else {
-        successListener.onSuccess(result.result);
+        ThreadUtil.postOnUiThread(() -> successListener.onSuccess(output));
       }
-    }
-  }
-
-  private static class InternalTaskResult<OutputT> {
-
-    private final Throwable throwable;
-    private final OutputT result;
-
-    InternalTaskResult(Throwable throwable, OutputT result) {
-      this.throwable = throwable;
-      this.result = result;
+    } catch (Throwable throwable) {
+      LogUtil.e("DialerUiTaskFragment.runTask", "task failed", throwable);
+      if (failureListener == null) {
+        LogUtil.i("DialerUiTaskFragment.runTask", "task failed but UI is dead");
+      } else {
+        ThreadUtil.postOnUiThread(() -> failureListener.onFailure(throwable));
+      }
     }
   }
 }
diff --git a/java/com/android/dialer/common/concurrent/ThreadUtil.java b/java/com/android/dialer/common/concurrent/ThreadUtil.java
index 21cf463..39b6cce 100644
--- a/java/com/android/dialer/common/concurrent/ThreadUtil.java
+++ b/java/com/android/dialer/common/concurrent/ThreadUtil.java
@@ -28,6 +28,11 @@
     getUiThreadHandler().post(runnable);
   }
 
+  /** Posts a runnable to the UI thread, to be run after the specified amount of time elapses. */
+  public static void postDelayedOnUiThread(Runnable runnable, long delayMillis) {
+    getUiThreadHandler().postDelayed(runnable, delayMillis);
+  }
+
   /** Gets a handler which uses the main looper. */
   public static Handler getUiThreadHandler() {
     if (mainThreadHandler == null) {
diff --git a/java/com/android/dialer/compat/CompatUtils.java b/java/com/android/dialer/compat/CompatUtils.java
index 673cb70..351c89a 100644
--- a/java/com/android/dialer/compat/CompatUtils.java
+++ b/java/com/android/dialer/compat/CompatUtils.java
@@ -16,15 +16,9 @@
 package com.android.dialer.compat;
 
 import android.os.Build;
-import android.support.annotation.Nullable;
-import android.text.TextUtils;
-import android.util.Log;
-import java.lang.reflect.InvocationTargetException;
 
 public final class CompatUtils {
 
-  private static final String TAG = CompatUtils.class.getSimpleName();
-
   /** PrioritizedMimeType is added in API level 23. */
   public static boolean hasPrioritizedMimeType() {
     return SdkVersionOverride.getSdkVersion(Build.VERSION_CODES.M) >= Build.VERSION_CODES.M;
@@ -70,153 +64,4 @@
   public static boolean isCallSubjectCompatible() {
     return SdkVersionOverride.getSdkVersion(Build.VERSION_CODES.LOLLIPOP) >= Build.VERSION_CODES.M;
   }
-
-  /**
-   * Determines if this version is compatible with a default dialer. Can also force the version to
-   * be lower through {@link SdkVersionOverride}.
-   *
-   * @return {@code true} if default dialer is a feature on this device, {@code false} otherwise.
-   */
-  public static boolean isDefaultDialerCompatible() {
-    return isMarshmallowCompatible();
-  }
-
-  /**
-   * Determines if this version is compatible with Lollipop Mr1-specific APIs. Can also force the
-   * version to be lower through SdkVersionOverride.
-   *
-   * @return {@code true} if runtime sdk is compatible with Lollipop MR1, {@code false} otherwise.
-   */
-  public static boolean isLollipopMr1Compatible() {
-    return SdkVersionOverride.getSdkVersion(Build.VERSION_CODES.LOLLIPOP_MR1)
-        >= Build.VERSION_CODES.LOLLIPOP_MR1;
-  }
-
-  /**
-   * Determines if this version is compatible with Marshmallow-specific APIs. Can also force the
-   * version to be lower through SdkVersionOverride.
-   *
-   * @return {@code true} if runtime sdk is compatible with Marshmallow, {@code false} otherwise.
-   */
-  public static boolean isMarshmallowCompatible() {
-    return SdkVersionOverride.getSdkVersion(Build.VERSION_CODES.LOLLIPOP) >= Build.VERSION_CODES.M;
-  }
-
-  /**
-   * Determines if the given class is available. Can be used to check if system apis exist at
-   * runtime.
-   *
-   * @param className the name of the class to look for.
-   * @return {@code true} if the given class is available, {@code false} otherwise or if className
-   *     is empty.
-   */
-  public static boolean isClassAvailable(@Nullable String className) {
-    if (TextUtils.isEmpty(className)) {
-      return false;
-    }
-    try {
-      Class.forName(className);
-      return true;
-    } catch (ClassNotFoundException e) {
-      return false;
-    } catch (Throwable t) {
-      Log.e(
-          TAG,
-          "Unexpected exception when checking if class:" + className + " exists at " + "runtime",
-          t);
-      return false;
-    }
-  }
-
-  /**
-   * Determines if the given class's method is available to call. Can be used to check if system
-   * apis exist at runtime.
-   *
-   * @param className the name of the class to look for
-   * @param methodName the name of the method to look for
-   * @param parameterTypes the needed parameter types for the method to look for
-   * @return {@code true} if the given class is available, {@code false} otherwise or if className
-   *     or methodName are empty.
-   */
-  public static boolean isMethodAvailable(
-      @Nullable String className, @Nullable String methodName, Class<?>... parameterTypes) {
-    if (TextUtils.isEmpty(className) || TextUtils.isEmpty(methodName)) {
-      return false;
-    }
-
-    try {
-      Class.forName(className).getMethod(methodName, parameterTypes);
-      return true;
-    } catch (ClassNotFoundException | NoSuchMethodException e) {
-      Log.v(TAG, "Could not find method: " + className + "#" + methodName);
-      return false;
-    } catch (Throwable t) {
-      Log.e(
-          TAG,
-          "Unexpected exception when checking if method: "
-              + className
-              + "#"
-              + methodName
-              + " exists at runtime",
-          t);
-      return false;
-    }
-  }
-
-  /**
-   * Invokes a given class's method using reflection. Can be used to call system apis that exist at
-   * runtime but not in the SDK.
-   *
-   * @param instance The instance of the class to invoke the method on.
-   * @param methodName The name of the method to invoke.
-   * @param parameterTypes The needed parameter types for the method.
-   * @param parameters The parameter values to pass into the method.
-   * @return The result of the invocation or {@code null} if instance or methodName are empty, or if
-   *     the reflection fails.
-   */
-  @Nullable
-  public static Object invokeMethod(
-      @Nullable Object instance,
-      @Nullable String methodName,
-      Class<?>[] parameterTypes,
-      Object[] parameters) {
-    if (instance == null || TextUtils.isEmpty(methodName)) {
-      return null;
-    }
-
-    String className = instance.getClass().getName();
-    try {
-      return Class.forName(className)
-          .getMethod(methodName, parameterTypes)
-          .invoke(instance, parameters);
-    } catch (ClassNotFoundException
-        | NoSuchMethodException
-        | IllegalArgumentException
-        | IllegalAccessException
-        | InvocationTargetException e) {
-      Log.v(TAG, "Could not invoke method: " + className + "#" + methodName);
-      return null;
-    } catch (Throwable t) {
-      Log.e(
-          TAG,
-          "Unexpected exception when invoking method: "
-              + className
-              + "#"
-              + methodName
-              + " at runtime",
-          t);
-      return null;
-    }
-  }
-
-  /**
-   * Determines if this version is compatible with Lollipop-specific APIs. Can also force the
-   * version to be lower through SdkVersionOverride.
-   *
-   * @return {@code true} if call subject is a feature on this device, {@code false} otherwise.
-   */
-  public static boolean isLollipopCompatible() {
-    return SdkVersionOverride.getSdkVersion(Build.VERSION_CODES.LOLLIPOP)
-        >= Build.VERSION_CODES.LOLLIPOP;
-  }
 }
diff --git a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml b/java/com/android/dialer/configprovider/AndroidManifest.xml
similarity index 66%
copy from java/com/android/incallui/res/drawable/img_conference_automirrored.xml
copy to java/com/android/dialer/configprovider/AndroidManifest.xml
index 78b2876..7729971 100644
--- a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml
+++ b/java/com/android/dialer/configprovider/AndroidManifest.xml
@@ -1,7 +1,5 @@
-<?xml version="1.0" encoding="utf-8"?>
-
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -15,7 +13,11 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.android.dialer.configprovider">
 
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/img_conference"/>
\ No newline at end of file
+  <application>
+    <service android:name=".SharedPrefConfigProvider$Service"/>
+  </application>
+
+</manifest>
\ No newline at end of file
diff --git a/java/com/android/dialer/common/ConfigProvider.java b/java/com/android/dialer/configprovider/ConfigProvider.java
similarity index 95%
rename from java/com/android/dialer/common/ConfigProvider.java
rename to java/com/android/dialer/configprovider/ConfigProvider.java
index c0791e9..886a69e 100644
--- a/java/com/android/dialer/common/ConfigProvider.java
+++ b/java/com/android/dialer/configprovider/ConfigProvider.java
@@ -14,7 +14,7 @@
  * limitations under the License
  */
 
-package com.android.dialer.common;
+package com.android.dialer.configprovider;
 
 /** Gets config values from the container application. */
 public interface ConfigProvider {
diff --git a/java/com/android/dialer/common/ConfigProviderBindings.java b/java/com/android/dialer/configprovider/ConfigProviderBindings.java
similarity index 85%
rename from java/com/android/dialer/common/ConfigProviderBindings.java
rename to java/com/android/dialer/configprovider/ConfigProviderBindings.java
index 9f045ad..0bf0e75 100644
--- a/java/com/android/dialer/common/ConfigProviderBindings.java
+++ b/java/com/android/dialer/configprovider/ConfigProviderBindings.java
@@ -14,13 +14,14 @@
  * limitations under the License
  */
 
-package com.android.dialer.common;
+package com.android.dialer.configprovider;
 
 import android.content.Context;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.annotation.VisibleForTesting;
 import android.support.v4.os.UserManagerCompat;
+import com.android.dialer.common.Assert;
 
 /** Accessor for getting a {@link ConfigProvider}. */
 public class ConfigProviderBindings {
@@ -39,16 +40,7 @@
       }
       return configProviderStub;
     }
-
-    Context application = context.getApplicationContext();
-    if (application instanceof ConfigProviderFactory) {
-      configProvider = ((ConfigProviderFactory) application).getConfigProvider();
-    }
-
-    if (configProvider == null) {
-      configProvider = new ConfigProviderStub();
-    }
-
+    configProvider = ConfigProviderComponent.get(context).getConfigProvider();
     return configProvider;
   }
 
diff --git a/java/com/android/dialer/configprovider/ConfigProviderComponent.java b/java/com/android/dialer/configprovider/ConfigProviderComponent.java
new file mode 100644
index 0000000..e26a5cf
--- /dev/null
+++ b/java/com/android/dialer/configprovider/ConfigProviderComponent.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.configprovider;
+
+import android.content.Context;
+import android.support.annotation.NonNull;
+import com.android.dialer.inject.HasRootComponent;
+import dagger.Subcomponent;
+
+/** Dagger component to provide a {@link ConfigProvider}. */
+@Subcomponent
+public abstract class ConfigProviderComponent {
+
+  @NonNull
+  public abstract ConfigProvider getConfigProvider();
+
+  public static ConfigProviderComponent get(Context context) {
+    return ((ConfigProviderComponent.HasComponent)
+            ((HasRootComponent) context.getApplicationContext()).component())
+        .configProviderComponent();
+  }
+
+  /** Used to refer to the root application component. */
+  public interface HasComponent {
+    ConfigProviderComponent configProviderComponent();
+  }
+}
diff --git a/java/com/android/dialer/configprovider/SharedPrefConfigProvider.java b/java/com/android/dialer/configprovider/SharedPrefConfigProvider.java
new file mode 100644
index 0000000..fad25a4
--- /dev/null
+++ b/java/com/android/dialer/configprovider/SharedPrefConfigProvider.java
@@ -0,0 +1,131 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.dialer.configprovider;
+
+import android.app.IntentService;
+import android.content.Context;
+import android.content.Intent;
+import android.content.SharedPreferences;
+import android.content.SharedPreferences.Editor;
+import android.os.StrictMode;
+import android.support.annotation.Nullable;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.inject.ApplicationContext;
+import com.android.dialer.util.DialerUtils;
+import javax.inject.Inject;
+
+/**
+ * {@link ConfigProvider} which uses a shared preferences file.
+ *
+ * <p>Config flags can be written using adb (with root access), for example:
+ *
+ * <pre>
+ *   adb root
+ *   adb shell am startservice -n \
+ *     'com.android.dialer/.configprovider.SharedPrefConfigProvider\$Service' \
+ *     --ez boolean_flag_name flag_value
+ * </pre>
+ *
+ * <p>(For longs use --el and for strings use --es.)
+ *
+ * <p>Flags can be viewed with:
+ *
+ * <pre>
+ *   adb shell cat \
+ *     /data/user_de/0/com.android.dialer/shared_prefs/com.android.dialer_preferences.xml
+ * </pre>
+ */
+class SharedPrefConfigProvider implements ConfigProvider {
+  private static final String PREF_PREFIX = "config_provider_prefs_";
+
+  private final Context appContext;
+
+  @Inject
+  SharedPrefConfigProvider(@ApplicationContext Context appContext) {
+    this.appContext = appContext;
+  }
+
+  /** Service to write values into {@link SharedPrefConfigProvider} using adb. */
+  public static class Service extends IntentService {
+
+    public Service() {
+      super("SharedPrefConfigProvider.Service");
+    }
+
+    @Override
+    protected void onHandleIntent(@Nullable Intent intent) {
+      if (intent == null || intent.getExtras() == null || intent.getExtras().size() != 1) {
+        LogUtil.w("SharedPrefConfigProvider.Service.onHandleIntent", "must set exactly one extra");
+        return;
+      }
+      String key = intent.getExtras().keySet().iterator().next();
+      Object value = intent.getExtras().get(key);
+      put(key, value);
+    }
+
+    private void put(String key, Object value) {
+      Editor editor = getSharedPrefs(getApplicationContext()).edit();
+      String prefixedKey = PREF_PREFIX + key;
+      if (value instanceof Boolean) {
+        editor.putBoolean(prefixedKey, (Boolean) value);
+      } else if (value instanceof Long) {
+        editor.putLong(prefixedKey, (Long) value);
+      } else if (value instanceof String) {
+        editor.putString(prefixedKey, (String) value);
+      } else {
+        throw Assert.createAssertionFailException("unsupported extra type: " + value.getClass());
+      }
+      editor.apply();
+    }
+  }
+
+  @Override
+  public String getString(String key, String defaultValue) {
+    return bypassStrictMode(
+        () -> getSharedPrefs(appContext).getString(PREF_PREFIX + key, defaultValue));
+  }
+
+  @Override
+  public long getLong(String key, long defaultValue) {
+    return bypassStrictMode(
+        () -> getSharedPrefs(appContext).getLong(PREF_PREFIX + key, defaultValue));
+  }
+
+  @Override
+  public boolean getBoolean(String key, boolean defaultValue) {
+    return bypassStrictMode(
+        () -> getSharedPrefs(appContext).getBoolean(PREF_PREFIX + key, defaultValue));
+  }
+
+  private static SharedPreferences getSharedPrefs(Context appContext) {
+    return DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(appContext);
+  }
+
+  private interface Provider<T> {
+    T get();
+  }
+
+  // Reading shared prefs on the main thread is generally safe since a single instance is cached.
+  private static <T> T bypassStrictMode(Provider<T> provider) {
+    StrictMode.ThreadPolicy oldPolicy = StrictMode.allowThreadDiskReads();
+    try {
+      return provider.get();
+    } finally {
+      StrictMode.setThreadPolicy(oldPolicy);
+    }
+  }
+}
diff --git a/java/com/android/dialer/configprovider/SharedPrefConfigProviderModule.java b/java/com/android/dialer/configprovider/SharedPrefConfigProviderModule.java
new file mode 100644
index 0000000..fe1c908
--- /dev/null
+++ b/java/com/android/dialer/configprovider/SharedPrefConfigProviderModule.java
@@ -0,0 +1,30 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.configprovider;
+
+import dagger.Binds;
+import dagger.Module;
+import javax.inject.Singleton;
+
+/** Dagger module providing {@link ConfigProvider} based on shared preferences. */
+@Module
+public abstract class SharedPrefConfigProviderModule {
+
+  @Binds
+  @Singleton
+  abstract ConfigProvider to(SharedPrefConfigProvider impl);
+}
diff --git a/java/com/android/dialer/constants/Constants.java b/java/com/android/dialer/constants/Constants.java
index d92c0bc..076393e 100644
--- a/java/com/android/dialer/constants/Constants.java
+++ b/java/com/android/dialer/constants/Constants.java
@@ -53,5 +53,8 @@
   @NonNull
   public abstract String getFileProviderAuthority();
 
+  @NonNull
+  public abstract String getAnnotatedCallLogProviderAuthority();
+
   protected Constants() {}
 }
diff --git a/java/com/android/dialer/constants/ScheduledJobIds.java b/java/com/android/dialer/constants/ScheduledJobIds.java
index 2fed4ef..a54adc7 100644
--- a/java/com/android/dialer/constants/ScheduledJobIds.java
+++ b/java/com/android/dialer/constants/ScheduledJobIds.java
@@ -32,6 +32,7 @@
   public static final int VVM_TASK_SCHEDULER_JOB = 200;
   public static final int VVM_STATUS_CHECK_JOB = 201;
   public static final int VVM_DEVICE_PROVISIONED_JOB = 202;
+  public static final int VVM_TRANSCRIPTION_JOB = 203;
 
   public static final int VOIP_REGISTRATION = 300;
 
diff --git a/java/com/android/incallui/calllocation/impl/TrafficStatsTags.java b/java/com/android/dialer/constants/TrafficStatsTags.java
similarity index 61%
rename from java/com/android/incallui/calllocation/impl/TrafficStatsTags.java
rename to java/com/android/dialer/constants/TrafficStatsTags.java
index 02cc2e0..4e61404 100644
--- a/java/com/android/incallui/calllocation/impl/TrafficStatsTags.java
+++ b/java/com/android/dialer/constants/TrafficStatsTags.java
@@ -11,19 +11,18 @@
  * distributed under the License is distributed on an "AS IS" BASIS,
  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  * See the License for the specific language governing permissions and
- * limitations under the License
+ * limitations under the License.
  */
 
-package com.android.incallui.calllocation.impl;
+package com.android.dialer.constants;
 
-/** Constants used for logging */
+/** Registry of tags for {@link android.net.TrafficStats#setThreadStatsTag(int)} */
 public class TrafficStatsTags {
-
-  /**
-   * Must be greater than {@link com.android.contacts.common.util.TrafficStatsTags#TAG_MAX}, to
-   * respect the namespace of the tags in ContactsCommon.
-   */
+  public static final int CONTACT_PHOTO_DOWNLOAD_TAG = 0x0001;
+  public static final int NEARBY_PLACES_TAG = 0xaaaa;
+  public static final int REVERSE_LOOKUP_CONTACT_TAG = 0xbaaa;
+  public static final int REVERSE_LOOKUP_IMAGE_TAG = 0xbaab;
   public static final int DOWNLOAD_LOCATION_MAP_TAG = 0xd000;
-
   public static final int REVERSE_GEOCODE_TAG = 0xd001;
+  public static final int VISUAL_VOICEMAIL_TAG = 0xd002;
 }
diff --git a/java/com/android/dialer/constants/aospdialer/ConstantsImpl.java b/java/com/android/dialer/constants/aospdialer/ConstantsImpl.java
index 6b78b98..1111732 100644
--- a/java/com/android/dialer/constants/aospdialer/ConstantsImpl.java
+++ b/java/com/android/dialer/constants/aospdialer/ConstantsImpl.java
@@ -34,4 +34,10 @@
   public String getFileProviderAuthority() {
     return "com.android.dialer.files";
   }
+
+  @NonNull
+  @Override
+  public String getAnnotatedCallLogProviderAuthority() {
+    return "com.android.dialer.annotatedcalllog";
+  }
 }
diff --git a/java/com/android/dialer/contactactions/AndroidManifest.xml b/java/com/android/dialer/contactactions/AndroidManifest.xml
new file mode 100644
index 0000000..a64066e
--- /dev/null
+++ b/java/com/android/dialer/contactactions/AndroidManifest.xml
@@ -0,0 +1,16 @@
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<manifest package="com.android.dialer.contactactions"/>
diff --git a/java/com/android/dialer/contactactions/ContactActionBottomSheet.java b/java/com/android/dialer/contactactions/ContactActionBottomSheet.java
new file mode 100644
index 0000000..4718ff0
--- /dev/null
+++ b/java/com/android/dialer/contactactions/ContactActionBottomSheet.java
@@ -0,0 +1,136 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.contactactions;
+
+import android.content.Context;
+import android.net.Uri;
+import android.os.Bundle;
+import android.support.design.widget.BottomSheetDialog;
+import android.text.TextUtils;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.view.ViewGroup;
+import android.widget.ImageView;
+import android.widget.LinearLayout;
+import android.widget.TextView;
+import com.android.contacts.common.ContactPhotoManager;
+import com.android.dialer.common.Assert;
+import com.android.dialer.dialercontact.DialerContact;
+import java.util.List;
+
+/**
+ * {@link BottomSheetDialog} used for building a list of contact actions in a bottom sheet menu.
+ *
+ * <p>{@link #show(Context, DialerContact, List)} should be used to create and display the menu.
+ * Modules are built using {@link ContactActionModule} and some defaults are provided by {@link
+ * IntentModule} and {@link DividerModule}.
+ */
+public class ContactActionBottomSheet extends BottomSheetDialog implements OnClickListener {
+
+  private final List<ContactActionModule> modules;
+  private final DialerContact contact;
+
+  private ContactActionBottomSheet(
+      Context context, DialerContact contact, List<ContactActionModule> modules) {
+    super(context);
+    this.modules = modules;
+    this.contact = contact;
+    setContentView(LayoutInflater.from(context).inflate(R.layout.sheet_layout, null));
+  }
+
+  public static ContactActionBottomSheet show(
+      Context context, DialerContact contact, List<ContactActionModule> modules) {
+    ContactActionBottomSheet sheet = new ContactActionBottomSheet(context, contact, modules);
+    sheet.show();
+    return sheet;
+  }
+
+  @Override
+  protected void onCreate(Bundle bundle) {
+    super.onCreate(bundle);
+    LinearLayout container = Assert.isNotNull(findViewById(R.id.action_container));
+    container.addView(getContactView(container));
+
+    for (ContactActionModule module : modules) {
+      if (module instanceof DividerModule) {
+        container.addView(getDividerView(container));
+      } else {
+        container.addView(getModuleView(container, module));
+      }
+    }
+  }
+
+  // TODO: add on click action to contact.
+  private View getContactView(ViewGroup container) {
+    LayoutInflater inflater = LayoutInflater.from(getContext());
+    View contactView = inflater.inflate(R.layout.contact_layout, container, false);
+
+    ContactPhotoManager.getInstance(getContext())
+        .loadDialerThumbnailOrPhoto(
+            contactView.findViewById(R.id.quick_contact_photo),
+            contact.hasContactUri() ? Uri.parse(contact.getContactUri()) : null,
+            contact.getPhotoId(),
+            contact.hasPhotoUri() ? Uri.parse(contact.getPhotoUri()) : null,
+            contact.getNameOrNumber(),
+            contact.getContactType());
+
+    TextView nameView = contactView.findViewById(R.id.contact_name);
+    TextView numberView = contactView.findViewById(R.id.phone_number);
+
+    nameView.setText(contact.getNameOrNumber());
+    if (!TextUtils.isEmpty(contact.getDisplayNumber())) {
+      numberView.setVisibility(View.VISIBLE);
+      String secondaryInfo =
+          TextUtils.isEmpty(contact.getNumberLabel())
+              ? contact.getDisplayNumber()
+              : getContext()
+                  .getString(
+                      com.android.contacts.common.R.string.call_subject_type_and_number,
+                      contact.getNumberLabel(),
+                      contact.getDisplayNumber());
+      numberView.setText(secondaryInfo);
+    } else {
+      numberView.setVisibility(View.GONE);
+      numberView.setText(null);
+    }
+    return contactView;
+  }
+
+  private View getDividerView(ViewGroup container) {
+    LayoutInflater inflater = LayoutInflater.from(getContext());
+    return inflater.inflate(R.layout.divider_layout, container, false);
+  }
+
+  private View getModuleView(ViewGroup container, ContactActionModule module) {
+    LayoutInflater inflater = LayoutInflater.from(getContext());
+    View moduleView = inflater.inflate(R.layout.module_layout, container, false);
+    ((TextView) moduleView.findViewById(R.id.module_text)).setText(module.getStringId());
+    ((ImageView) moduleView.findViewById(R.id.module_image))
+        .setImageResource(module.getDrawableId());
+    moduleView.setOnClickListener(this);
+    moduleView.setTag(module);
+    return moduleView;
+  }
+
+  @Override
+  public void onClick(View view) {
+    if (((ContactActionModule) view.getTag()).onClick()) {
+      dismiss();
+    }
+  }
+}
diff --git a/java/com/android/dialer/contactactions/ContactActionModule.java b/java/com/android/dialer/contactactions/ContactActionModule.java
new file mode 100644
index 0000000..8089edc
--- /dev/null
+++ b/java/com/android/dialer/contactactions/ContactActionModule.java
@@ -0,0 +1,38 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.contactactions;
+
+import android.support.annotation.DrawableRes;
+import android.support.annotation.StringRes;
+
+/**
+ * Modules used to build {@link ContactActionBottomSheet}.
+ *
+ * <p>Contacts as they relate to this class should be thought of as any entity that an action can be
+ * performed on like unknown/restricted contacts, along with saved and non-saved contacts.
+ */
+public interface ContactActionModule {
+
+  @StringRes
+  int getStringId();
+
+  @DrawableRes
+  int getDrawableId();
+
+  /** @return true if the bottom sheet should close, false otherwise */
+  boolean onClick();
+}
diff --git a/java/com/android/dialer/contactactions/DividerModule.java b/java/com/android/dialer/contactactions/DividerModule.java
new file mode 100644
index 0000000..aabd160
--- /dev/null
+++ b/java/com/android/dialer/contactactions/DividerModule.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.contactactions;
+
+import com.android.dialer.common.Assert;
+
+/**
+ * A module that inserts a grey line divider into {@link ContactActionModule}. Layout it provided in
+ * R.layout.divider_layout.xml
+ */
+public final class DividerModule implements ContactActionModule {
+
+  @Override
+  public int getStringId() {
+    throw Assert.createUnsupportedOperationFailException();
+  }
+
+  @Override
+  public int getDrawableId() {
+    throw Assert.createUnsupportedOperationFailException();
+  }
+
+  @Override
+  public boolean onClick() {
+    throw Assert.createUnsupportedOperationFailException();
+  }
+}
diff --git a/java/com/android/dialer/contactactions/IntentModule.java b/java/com/android/dialer/contactactions/IntentModule.java
new file mode 100644
index 0000000..201f521
--- /dev/null
+++ b/java/com/android/dialer/contactactions/IntentModule.java
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.contactactions;
+
+import android.content.Context;
+import android.content.Intent;
+import android.support.annotation.DrawableRes;
+import android.support.annotation.StringRes;
+import com.android.dialer.callintent.CallInitiationType.Type;
+import com.android.dialer.callintent.CallIntentBuilder;
+
+/**
+ * {@link ContactActionModule} useful for making easy to build modules based on starting an intent.
+ */
+public class IntentModule implements ContactActionModule {
+
+  private final Context context;
+  private final Intent intent;
+  private final @StringRes int text;
+  private final @DrawableRes int image;
+
+  public IntentModule(Context context, Intent intent, @StringRes int text, @DrawableRes int image) {
+    this.context = context;
+    this.intent = intent;
+    this.text = text;
+    this.image = image;
+  }
+
+  @Override
+  public int getStringId() {
+    return text;
+  }
+
+  @Override
+  public int getDrawableId() {
+    return image;
+  }
+
+  @Override
+  public boolean onClick() {
+    context.startActivity(intent);
+    return true;
+  }
+
+  public static IntentModule newCallModule(Context context, String number, Type initiationType) {
+    return new IntentModule(
+        context,
+        new CallIntentBuilder(number, initiationType).build(),
+        R.string.call,
+        R.drawable.quantum_ic_call_white_24);
+  }
+
+  public static IntentModule newVideoCallModule(
+      Context context, String number, Type initiationType) {
+    return new IntentModule(
+        context,
+        new CallIntentBuilder(number, initiationType).setIsVideoCall(true).build(),
+        R.string.video_call,
+        R.drawable.quantum_ic_videocam_white_24);
+  }
+}
diff --git a/java/com/android/dialer/contactactions/res/layout/contact_layout.xml b/java/com/android/dialer/contactactions/res/layout/contact_layout.xml
new file mode 100644
index 0000000..bf32971
--- /dev/null
+++ b/java/com/android/dialer/contactactions/res/layout/contact_layout.xml
@@ -0,0 +1,53 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:layout_marginTop="8dp"
+    android:layout_marginBottom="12dp"
+    android:layout_marginEnd="8dp">
+
+  <QuickContactBadge
+      android:id="@+id/quick_contact_photo"
+      android:layout_width="@dimen/contact_actions_image_size"
+      android:layout_height="@dimen/contact_actions_image_size"
+      android:layout_marginStart="@dimen/contact_actions_image_margin"
+      android:layout_marginEnd="@dimen/contact_actions_image_margin"
+      android:padding="4dp"
+      android:focusable="true"/>
+
+  <LinearLayout
+      android:orientation="vertical"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:gravity="center_vertical">
+
+    <TextView
+        android:id="@+id/contact_name"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        style="@style/PrimaryText"/>
+
+    <TextView
+        android:id="@+id/phone_number"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginTop="2dp"
+        style="@style/SecondaryText"/>
+  </LinearLayout>
+</LinearLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/contactactions/res/layout/divider_layout.xml b/java/com/android/dialer/contactactions/res/layout/divider_layout.xml
new file mode 100644
index 0000000..fdee50e
--- /dev/null
+++ b/java/com/android/dialer/contactactions/res/layout/divider_layout.xml
@@ -0,0 +1,23 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<View
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="1dp"
+    android:layout_marginTop="8dp"
+    android:layout_marginBottom="8dp"
+    android:background="#12000000"/>
diff --git a/java/com/android/dialer/contactactions/res/layout/module_layout.xml b/java/com/android/dialer/contactactions/res/layout/module_layout.xml
new file mode 100644
index 0000000..9aee679
--- /dev/null
+++ b/java/com/android/dialer/contactactions/res/layout/module_layout.xml
@@ -0,0 +1,40 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/module_container"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="wrap_content"
+    android:background="?android:attr/selectableItemBackground">
+
+  <ImageView
+      android:id="@+id/module_image"
+      android:layout_width="@dimen/contact_actions_image_size"
+      android:layout_height="@dimen/contact_actions_image_size"
+      android:layout_marginStart="@dimen/contact_actions_image_margin"
+      android:layout_marginEnd="@dimen/contact_actions_image_margin"
+      android:tint="@color/dialer_secondary_text_color"
+      android:scaleType="center"/>
+
+  <TextView
+      android:id="@+id/module_text"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_gravity="center_vertical"
+      style="@style/PrimaryText"/>
+</LinearLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/contactactions/res/layout/sheet_layout.xml b/java/com/android/dialer/contactactions/res/layout/sheet_layout.xml
new file mode 100644
index 0000000..6984367
--- /dev/null
+++ b/java/com/android/dialer/contactactions/res/layout/sheet_layout.xml
@@ -0,0 +1,24 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/action_container"
+    android:orientation="vertical"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"
+    android:paddingTop="4dp"
+    android:paddingBottom="8dp"/>
diff --git a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml b/java/com/android/dialer/contactactions/res/values/dimens.xml
similarity index 75%
copy from java/com/android/incallui/res/drawable/img_conference_automirrored.xml
copy to java/com/android/dialer/contactactions/res/values/dimens.xml
index 78b2876..47bf804 100644
--- a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml
+++ b/java/com/android/dialer/contactactions/res/values/dimens.xml
@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -15,7 +14,7 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/img_conference"/>
\ No newline at end of file
+<resources>
+  <dimen name="contact_actions_image_size">48dp</dimen>
+  <dimen name="contact_actions_image_margin">12dp</dimen>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/contactsfragment/AddContactViewHolder.java b/java/com/android/dialer/contactsfragment/AddContactViewHolder.java
new file mode 100644
index 0000000..09c222e
--- /dev/null
+++ b/java/com/android/dialer/contactsfragment/AddContactViewHolder.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.contactsfragment;
+
+import android.content.Context;
+import android.support.v7.widget.RecyclerView.ViewHolder;
+import android.view.View;
+import android.view.View.OnClickListener;
+import com.android.dialer.util.DialerUtils;
+import com.android.dialer.util.IntentUtil;
+
+/** ViewHolder for {@link ContactsFragment} to display add contact row. */
+final class AddContactViewHolder extends ViewHolder implements OnClickListener {
+
+  private final Context context;
+
+  AddContactViewHolder(View view) {
+    super(view);
+    view.setOnClickListener(this);
+    context = view.getContext();
+  }
+
+  @Override
+  public void onClick(View v) {
+    DialerUtils.startActivityWithErrorToast(
+        context, IntentUtil.getNewContactIntent(), R.string.add_contact_not_available);
+  }
+}
diff --git a/java/com/android/dialer/contactsfragment/ContactViewHolder.java b/java/com/android/dialer/contactsfragment/ContactViewHolder.java
index 5df106d..586e22a 100644
--- a/java/com/android/dialer/contactsfragment/ContactViewHolder.java
+++ b/java/com/android/dialer/contactsfragment/ContactViewHolder.java
@@ -16,6 +16,7 @@
 
 package com.android.dialer.contactsfragment;
 
+import android.content.Context;
 import android.net.Uri;
 import android.provider.ContactsContract.QuickContact;
 import android.support.v7.widget.RecyclerView;
@@ -25,6 +26,8 @@
 import android.widget.QuickContactBadge;
 import android.widget.TextView;
 import com.android.dialer.common.Assert;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 
 /** View holder for a contact. */
 final class ContactViewHolder extends RecyclerView.ViewHolder implements OnClickListener {
@@ -32,12 +35,14 @@
   private final TextView header;
   private final TextView name;
   private final QuickContactBadge photo;
+  private final Context context;
 
   private String headerText;
   private Uri contactUri;
 
   public ContactViewHolder(View itemView) {
     super(itemView);
+    context = itemView.getContext();
     itemView.findViewById(R.id.click_target).setOnClickListener(this);
     header = (TextView) itemView.findViewById(R.id.header);
     name = (TextView) itemView.findViewById(R.id.contact_name);
@@ -60,6 +65,10 @@
     name.setText(displayName);
     header.setText(headerText);
     header.setVisibility(showHeader ? View.VISIBLE : View.INVISIBLE);
+
+    Logger.get(context)
+        .logQuickContactOnTouch(
+            photo, InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_CONTACTS_FRAGMENT_BADGE, true);
   }
 
   public QuickContactBadge getPhoto() {
@@ -76,6 +85,8 @@
 
   @Override
   public void onClick(View v) {
+    Logger.get(context)
+        .logInteraction(InteractionEvent.Type.OPEN_QUICK_CONTACT_FROM_CONTACTS_FRAGMENT_ITEM);
     QuickContact.showQuickContact(
         photo.getContext(), photo, contactUri, QuickContact.MODE_LARGE, null /* excludeMimes */);
   }
diff --git a/java/com/android/dialer/contactsfragment/ContactsAdapter.java b/java/com/android/dialer/contactsfragment/ContactsAdapter.java
index 4692eff..d8ee3d1 100644
--- a/java/com/android/dialer/contactsfragment/ContactsAdapter.java
+++ b/java/com/android/dialer/contactsfragment/ContactsAdapter.java
@@ -20,16 +20,29 @@
 import android.database.Cursor;
 import android.net.Uri;
 import android.provider.ContactsContract.Contacts;
+import android.support.annotation.IntDef;
 import android.support.v4.util.ArrayMap;
 import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
+import android.view.View;
 import android.view.ViewGroup;
-import android.widget.TextView;
 import com.android.contacts.common.ContactPhotoManager;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
 import com.android.dialer.common.Assert;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
 
 /** List adapter for the union of all contacts associated with every account on the device. */
-final class ContactsAdapter extends RecyclerView.Adapter<ContactViewHolder> {
+final class ContactsAdapter extends RecyclerView.Adapter<RecyclerView.ViewHolder> {
+
+  private static final int UNKNOWN_VIEW_TYPE = 0;
+  private static final int ADD_CONTACT_VIEW_TYPE = 1;
+  private static final int CONTACT_VIEW_TYPE = 2;
+
+  /** An Enum for the different row view types shown by this adapter. */
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({UNKNOWN_VIEW_TYPE, ADD_CONTACT_VIEW_TYPE, CONTACT_VIEW_TYPE})
+  @interface ContactsViewType {}
 
   private final ArrayMap<ContactViewHolder, Integer> holderMap = new ArrayMap<>();
   private final Context context;
@@ -41,7 +54,7 @@
   // Number of contacts that correspond to each header in {@code headers}.
   private final int[] counts;
 
-  public ContactsAdapter(Context context, Cursor cursor) {
+  ContactsAdapter(Context context, Cursor cursor) {
     this.context = context;
     this.cursor = cursor;
     headers = cursor.getExtras().getStringArray(Contacts.EXTRA_ADDRESS_BOOK_INDEX_TITLES);
@@ -49,15 +62,31 @@
   }
 
   @Override
-  public ContactViewHolder onCreateViewHolder(ViewGroup parent, int position) {
-    return new ContactViewHolder(
-        LayoutInflater.from(context).inflate(R.layout.contact_row, parent, false));
+  public RecyclerView.ViewHolder onCreateViewHolder(
+      ViewGroup parent, @ContactsViewType int viewType) {
+    switch (viewType) {
+      case ADD_CONTACT_VIEW_TYPE:
+        return new AddContactViewHolder(
+            LayoutInflater.from(context).inflate(R.layout.add_contact_row, parent, false));
+      case CONTACT_VIEW_TYPE:
+        return new ContactViewHolder(
+            LayoutInflater.from(context).inflate(R.layout.contact_row, parent, false));
+      case UNKNOWN_VIEW_TYPE:
+      default:
+        throw Assert.createIllegalStateFailException("Invalid view type: " + viewType);
+    }
   }
 
   @Override
-  public void onBindViewHolder(ContactViewHolder contactViewHolder, int position) {
+  public void onBindViewHolder(RecyclerView.ViewHolder viewHolder, int position) {
+    if (viewHolder instanceof AddContactViewHolder) {
+      return;
+    }
+
+    ContactViewHolder contactViewHolder = (ContactViewHolder) viewHolder;
     holderMap.put(contactViewHolder, position);
-    cursor.moveToPosition(position);
+    // Cursor should be offset by 1 because of add contact row
+    cursor.moveToPosition(position - 1);
 
     String name = getDisplayName(cursor);
     String header = getHeaderString(position);
@@ -70,7 +99,7 @@
             getPhotoId(cursor),
             getPhotoUri(cursor),
             name,
-            0);
+            LetterTileDrawable.TYPE_DEFAULT);
 
     String photoDescription =
         context.getString(com.android.contacts.common.R.string.description_quick_contact_for, name);
@@ -79,44 +108,36 @@
     // Always show the view holder's header if it's the first item in the list. Otherwise, compare
     // it to the previous element and only show the anchored header if the row elements fall into
     // the same sublists.
-    if (position == 0) {
-      contactViewHolder.bind(header, name, contactUri, true);
-    } else {
-      boolean showHeader = !header.equals(getHeaderString(position - 1));
-      contactViewHolder.bind(header, name, contactUri, showHeader);
+    boolean showHeader = position == 0 || !header.equals(getHeaderString(position - 1));
+    contactViewHolder.bind(header, name, contactUri, showHeader);
+  }
+
+  @Override
+  public @ContactsViewType int getItemViewType(int position) {
+    return position == 0 ? ADD_CONTACT_VIEW_TYPE : CONTACT_VIEW_TYPE;
+  }
+
+  @Override
+  public void onViewRecycled(RecyclerView.ViewHolder contactViewHolder) {
+    super.onViewRecycled(contactViewHolder);
+    if (contactViewHolder instanceof ContactViewHolder) {
+      holderMap.remove(contactViewHolder);
     }
   }
 
   public void refreshHeaders() {
     for (ContactViewHolder holder : holderMap.keySet()) {
-      onBindViewHolder(holder, holderMap.get(holder));
+      int position = holderMap.get(holder);
+      boolean showHeader =
+          position == 0 || !getHeaderString(position).equals(getHeaderString(position - 1));
+      int visibility = showHeader ? View.VISIBLE : View.INVISIBLE;
+      holder.getHeaderView().setVisibility(visibility);
     }
   }
 
   @Override
   public int getItemCount() {
-    return cursor == null ? 0 : cursor.getCount();
-  }
-
-  public String getHeader(int position) {
-    return getHolderAt(position).getHeader();
-  }
-
-  public TextView getHeaderView(int position) {
-    return getHolderAt(position).getHeaderView();
-  }
-
-  public void setHeaderVisibility(int position, int visibility) {
-    getHolderAt(position).getHeaderView().setVisibility(visibility);
-  }
-
-  private ContactViewHolder getHolderAt(int position) {
-    for (ContactViewHolder holder : holderMap.keySet()) {
-      if (holderMap.get(holder) == position) {
-        return holder;
-      }
-    }
-    throw Assert.createIllegalStateFailException("No holder for position: " + position);
+    return (cursor == null ? 0 : cursor.getCount()) + 1; // add contact
   }
 
   private static String getDisplayName(Cursor cursor) {
@@ -138,7 +159,12 @@
     return Contacts.getLookupUri(contactId, lookupKey);
   }
 
-  private String getHeaderString(int position) {
+  public String getHeaderString(int position) {
+    if (position == 0) {
+      return "+";
+    }
+    position--;
+
     int index = -1;
     int sum = 0;
     while (sum <= position) {
diff --git a/java/com/android/dialer/contactsfragment/ContactsCursorLoader.java b/java/com/android/dialer/contactsfragment/ContactsCursorLoader.java
index 6d4d210..a22f7eb 100644
--- a/java/com/android/dialer/contactsfragment/ContactsCursorLoader.java
+++ b/java/com/android/dialer/contactsfragment/ContactsCursorLoader.java
@@ -29,7 +29,7 @@
   public static final int CONTACT_PHOTO_URI = 3;
   public static final int CONTACT_LOOKUP_KEY = 4;
 
-  public static final String[] CONTACTS_PROJECTION =
+  public static final String[] CONTACTS_PROJECTION_DISPLAY_NAME_PRIMARY =
       new String[] {
         Contacts._ID, // 0
         Contacts.DISPLAY_NAME_PRIMARY, // 1
@@ -38,16 +38,35 @@
         Contacts.LOOKUP_KEY, // 4
       };
 
-  public ContactsCursorLoader(Context context) {
+  public static final String[] CONTACTS_PROJECTION_DISPLAY_NAME_ALTERNATIVE =
+      new String[] {
+        Contacts._ID, // 0
+        Contacts.DISPLAY_NAME_ALTERNATIVE, // 1
+        Contacts.PHOTO_ID, // 2
+        Contacts.PHOTO_THUMBNAIL_URI, // 3
+        Contacts.LOOKUP_KEY, // 4
+      };
+
+  private ContactsCursorLoader(Context context, String[] contactProjection, String sortKey) {
     super(
         context,
         Contacts.CONTENT_URI
             .buildUpon()
             .appendQueryParameter(Contacts.EXTRA_ADDRESS_BOOK_INDEX, "true")
             .build(),
-        CONTACTS_PROJECTION,
+        contactProjection,
+        contactProjection[CONTACT_DISPLAY_NAME] + " IS NOT NULL",
         null,
-        null,
-        Contacts.SORT_KEY_PRIMARY + " ASC");
+        sortKey + " ASC");
+  }
+
+  public static ContactsCursorLoader createInstanceDisplayNamePrimary(
+      Context context, String sortKey) {
+    return new ContactsCursorLoader(context, CONTACTS_PROJECTION_DISPLAY_NAME_PRIMARY, sortKey);
+  }
+
+  public static ContactsCursorLoader createInstanceDisplayNameAlternative(
+      Context context, String sortKey) {
+    return new ContactsCursorLoader(context, CONTACTS_PROJECTION_DISPLAY_NAME_ALTERNATIVE, sortKey);
   }
 }
diff --git a/java/com/android/dialer/contactsfragment/ContactsFragment.java b/java/com/android/dialer/contactsfragment/ContactsFragment.java
index ea662fc..e627718 100644
--- a/java/com/android/dialer/contactsfragment/ContactsFragment.java
+++ b/java/com/android/dialer/contactsfragment/ContactsFragment.java
@@ -19,60 +19,131 @@
 import android.app.Fragment;
 import android.app.LoaderManager.LoaderCallbacks;
 import android.content.Loader;
+import android.content.pm.PackageManager;
 import android.database.Cursor;
 import android.os.Bundle;
+import android.provider.ContactsContract.Contacts;
 import android.support.annotation.Nullable;
+import android.support.v13.app.FragmentCompat;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
+import android.support.v7.widget.RecyclerView.Recycler;
+import android.support.v7.widget.RecyclerView.State;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.View.OnScrollChangeListener;
 import android.view.ViewGroup;
 import android.widget.TextView;
+import com.android.contacts.common.preference.ContactsPreferences;
+import com.android.contacts.common.preference.ContactsPreferences.ChangeListener;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.performancereport.PerformanceReport;
+import com.android.dialer.util.DialerUtils;
+import com.android.dialer.util.IntentUtil;
 import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.widget.EmptyContentView;
+import com.android.dialer.widget.EmptyContentView.OnEmptyViewActionButtonClickedListener;
+import java.util.Arrays;
 
 /** Fragment containing a list of all contacts. */
 public class ContactsFragment extends Fragment
-    implements LoaderCallbacks<Cursor>, OnScrollChangeListener {
+    implements LoaderCallbacks<Cursor>,
+        OnScrollChangeListener,
+        OnEmptyViewActionButtonClickedListener,
+        ChangeListener {
 
+  public static final int READ_CONTACTS_PERMISSION_REQUEST_CODE = 1;
+
+  private FastScroller fastScroller;
   private TextView anchoredHeader;
   private RecyclerView recyclerView;
   private LinearLayoutManager manager;
   private ContactsAdapter adapter;
+  private EmptyContentView emptyContentView;
+
+  private ContactsPreferences contactsPrefs;
+
+  @Override
+  public void onCreate(@Nullable Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    contactsPrefs = new ContactsPreferences(getContext());
+    contactsPrefs.registerChangeListener(this);
+  }
 
   @Nullable
   @Override
   public View onCreateView(
       LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
     View view = inflater.inflate(R.layout.fragment_contacts, container, false);
-    anchoredHeader = (TextView) view.findViewById(R.id.header);
-    manager = new LinearLayoutManager(getContext());
+    fastScroller = view.findViewById(R.id.fast_scroller);
+    anchoredHeader = view.findViewById(R.id.header);
+    recyclerView = view.findViewById(R.id.recycler_view);
 
-    // TODO: Handle contacts permission denied view
-    // TODO: Handle 0 contacts layout
-    recyclerView = (RecyclerView) view.findViewById(R.id.recycler_view);
-    recyclerView.setLayoutManager(manager);
-    getLoaderManager().initLoader(0, null, this);
+    emptyContentView = view.findViewById(R.id.empty_list_view);
+    emptyContentView.setImage(R.drawable.empty_contacts);
+    emptyContentView.setActionClickedListener(this);
 
     if (PermissionsUtil.hasContactsReadPermissions(getContext())) {
       getLoaderManager().initLoader(0, null, this);
+    } else {
+      emptyContentView.setDescription(R.string.permission_no_contacts);
+      emptyContentView.setActionLabel(R.string.permission_single_turn_on);
+      emptyContentView.setVisibility(View.VISIBLE);
     }
 
     return view;
   }
 
   @Override
+  public void onChange() {
+    if (getActivity() != null && isAdded()) {
+      getLoaderManager().restartLoader(0, null, this);
+    }
+  }
+
+  /** @return a loader according to sort order and display order. */
+  @Override
   public Loader<Cursor> onCreateLoader(int id, Bundle args) {
-    return new ContactsCursorLoader(getContext());
+    boolean sortOrderPrimary =
+        (contactsPrefs.getSortOrder() == ContactsPreferences.SORT_ORDER_PRIMARY);
+    boolean displayOrderPrimary =
+        (contactsPrefs.getDisplayOrder() == ContactsPreferences.DISPLAY_ORDER_PRIMARY);
+
+    String sortKey = sortOrderPrimary ? Contacts.SORT_KEY_PRIMARY : Contacts.SORT_KEY_ALTERNATIVE;
+    return displayOrderPrimary
+        ? ContactsCursorLoader.createInstanceDisplayNamePrimary(getContext(), sortKey)
+        : ContactsCursorLoader.createInstanceDisplayNameAlternative(getContext(), sortKey);
   }
 
   @Override
   public void onLoadFinished(Loader<Cursor> loader, Cursor cursor) {
-    // TODO setup fast scroller.
-    adapter = new ContactsAdapter(getContext(), cursor);
-    recyclerView.setAdapter(adapter);
-    if (adapter.getItemCount() > 1) {
-      recyclerView.setOnScrollChangeListener(this);
+    if (cursor.getCount() == 0) {
+      emptyContentView.setDescription(R.string.all_contacts_empty);
+      emptyContentView.setActionLabel(R.string.all_contacts_empty_add_contact_action);
+      emptyContentView.setVisibility(View.VISIBLE);
+    } else {
+      emptyContentView.setVisibility(View.GONE);
+      adapter = new ContactsAdapter(getContext(), cursor);
+      manager =
+          new LinearLayoutManager(getContext()) {
+            @Override
+            public void onLayoutChildren(Recycler recycler, State state) {
+              super.onLayoutChildren(recycler, state);
+              int itemsShown = findLastVisibleItemPosition() - findFirstVisibleItemPosition() + 1;
+              if (adapter.getItemCount() > itemsShown) {
+                fastScroller.setVisibility(View.VISIBLE);
+                recyclerView.setOnScrollChangeListener(ContactsFragment.this);
+              } else {
+                fastScroller.setVisibility(View.GONE);
+              }
+            }
+          };
+
+      recyclerView.setLayoutManager(manager);
+      recyclerView.setAdapter(adapter);
+      PerformanceReport.logOnScrollStateChange(recyclerView);
+      fastScroller.setup(adapter, manager);
     }
   }
 
@@ -81,6 +152,7 @@
     recyclerView.setAdapter(null);
     recyclerView.setOnScrollChangeListener(null);
     adapter = null;
+    contactsPrefs.unregisterChangeListener();
   }
 
   /*
@@ -95,8 +167,10 @@
    */
   @Override
   public void onScrollChange(View v, int scrollX, int scrollY, int oldScrollX, int oldScrollY) {
+    fastScroller.updateContainerAndScrollBarPosition(recyclerView);
     int firstVisibleItem = manager.findFirstVisibleItemPosition();
     int firstCompletelyVisible = manager.findFirstCompletelyVisibleItemPosition();
+    String anchoredHeaderString = adapter.getHeaderString(firstCompletelyVisible);
 
     // If the user swipes to the top of the list very quickly, there is some strange behavior
     // between this method updating headers and adapter#onBindViewHolder updating headers.
@@ -104,15 +178,57 @@
     if (firstVisibleItem == firstCompletelyVisible && firstVisibleItem == 0) {
       adapter.refreshHeaders();
       anchoredHeader.setVisibility(View.INVISIBLE);
-    } else {
-      boolean showAnchor =
-          adapter.getHeader(firstVisibleItem).equals(adapter.getHeader(firstCompletelyVisible));
-      anchoredHeader.setText(adapter.getHeader(firstCompletelyVisible));
-      anchoredHeader.setVisibility(showAnchor ? View.VISIBLE : View.INVISIBLE);
+    } else if (firstVisibleItem != 0) { // skip the add contact row
+      if (adapter.getHeaderString(firstVisibleItem).equals(anchoredHeaderString)) {
+        anchoredHeader.setText(anchoredHeaderString);
+        anchoredHeader.setVisibility(View.VISIBLE);
+        getContactHolder(firstVisibleItem).getHeaderView().setVisibility(View.INVISIBLE);
+        getContactHolder(firstCompletelyVisible).getHeaderView().setVisibility(View.INVISIBLE);
+      } else {
+        anchoredHeader.setVisibility(View.INVISIBLE);
+        getContactHolder(firstVisibleItem).getHeaderView().setVisibility(View.VISIBLE);
+        getContactHolder(firstCompletelyVisible).getHeaderView().setVisibility(View.VISIBLE);
+      }
+    }
+  }
 
-      int rowHeaderVisibility = showAnchor ? View.INVISIBLE : View.VISIBLE;
-      adapter.setHeaderVisibility(firstVisibleItem, rowHeaderVisibility);
-      adapter.setHeaderVisibility(firstCompletelyVisible, rowHeaderVisibility);
+  private ContactViewHolder getContactHolder(int position) {
+    return ((ContactViewHolder) recyclerView.findViewHolderForAdapterPosition(position));
+  }
+
+  @Override
+  public void onEmptyViewActionButtonClicked() {
+    if (emptyContentView.getActionLabel() == R.string.permission_single_turn_on) {
+      String[] deniedPermissions =
+          PermissionsUtil.getPermissionsCurrentlyDenied(
+              getContext(), PermissionsUtil.allContactsGroupPermissionsUsedInDialer);
+      if (deniedPermissions.length > 0) {
+        LogUtil.i(
+            "ContactsFragment.onEmptyViewActionButtonClicked",
+            "Requesting permissions: " + Arrays.toString(deniedPermissions));
+        FragmentCompat.requestPermissions(
+            this, deniedPermissions, READ_CONTACTS_PERMISSION_REQUEST_CODE);
+      }
+
+    } else if (emptyContentView.getActionLabel()
+        == R.string.all_contacts_empty_add_contact_action) {
+      // Add new contact
+      DialerUtils.startActivityWithErrorToast(
+          getContext(), IntentUtil.getNewContactIntent(), R.string.add_contact_not_available);
+    } else {
+      throw Assert.createIllegalStateFailException("Invalid empty content view action label.");
+    }
+  }
+
+  @Override
+  public void onRequestPermissionsResult(
+      int requestCode, String[] permissions, int[] grantResults) {
+    if (requestCode == READ_CONTACTS_PERMISSION_REQUEST_CODE) {
+      if (grantResults.length >= 1 && PackageManager.PERMISSION_GRANTED == grantResults[0]) {
+        // Force a refresh of the data since we were missing the permission before this.
+        emptyContentView.setVisibility(View.GONE);
+        getLoaderManager().initLoader(0, null, this);
+      }
     }
   }
 }
diff --git a/java/com/android/dialer/contactsfragment/FastScroller.java b/java/com/android/dialer/contactsfragment/FastScroller.java
new file mode 100644
index 0000000..0223c5f
--- /dev/null
+++ b/java/com/android/dialer/contactsfragment/FastScroller.java
@@ -0,0 +1,130 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.contactsfragment;
+
+import android.content.Context;
+import android.support.annotation.NonNull;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.util.AttributeSet;
+import android.view.MotionEvent;
+import android.view.View;
+import android.widget.RelativeLayout;
+import android.widget.TextView;
+
+/** Widget to add fast scrolling to {@link ContactsFragment}. */
+public class FastScroller extends RelativeLayout {
+
+  private final int touchTargetWidth;
+
+  private ContactsAdapter adapter;
+  private LinearLayoutManager layoutManager;
+
+  private TextView container;
+  private View scrollBar;
+
+  private boolean dragStarted;
+
+  public FastScroller(Context context, AttributeSet attrs) {
+    super(context, attrs);
+    touchTargetWidth =
+        context.getResources().getDimensionPixelSize(R.dimen.fast_scroller_touch_target_width);
+  }
+
+  @Override
+  protected void onFinishInflate() {
+    super.onFinishInflate();
+    container = findViewById(R.id.fast_scroller_container);
+    scrollBar = findViewById(R.id.fast_scroller_scroll_bar);
+  }
+
+  void setup(ContactsAdapter adapter, LinearLayoutManager layoutManager) {
+    this.adapter = adapter;
+    this.layoutManager = layoutManager;
+    setVisibility(VISIBLE);
+  }
+
+  @Override
+  public boolean onTouchEvent(@NonNull MotionEvent event) {
+    // Don't override if touch event isn't within desired touch target and dragging hasn't started.
+    if (!dragStarted && getWidth() - touchTargetWidth - event.getX() > 0) {
+      return super.onTouchEvent(event);
+    }
+
+    switch (event.getAction()) {
+      case MotionEvent.ACTION_DOWN:
+        dragStarted = true;
+        container.setVisibility(VISIBLE);
+        scrollBar.setSelected(true);
+        // fall through
+      case MotionEvent.ACTION_MOVE:
+        setContainerAndScrollBarPosition(event.getY());
+        setRecyclerViewPosition(event.getY());
+        return true;
+      case MotionEvent.ACTION_UP:
+      case MotionEvent.ACTION_CANCEL:
+        dragStarted = false;
+        container.setVisibility(INVISIBLE);
+        scrollBar.setSelected(false);
+        return true;
+    }
+    return super.onTouchEvent(event);
+  }
+
+  private void setRecyclerViewPosition(float y) {
+    final int itemCount = adapter.getItemCount();
+    float scrolledPosition = getScrolledPercentage(y) * (float) itemCount;
+    int targetPos = getValueInRange(0, itemCount - 1, (int) scrolledPosition);
+    layoutManager.scrollToPositionWithOffset(targetPos, 0);
+    container.setText(adapter.getHeaderString(targetPos));
+  }
+
+  // Returns a float in range [0, 1] which represents the position of the scroller.
+  private float getScrolledPercentage(float y) {
+    if (scrollBar.getY() == 0) {
+      return 0f;
+    } else if (scrollBar.getY() + scrollBar.getHeight() >= getHeight()) {
+      return 1f;
+    } else {
+      return y / (float) getHeight();
+    }
+  }
+
+  private int getValueInRange(int min, int max, int value) {
+    int minimum = Math.max(min, value);
+    return Math.min(minimum, max);
+  }
+
+  void updateContainerAndScrollBarPosition(RecyclerView recyclerView) {
+    if (!scrollBar.isSelected()) {
+      int verticalScrollOffset = recyclerView.computeVerticalScrollOffset();
+      int verticalScrollRange = recyclerView.computeVerticalScrollRange();
+      float proportion = (float) verticalScrollOffset / ((float) verticalScrollRange - getHeight());
+      setContainerAndScrollBarPosition(getHeight() * proportion);
+    }
+  }
+
+  private void setContainerAndScrollBarPosition(float y) {
+    int scrollBarHeight = scrollBar.getHeight();
+    int containerHeight = container.getHeight();
+    scrollBar.setY(
+        getValueInRange(0, getHeight() - scrollBarHeight, (int) (y - scrollBarHeight / 2)));
+    container.setY(
+        getValueInRange(
+            0, getHeight() - containerHeight - scrollBarHeight / 2, (int) (y - containerHeight)));
+  }
+}
diff --git a/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_container_background.xml b/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_container_background.xml
new file mode 100644
index 0000000..a7b2277
--- /dev/null
+++ b/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_container_background.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<shape xmlns:android="http://schemas.android.com/apk/res/android"
+    android:shape="rectangle">
+  <solid android:color="@color/dialer_theme_color"/>
+  <size
+      android:height="@dimen/fast_scroller_container_size"
+      android:width="@dimen/fast_scroller_container_size"/>
+  <corners
+      android:topLeftRadius="@dimen/fast_scroller_container_corner_radius"
+      android:topRightRadius="@dimen/fast_scroller_container_corner_radius"
+      android:bottomLeftRadius="@dimen/fast_scroller_bottom_left_corner_radius"
+      android:bottomRightRadius="@dimen/fast_scroller_bottom_right_corner_radius"/>
+</shape>
\ No newline at end of file
diff --git a/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_scroll_bar.xml b/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_scroll_bar.xml
new file mode 100644
index 0000000..a3e0c25
--- /dev/null
+++ b/java/com/android/dialer/contactsfragment/res/drawable/fast_scroller_scroll_bar.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+  <item android:state_selected="true">
+    <shape android:shape="rectangle">
+      <solid android:color="@color/dialer_theme_color"/>
+      <size android:height="32dp" android:width="4dp"/>
+      <corners android:radius="2dp"/>
+    </shape>
+  </item>
+  <item>
+    <shape android:shape="rectangle">
+      <solid android:color="@color/dialer_secondary_text_color"/>
+      <size android:height="32dp" android:width="4dp"/>
+      <corners android:radius="2dp"/>
+    </shape>
+  </item>
+</selector>
\ No newline at end of file
diff --git a/java/com/android/dialer/contactsfragment/res/layout/add_contact_row.xml b/java/com/android/dialer/contactsfragment/res/layout/add_contact_row.xml
new file mode 100644
index 0000000..dbc7caf
--- /dev/null
+++ b/java/com/android/dialer/contactsfragment/res/layout/add_contact_row.xml
@@ -0,0 +1,50 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<LinearLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/click_target"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="@dimen/row_height"
+    android:layout_marginTop="8dp"
+    android:layout_marginStart="@dimen/header_width"
+    android:layout_marginEnd="@dimen/row_end_margin"
+    android:paddingTop="@dimen/row_top_bottom_padding"
+    android:paddingBottom="@dimen/row_top_bottom_padding"
+    android:paddingStart="@dimen/row_start_padding"
+    android:gravity="center_vertical"
+    android:background="?android:attr/selectableItemBackground">
+
+  <ImageView
+      android:id="@+id/photo"
+      android:layout_width="@dimen/photo_size"
+      android:layout_height="@dimen/photo_size"
+      android:src="@drawable/quantum_ic_person_add_white_24"
+      android:tint="@color/dialer_theme_color"
+      android:scaleType="center"/>
+
+  <TextView
+      android:id="@+id/contact_name"
+      android:layout_width="wrap_content"
+      android:layout_height="match_parent"
+      android:paddingStart="@dimen/text_padding_start"
+      android:paddingEnd="@dimen/text_padding_end"
+      android:gravity="center_vertical"
+      android:fontFamily="sans-serif"
+      android:text="@string/all_contacts_empty_add_contact_action"
+      style="@style/PrimaryText"/>
+</LinearLayout>
diff --git a/java/com/android/dialer/contactsfragment/res/layout/contact_row.xml b/java/com/android/dialer/contactsfragment/res/layout/contact_row.xml
index af87c7f..9e829fe 100644
--- a/java/com/android/dialer/contactsfragment/res/layout/contact_row.xml
+++ b/java/com/android/dialer/contactsfragment/res/layout/contact_row.xml
@@ -43,11 +43,13 @@
 
     <TextView
         android:id="@+id/contact_name"
-        android:layout_width="match_parent"
+        android:layout_width="wrap_content"
         android:layout_height="match_parent"
         android:paddingStart="@dimen/text_padding_start"
         android:paddingEnd="@dimen/text_padding_end"
-        android:gravity="center_vertical|start"
+        android:maxLines="1"
+        android:ellipsize="end"
+        android:gravity="center_vertical"
         android:textSize="@dimen/text_size"
         android:textColor="@color/dialer_primary_text_color"
         android:fontFamily="sans-serif"/>
diff --git a/java/com/android/dialer/contactsfragment/res/layout/fragment_contacts.xml b/java/com/android/dialer/contactsfragment/res/layout/fragment_contacts.xml
index 67b490f..3d58aad 100644
--- a/java/com/android/dialer/contactsfragment/res/layout/fragment_contacts.xml
+++ b/java/com/android/dialer/contactsfragment/res/layout/fragment_contacts.xml
@@ -23,8 +23,47 @@
       android:id="@+id/recycler_view"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
-      android:background="@color/background_dialer_white"/>
+      android:background="@color/background_dialer_light"/>
+
+  <!-- Scrollbars are always on the right side of the screen. Layouts should use Rights/Left instead
+       of Start/End -->
+  <com.android.dialer.contactsfragment.FastScroller
+      android:id="@+id/fast_scroller"
+      android:layout_width="match_parent"
+      android:layout_height="match_parent"
+      android:layout_marginTop="8dp"
+      android:layout_marginBottom="8dp"
+      android:clipChildren="false"
+      android:visibility="gone">
+
+    <TextView
+        android:id="@+id/fast_scroller_container"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_toLeftOf="@+id/fast_scroller_scroll_bar"
+        android:gravity="center"
+        android:textSize="48sp"
+        android:textColor="@color/background_dialer_white"
+        android:visibility="gone"
+        android:background="@drawable/fast_scroller_container_background"/>
+
+    <ImageView
+        android:id="@+id/fast_scroller_scroll_bar"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_marginLeft="8dp"
+        android:layout_alignParentRight="true"
+        android:paddingRight="16dp"
+        android:src="@drawable/fast_scroller_scroll_bar" />
+  </com.android.dialer.contactsfragment.FastScroller>
 
   <!-- Anchored header view -->
   <include layout="@layout/header"/>
+
+  <com.android.dialer.widget.EmptyContentView
+      android:id="@+id/empty_list_view"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:layout_gravity="center"
+      android:visibility="gone"/>
 </FrameLayout>
diff --git a/java/com/android/dialer/contactsfragment/res/values/dimens.xml b/java/com/android/dialer/contactsfragment/res/values/dimens.xml
index 00d7c6d..f120014 100644
--- a/java/com/android/dialer/contactsfragment/res/values/dimens.xml
+++ b/java/com/android/dialer/contactsfragment/res/values/dimens.xml
@@ -25,4 +25,11 @@
   <dimen name="text_padding_start">16dp</dimen>
   <dimen name="text_padding_end">8dp</dimen>
   <dimen name="text_size">16sp</dimen>
-</resources>
+
+  <dimen name="fast_scroller_touch_target_width">20dp</dimen>
+
+  <dimen name="fast_scroller_container_size">88dp</dimen>
+  <dimen name="fast_scroller_container_corner_radius">44dp</dimen>
+  <dimen name="fast_scroller_bottom_right_corner_radius">0px</dimen>
+  <dimen name="fast_scroller_bottom_left_corner_radius">44dp</dimen>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/database/DialerDatabaseHelper.java b/java/com/android/dialer/database/DialerDatabaseHelper.java
index 3488142..6dd7cf4 100644
--- a/java/com/android/dialer/database/DialerDatabaseHelper.java
+++ b/java/com/android/dialer/database/DialerDatabaseHelper.java
@@ -34,6 +34,7 @@
 import android.provider.ContactsContract.Data;
 import android.provider.ContactsContract.Directory;
 import android.support.annotation.VisibleForTesting;
+import android.support.annotation.WorkerThread;
 import android.text.TextUtils;
 import com.android.contacts.common.R;
 import com.android.contacts.common.util.StopWatch;
@@ -46,7 +47,6 @@
 import java.util.HashSet;
 import java.util.Objects;
 import java.util.Set;
-import java.util.concurrent.atomic.AtomicBoolean;
 
 /**
  * Database helper for smart dial. Designed as a singleton to make sure there is only one access
@@ -77,8 +77,6 @@
   private static final int MAX_ENTRIES = 20;
 
   private final Context mContext;
-  private final Object mLock = new Object();
-  private final AtomicBoolean mInUpdate = new AtomicBoolean(false);
   private boolean mIsTestInstance = false;
 
   protected DialerDatabaseHelper(Context context, String databaseName, int dbVersion) {
@@ -596,218 +594,212 @@
    * accordingly. It also queries the deleted contact database to remove newly deleted contacts
    * since last update.
    */
-  public void updateSmartDialDatabase() {
+  @WorkerThread
+  public synchronized void updateSmartDialDatabase() {
     LogUtil.enterBlock("DialerDatabaseHelper.updateSmartDialDatabase");
 
     final SQLiteDatabase db = getWritableDatabase();
 
-    synchronized (mLock) {
-      LogUtil.v("DialerDatabaseHelper.updateSmartDialDatabase", "starting to update database");
-      final StopWatch stopWatch = DEBUG ? StopWatch.start("Updating databases") : null;
+    LogUtil.v("DialerDatabaseHelper.updateSmartDialDatabase", "starting to update database");
+    final StopWatch stopWatch = DEBUG ? StopWatch.start("Updating databases") : null;
 
-      /** Gets the last update time on the database. */
-      final SharedPreferences databaseLastUpdateSharedPref =
-          mContext.getSharedPreferences(DATABASE_LAST_CREATED_SHARED_PREF, Context.MODE_PRIVATE);
-      final String lastUpdateMillis =
-          String.valueOf(databaseLastUpdateSharedPref.getLong(LAST_UPDATED_MILLIS, 0));
+    /** Gets the last update time on the database. */
+    final SharedPreferences databaseLastUpdateSharedPref =
+        mContext.getSharedPreferences(DATABASE_LAST_CREATED_SHARED_PREF, Context.MODE_PRIVATE);
+    final String lastUpdateMillis =
+        String.valueOf(databaseLastUpdateSharedPref.getLong(LAST_UPDATED_MILLIS, 0));
 
-      LogUtil.v(
-          "DialerDatabaseHelper.updateSmartDialDatabase", "last updated at " + lastUpdateMillis);
+    LogUtil.v(
+        "DialerDatabaseHelper.updateSmartDialDatabase", "last updated at " + lastUpdateMillis);
 
-      /** Sets the time after querying the database as the current update time. */
-      final Long currentMillis = System.currentTimeMillis();
+    /** Sets the time after querying the database as the current update time. */
+    final Long currentMillis = System.currentTimeMillis();
 
-      if (DEBUG) {
-        stopWatch.lap("Queried the Contacts database");
-      }
+    if (DEBUG) {
+      stopWatch.lap("Queried the Contacts database");
+    }
 
-      /** Prevents the app from reading the dialer database when updating. */
-      mInUpdate.getAndSet(true);
+    /** Removes contacts that have been deleted. */
+    removeDeletedContacts(db, getDeletedContactCursor(lastUpdateMillis));
+    removePotentiallyCorruptedContacts(db, lastUpdateMillis);
 
-      /** Removes contacts that have been deleted. */
-      removeDeletedContacts(db, getDeletedContactCursor(lastUpdateMillis));
-      removePotentiallyCorruptedContacts(db, lastUpdateMillis);
+    if (DEBUG) {
+      stopWatch.lap("Finished deleting deleted entries");
+    }
 
-      if (DEBUG) {
-        stopWatch.lap("Finished deleting deleted entries");
-      }
-
+    /**
+     * If the database did not exist before, jump through deletion as there is nothing to delete.
+     */
+    if (!lastUpdateMillis.equals("0")) {
       /**
-       * If the database did not exist before, jump through deletion as there is nothing to delete.
+       * Removes contacts that have been updated. Updated contact information will be inserted
+       * later. Note that this has to use a separate result set from updatePhoneCursor, since it is
+       * possible for a contact to be updated (e.g. phone number deleted), but have no results show
+       * up in updatedPhoneCursor (since all of its phone numbers have been deleted).
        */
-      if (!lastUpdateMillis.equals("0")) {
-        /**
-         * Removes contacts that have been updated. Updated contact information will be inserted
-         * later. Note that this has to use a separate result set from updatePhoneCursor, since it
-         * is possible for a contact to be updated (e.g. phone number deleted), but have no results
-         * show up in updatedPhoneCursor (since all of its phone numbers have been deleted).
-         */
-        final Cursor updatedContactCursor =
-            mContext
-                .getContentResolver()
-                .query(
-                    UpdatedContactQuery.URI,
-                    UpdatedContactQuery.PROJECTION,
-                    UpdatedContactQuery.SELECT_UPDATED_CLAUSE,
-                    new String[] {lastUpdateMillis},
-                    null);
-        if (updatedContactCursor == null) {
-          LogUtil.e(
-              "DialerDatabaseHelper.updateSmartDialDatabase",
-              "smartDial query received null for cursor");
-          return;
-        }
-        try {
-          removeUpdatedContacts(db, updatedContactCursor);
-        } finally {
-          updatedContactCursor.close();
-        }
-        if (DEBUG) {
-          stopWatch.lap("Finished deleting entries belonging to updated contacts");
-        }
-      }
-
-      /**
-       * Queries the contact database to get all phone numbers that have been updated since the last
-       * update time.
-       */
-      final Cursor updatedPhoneCursor =
+      final Cursor updatedContactCursor =
           mContext
               .getContentResolver()
               .query(
-                  PhoneQuery.URI,
-                  PhoneQuery.PROJECTION,
-                  PhoneQuery.SELECTION,
+                  UpdatedContactQuery.URI,
+                  UpdatedContactQuery.PROJECTION,
+                  UpdatedContactQuery.SELECT_UPDATED_CLAUSE,
                   new String[] {lastUpdateMillis},
                   null);
-      if (updatedPhoneCursor == null) {
+      if (updatedContactCursor == null) {
         LogUtil.e(
             "DialerDatabaseHelper.updateSmartDialDatabase",
             "smartDial query received null for cursor");
         return;
       }
-
       try {
-        /** Inserts recently updated phone numbers to the smartdial database. */
-        insertUpdatedContactsAndNumberPrefix(db, updatedPhoneCursor, currentMillis);
+        removeUpdatedContacts(db, updatedContactCursor);
+      } finally {
+        updatedContactCursor.close();
+      }
+      if (DEBUG) {
+        stopWatch.lap("Finished deleting entries belonging to updated contacts");
+      }
+    }
+
+    /**
+     * Queries the contact database to get all phone numbers that have been updated since the last
+     * update time.
+     */
+    final Cursor updatedPhoneCursor =
+        mContext
+            .getContentResolver()
+            .query(
+                PhoneQuery.URI,
+                PhoneQuery.PROJECTION,
+                PhoneQuery.SELECTION,
+                new String[] {lastUpdateMillis},
+                null);
+    if (updatedPhoneCursor == null) {
+      LogUtil.e(
+          "DialerDatabaseHelper.updateSmartDialDatabase",
+          "smartDial query received null for cursor");
+      return;
+    }
+
+    try {
+      /** Inserts recently updated phone numbers to the smartdial database. */
+      insertUpdatedContactsAndNumberPrefix(db, updatedPhoneCursor, currentMillis);
+      if (DEBUG) {
+        stopWatch.lap("Finished building the smart dial table");
+      }
+    } finally {
+      updatedPhoneCursor.close();
+    }
+
+    /**
+     * Gets a list of distinct contacts which have been updated, and adds the name prefixes of these
+     * contacts to the prefix table.
+     */
+    final Cursor nameCursor =
+        db.rawQuery(
+            "SELECT DISTINCT "
+                + SmartDialDbColumns.DISPLAY_NAME_PRIMARY
+                + ", "
+                + SmartDialDbColumns.CONTACT_ID
+                + " FROM "
+                + Tables.SMARTDIAL_TABLE
+                + " WHERE "
+                + SmartDialDbColumns.LAST_SMARTDIAL_UPDATE_TIME
+                + " = "
+                + currentMillis,
+            new String[] {});
+    if (nameCursor != null) {
+      try {
         if (DEBUG) {
-          stopWatch.lap("Finished building the smart dial table");
+          stopWatch.lap("Queried the smart dial table for contact names");
+        }
+
+        /** Inserts prefixes of names into the prefix table. */
+        insertNamePrefixes(db, nameCursor);
+        if (DEBUG) {
+          stopWatch.lap("Finished building the name prefix table");
         }
       } finally {
-        updatedPhoneCursor.close();
+        nameCursor.close();
       }
-
-      /**
-       * Gets a list of distinct contacts which have been updated, and adds the name prefixes of
-       * these contacts to the prefix table.
-       */
-      final Cursor nameCursor =
-          db.rawQuery(
-              "SELECT DISTINCT "
-                  + SmartDialDbColumns.DISPLAY_NAME_PRIMARY
-                  + ", "
-                  + SmartDialDbColumns.CONTACT_ID
-                  + " FROM "
-                  + Tables.SMARTDIAL_TABLE
-                  + " WHERE "
-                  + SmartDialDbColumns.LAST_SMARTDIAL_UPDATE_TIME
-                  + " = "
-                  + Long.toString(currentMillis),
-              new String[] {});
-      if (nameCursor != null) {
-        try {
-          if (DEBUG) {
-            stopWatch.lap("Queried the smart dial table for contact names");
-          }
-
-          /** Inserts prefixes of names into the prefix table. */
-          insertNamePrefixes(db, nameCursor);
-          if (DEBUG) {
-            stopWatch.lap("Finished building the name prefix table");
-          }
-        } finally {
-          nameCursor.close();
-        }
-      }
-
-      /** Creates index on contact_id for fast JOIN operation. */
-      db.execSQL(
-          "CREATE INDEX IF NOT EXISTS smartdial_contact_id_index ON "
-              + Tables.SMARTDIAL_TABLE
-              + " ("
-              + SmartDialDbColumns.CONTACT_ID
-              + ");");
-      /** Creates index on last_smartdial_update_time for fast SELECT operation. */
-      db.execSQL(
-          "CREATE INDEX IF NOT EXISTS smartdial_last_update_index ON "
-              + Tables.SMARTDIAL_TABLE
-              + " ("
-              + SmartDialDbColumns.LAST_SMARTDIAL_UPDATE_TIME
-              + ");");
-      /** Creates index on sorting fields for fast sort operation. */
-      db.execSQL(
-          "CREATE INDEX IF NOT EXISTS smartdial_sort_index ON "
-              + Tables.SMARTDIAL_TABLE
-              + " ("
-              + SmartDialDbColumns.STARRED
-              + ", "
-              + SmartDialDbColumns.IS_SUPER_PRIMARY
-              + ", "
-              + SmartDialDbColumns.LAST_TIME_USED
-              + ", "
-              + SmartDialDbColumns.TIMES_USED
-              + ", "
-              + SmartDialDbColumns.IN_VISIBLE_GROUP
-              + ", "
-              + SmartDialDbColumns.DISPLAY_NAME_PRIMARY
-              + ", "
-              + SmartDialDbColumns.CONTACT_ID
-              + ", "
-              + SmartDialDbColumns.IS_PRIMARY
-              + ");");
-      /** Creates index on prefix for fast SELECT operation. */
-      db.execSQL(
-          "CREATE INDEX IF NOT EXISTS nameprefix_index ON "
-              + Tables.PREFIX_TABLE
-              + " ("
-              + PrefixColumns.PREFIX
-              + ");");
-      /** Creates index on contact_id for fast JOIN operation. */
-      db.execSQL(
-          "CREATE INDEX IF NOT EXISTS nameprefix_contact_id_index ON "
-              + Tables.PREFIX_TABLE
-              + " ("
-              + PrefixColumns.CONTACT_ID
-              + ");");
-
-      if (DEBUG) {
-        stopWatch.lap(TAG + "Finished recreating index");
-      }
-
-      /** Updates the database index statistics. */
-      db.execSQL("ANALYZE " + Tables.SMARTDIAL_TABLE);
-      db.execSQL("ANALYZE " + Tables.PREFIX_TABLE);
-      db.execSQL("ANALYZE smartdial_contact_id_index");
-      db.execSQL("ANALYZE smartdial_last_update_index");
-      db.execSQL("ANALYZE nameprefix_index");
-      db.execSQL("ANALYZE nameprefix_contact_id_index");
-      if (DEBUG) {
-        stopWatch.stopAndLog(TAG + "Finished updating index stats", 0);
-      }
-
-      mInUpdate.getAndSet(false);
-
-      final SharedPreferences.Editor editor = databaseLastUpdateSharedPref.edit();
-      editor.putLong(LAST_UPDATED_MILLIS, currentMillis);
-      editor.apply();
-
-      LogUtil.i("DialerDatabaseHelper.updateSmartDialDatabase", "broadcasting smart dial update");
-
-      // Notify content observers that smart dial database has been updated.
-      Intent intent = new Intent(ACTION_SMART_DIAL_UPDATED);
-      intent.setPackage(mContext.getPackageName());
-      mContext.sendBroadcast(intent);
     }
+
+    /** Creates index on contact_id for fast JOIN operation. */
+    db.execSQL(
+        "CREATE INDEX IF NOT EXISTS smartdial_contact_id_index ON "
+            + Tables.SMARTDIAL_TABLE
+            + " ("
+            + SmartDialDbColumns.CONTACT_ID
+            + ");");
+    /** Creates index on last_smartdial_update_time for fast SELECT operation. */
+    db.execSQL(
+        "CREATE INDEX IF NOT EXISTS smartdial_last_update_index ON "
+            + Tables.SMARTDIAL_TABLE
+            + " ("
+            + SmartDialDbColumns.LAST_SMARTDIAL_UPDATE_TIME
+            + ");");
+    /** Creates index on sorting fields for fast sort operation. */
+    db.execSQL(
+        "CREATE INDEX IF NOT EXISTS smartdial_sort_index ON "
+            + Tables.SMARTDIAL_TABLE
+            + " ("
+            + SmartDialDbColumns.STARRED
+            + ", "
+            + SmartDialDbColumns.IS_SUPER_PRIMARY
+            + ", "
+            + SmartDialDbColumns.LAST_TIME_USED
+            + ", "
+            + SmartDialDbColumns.TIMES_USED
+            + ", "
+            + SmartDialDbColumns.IN_VISIBLE_GROUP
+            + ", "
+            + SmartDialDbColumns.DISPLAY_NAME_PRIMARY
+            + ", "
+            + SmartDialDbColumns.CONTACT_ID
+            + ", "
+            + SmartDialDbColumns.IS_PRIMARY
+            + ");");
+    /** Creates index on prefix for fast SELECT operation. */
+    db.execSQL(
+        "CREATE INDEX IF NOT EXISTS nameprefix_index ON "
+            + Tables.PREFIX_TABLE
+            + " ("
+            + PrefixColumns.PREFIX
+            + ");");
+    /** Creates index on contact_id for fast JOIN operation. */
+    db.execSQL(
+        "CREATE INDEX IF NOT EXISTS nameprefix_contact_id_index ON "
+            + Tables.PREFIX_TABLE
+            + " ("
+            + PrefixColumns.CONTACT_ID
+            + ");");
+
+    if (DEBUG) {
+      stopWatch.lap(TAG + "Finished recreating index");
+    }
+
+    /** Updates the database index statistics. */
+    db.execSQL("ANALYZE " + Tables.SMARTDIAL_TABLE);
+    db.execSQL("ANALYZE " + Tables.PREFIX_TABLE);
+    db.execSQL("ANALYZE smartdial_contact_id_index");
+    db.execSQL("ANALYZE smartdial_last_update_index");
+    db.execSQL("ANALYZE nameprefix_index");
+    db.execSQL("ANALYZE nameprefix_contact_id_index");
+    if (DEBUG) {
+      stopWatch.stopAndLog(TAG + "Finished updating index stats", 0);
+    }
+
+    final SharedPreferences.Editor editor = databaseLastUpdateSharedPref.edit();
+    editor.putLong(LAST_UPDATED_MILLIS, currentMillis);
+    editor.apply();
+
+    LogUtil.i("DialerDatabaseHelper.updateSmartDialDatabase", "broadcasting smart dial update");
+
+    // Notify content observers that smart dial database has been updated.
+    Intent intent = new Intent(ACTION_SMART_DIAL_UPDATED);
+    intent.setPackage(mContext.getPackageName());
+    mContext.sendBroadcast(intent);
   }
 
   /**
@@ -817,12 +809,9 @@
    * @param query The prefix of a contact's dialpad index.
    * @return A list of top candidate contacts that will be suggested to user to match their input.
    */
-  public ArrayList<ContactNumber> getLooseMatches(String query, SmartDialNameMatcher nameMatcher) {
-    final boolean inUpdate = mInUpdate.get();
-    if (inUpdate) {
-      return new ArrayList<>();
-    }
-
+  @WorkerThread
+  public synchronized ArrayList<ContactNumber> getLooseMatches(
+      String query, SmartDialNameMatcher nameMatcher) {
     final SQLiteDatabase db = getReadableDatabase();
 
     /** Uses SQL query wildcard '%' to represent prefix matching. */
diff --git a/java/com/android/dialer/dialercontact/dialer_contact.proto b/java/com/android/dialer/dialercontact/dialer_contact.proto
new file mode 100644
index 0000000..9b7724f
--- /dev/null
+++ b/java/com/android/dialer/dialercontact/dialer_contact.proto
@@ -0,0 +1,26 @@
+syntax = "proto2";
+
+option java_package = "com.android.dialer.dialercontact";
+option java_multiple_files = true;
+option optimize_for = LITE_RUNTIME;
+
+package com.android.dialer.callcomposer;
+
+message DialerContact {
+  optional fixed64 photo_id = 1;
+  optional string photo_uri = 2;
+  optional string contact_uri = 3;
+  optional string name_or_number = 4;
+  optional string number = 6;
+  optional string display_number = 7;
+  optional string number_label = 8;
+  optional int32 contact_type = 9;
+  optional SimDetails sim_details = 10;
+}
+
+message SimDetails {
+  // Human readable netwrork name displayed to user where relevant
+  optional string network = 1;
+  // This value represents a hex representation of a color (i.e. #ffffff)
+  optional int32 color = 2;
+}
diff --git a/java/com/android/dialer/dialpadview/res/values/dimens.xml b/java/com/android/dialer/dialpadview/res/values/dimens.xml
index 210c816..7277364 100644
--- a/java/com/android/dialer/dialpadview/res/values/dimens.xml
+++ b/java/com/android/dialer/dialpadview/res/values/dimens.xml
@@ -16,7 +16,7 @@
 
 <resources>
   <!-- Text dimensions for dialpad keys -->
-  <dimen name="dialpad_key_numbers_default_size">36sp</dimen>
+  <dimen name="dialpad_key_numbers_default_size">36dp</dimen>
   <dimen name="dialpad_key_letters_size">12sp</dimen>
   <dimen name="dialpad_key_pound_size">23sp</dimen>
   <dimen name="dialpad_key_star_size">36sp</dimen>
diff --git a/java/com/android/dialer/enrichedcall/FuzzyPhoneNumberMatcher.java b/java/com/android/dialer/enrichedcall/FuzzyPhoneNumberMatcher.java
index 250c643..27dc0e9 100644
--- a/java/com/android/dialer/enrichedcall/FuzzyPhoneNumberMatcher.java
+++ b/java/com/android/dialer/enrichedcall/FuzzyPhoneNumberMatcher.java
@@ -16,20 +16,41 @@
 package com.android.dialer.enrichedcall;
 
 import android.support.annotation.NonNull;
-import com.android.dialer.common.Assert;
 
 /** Utility for comparing phone numbers. */
 public class FuzzyPhoneNumberMatcher {
 
-  /** Returns {@code true} if the given numbers can be interpreted to be the same. */
-  public static boolean matches(@NonNull String a, @NonNull String b) {
-    String aNormalized = Assert.isNotNull(a).replaceAll("[^0-9]", "");
-    String bNormalized = Assert.isNotNull(b).replaceAll("[^0-9]", "");
-    if (aNormalized.length() < 7 || bNormalized.length() < 7) {
-      return false;
+  private static final int REQUIRED_MATCHED_DIGITS = 7;
+
+  /**
+   * Returns {@code true} if the given numbers can be interpreted to be the same.
+   *
+   * <p>This method is called numerous times when rendering the call log. Using string methods is
+   * too slow, so character by character matching is used instead.
+   */
+  public static boolean matches(@NonNull String lhs, @NonNull String rhs) {
+    int aIndex = lhs.length() - 1;
+    int bIndex = rhs.length() - 1;
+
+    int matchedDigits = 0;
+
+    while (aIndex >= 0 && bIndex >= 0) {
+      if (!Character.isDigit(lhs.charAt(aIndex))) {
+        --aIndex;
+        continue;
+      }
+      if (!Character.isDigit(rhs.charAt(bIndex))) {
+        --bIndex;
+        continue;
+      }
+      if (lhs.charAt(aIndex) != rhs.charAt(bIndex)) {
+        return false;
+      }
+      --aIndex;
+      --bIndex;
+      ++matchedDigits;
     }
-    String aMatchable = aNormalized.substring(aNormalized.length() - 7);
-    String bMatchable = bNormalized.substring(bNormalized.length() - 7);
-    return aMatchable.equals(bMatchable);
+
+    return matchedDigits >= REQUIRED_MATCHED_DIGITS;
   }
 }
diff --git a/java/com/android/dialer/app/bindings/DialerBindings.java b/java/com/android/dialer/inject/ApplicationContext.java
similarity index 65%
rename from java/com/android/dialer/app/bindings/DialerBindings.java
rename to java/com/android/dialer/inject/ApplicationContext.java
index e1f5178..913e36e 100644
--- a/java/com/android/dialer/app/bindings/DialerBindings.java
+++ b/java/com/android/dialer/inject/ApplicationContext.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 The Android Open Source Project
+ * Copyright (C) 2017 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -13,13 +13,10 @@
  * See the License for the specific language governing permissions and
  * limitations under the License
  */
+package com.android.dialer.inject;
 
-package com.android.dialer.app.bindings;
+import javax.inject.Qualifier;
 
-import com.android.dialer.common.ConfigProvider;
-
-/** This interface allows the container application to customize the dialer. */
-public interface DialerBindings {
-
-  ConfigProvider getConfigProvider();
-}
+/** Annotation for retrieving the application context. */
+@Qualifier
+public @interface ApplicationContext {}
diff --git a/java/com/android/dialer/inject/ContextModule.java b/java/com/android/dialer/inject/ContextModule.java
index aa83f01..e3da08e 100644
--- a/java/com/android/dialer/inject/ContextModule.java
+++ b/java/com/android/dialer/inject/ContextModule.java
@@ -22,17 +22,18 @@
 import dagger.Module;
 import dagger.Provides;
 
-/** Provides the singleton context object. */
+/** Provides the singleton application context object. */
 @Module
 public final class ContextModule {
 
   @NonNull private final Context context;
 
-  public ContextModule(@NonNull Context context) {
-    this.context = Assert.isNotNull(context);
+  public ContextModule(@NonNull Context appContext) {
+    this.context = Assert.isNotNull(appContext);
   }
 
   @Provides
+  @ApplicationContext
   Context provideContext() {
     return context;
   }
diff --git a/java/com/android/dialer/interactions/PhoneNumberInteraction.java b/java/com/android/dialer/interactions/PhoneNumberInteraction.java
index 52f9d20..ef468a9 100644
--- a/java/com/android/dialer/interactions/PhoneNumberInteraction.java
+++ b/java/com/android/dialer/interactions/PhoneNumberInteraction.java
@@ -54,11 +54,14 @@
 import com.android.contacts.common.Collapser.Collapsible;
 import com.android.contacts.common.MoreContactUtils;
 import com.android.contacts.common.util.ContactDisplayUtils;
+import com.android.dialer.callintent.CallInitiationType;
 import com.android.dialer.callintent.CallIntentBuilder;
 import com.android.dialer.callintent.CallIntentParser;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.InteractionEvent;
+import com.android.dialer.logging.Logger;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.TransactionSafeActivity;
 import java.lang.annotation.Retention;
@@ -543,6 +546,12 @@
         final PhoneItem phoneItem = mPhoneList.get(which);
         final CheckBox checkBox = (CheckBox) alertDialog.findViewById(R.id.setPrimary);
         if (checkBox.isChecked()) {
+          if (mCallSpecificAppData.getCallInitiationType() == CallInitiationType.Type.SPEED_DIAL) {
+            Logger.get(getContext())
+                .logInteraction(
+                    InteractionEvent.Type.SPEED_DIAL_SET_DEFAULT_NUMBER_FOR_AMBIGUOUS_CONTACT);
+          }
+
           // Request to mark the data as primary in the background.
           final Intent serviceIntent =
               ContactUpdateService.createSetSuperPrimaryIntent(activity, phoneItem.id);
diff --git a/java/com/android/dialer/lightbringer/Lightbringer.java b/java/com/android/dialer/lightbringer/Lightbringer.java
index 8caafda..510f8a9 100644
--- a/java/com/android/dialer/lightbringer/Lightbringer.java
+++ b/java/com/android/dialer/lightbringer/Lightbringer.java
@@ -22,16 +22,24 @@
 import android.support.annotation.MainThread;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.telecom.Call;
+import android.telecom.PhoneAccountHandle;
 
 public interface Lightbringer {
 
   @MainThread
-  boolean isReachable(@NonNull Context context, @NonNull String number);
+  boolean isReachable(@NonNull Context context, @Nullable String number);
+
+  @MainThread
+  boolean supportsUpgrade(@NonNull Context context, @Nullable String number);
 
   @MainThread
   Intent getIntent(@NonNull Context context, @NonNull String number);
 
   @MainThread
+  void requestUpgrade(Call call);
+
+  @MainThread
   void registerListener(@NonNull LightbringerListener listener);
 
   @MainThread
@@ -39,9 +47,13 @@
 
   @Nullable
   @MainThread
-  ComponentName getPhoneAccountComponentName(@NonNull Context context);
+  ComponentName getPhoneAccountComponentName();
+
+  @Nullable
+  @MainThread
+  PhoneAccountHandle getPhoneAccountHandle();
 
   @NonNull
   @MainThread
-  String getPackageName(@NonNull Context context);
+  String getPackageName();
 }
diff --git a/java/com/android/dialer/lightbringer/stub/LightbringerStub.java b/java/com/android/dialer/lightbringer/stub/LightbringerStub.java
index f9bb4cd..c835fea 100644
--- a/java/com/android/dialer/lightbringer/stub/LightbringerStub.java
+++ b/java/com/android/dialer/lightbringer/stub/LightbringerStub.java
@@ -19,7 +19,11 @@
 import android.content.ComponentName;
 import android.content.Context;
 import android.content.Intent;
+import android.support.annotation.MainThread;
 import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.telecom.Call;
+import android.telecom.PhoneAccountHandle;
 import com.android.dialer.common.Assert;
 import com.android.dialer.lightbringer.Lightbringer;
 import com.android.dialer.lightbringer.LightbringerListener;
@@ -30,30 +34,67 @@
   @Inject
   public LightbringerStub() {}
 
+  @MainThread
   @Override
-  public boolean isReachable(Context context, String number) {
+  public boolean isReachable(@NonNull Context context, @Nullable String number) {
+    Assert.isMainThread();
+    Assert.isNotNull(context);
     return false;
   }
 
+  @MainThread
   @Override
-  public Intent getIntent(Context context, String number) {
+  public boolean supportsUpgrade(@NonNull Context context, @Nullable String number) {
+    Assert.isMainThread();
+    Assert.isNotNull(context);
+    return false;
+  }
+
+  @MainThread
+  @Override
+  public Intent getIntent(@NonNull Context context, @NonNull String number) {
+    Assert.isMainThread();
+    Assert.isNotNull(context);
+    Assert.isNotNull(number);
     return null;
   }
 
+  @MainThread
   @Override
-  public void registerListener(LightbringerListener listener) {}
+  public void requestUpgrade(Call call) {
+    Assert.isMainThread();
+    Assert.isNotNull(call);
+  }
 
+  @MainThread
   @Override
-  public void unregisterListener(LightbringerListener listener) {}
+  public void registerListener(LightbringerListener listener) {
+    Assert.isMainThread();
+    Assert.isNotNull(listener);
+  }
 
+  @MainThread
   @Override
-  public ComponentName getPhoneAccountComponentName(Context context) {
+  public void unregisterListener(LightbringerListener listener) {
+    Assert.isMainThread();
+    Assert.isNotNull(listener);
+  }
+
+  @Nullable
+  @Override
+  public ComponentName getPhoneAccountComponentName() {
+    return null;
+  }
+
+  @Nullable
+  @Override
+  public PhoneAccountHandle getPhoneAccountHandle() {
     return null;
   }
 
   @NonNull
   @Override
-  public String getPackageName(@NonNull Context context) {
-    throw Assert.createUnsupportedOperationFailException();
+  public String getPackageName() {
+    return "";
   }
 }
diff --git a/java/com/android/dialer/location/CountryDetector.java b/java/com/android/dialer/location/CountryDetector.java
index a90febf..c4bed14 100644
--- a/java/com/android/dialer/location/CountryDetector.java
+++ b/java/com/android/dialer/location/CountryDetector.java
@@ -33,8 +33,8 @@
 import android.text.TextUtils;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.common.concurrent.DialerExecutors;
 import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import com.android.dialer.common.concurrent.DialerExecutorComponent;
 import com.android.dialer.util.PermissionsUtil;
 import java.util.List;
 import java.util.Locale;
@@ -216,7 +216,9 @@
 
   private static void processLocationUpdate(
       Context appContext, Geocoder geocoder, Location location) {
-    DialerExecutors.createNonUiTaskBuilder(new GeocodeCountryWorker(geocoder))
+    DialerExecutorComponent.get(appContext)
+        .dialerExecutorFactory()
+        .createNonUiTaskBuilder(new GeocodeCountryWorker(geocoder))
         .onSuccess(
             country -> {
               if (country == null) {
diff --git a/java/com/android/dialer/logging/LoggingBindings.java b/java/com/android/dialer/logging/LoggingBindings.java
index 526cb20..85ccfdf 100644
--- a/java/com/android/dialer/logging/LoggingBindings.java
+++ b/java/com/android/dialer/logging/LoggingBindings.java
@@ -14,8 +14,8 @@
 
 package com.android.dialer.logging;
 
-
 import android.app.Activity;
+import android.widget.QuickContactBadge;
 
 /** Allows the container application to gather analytics. */
 public interface LoggingBindings {
@@ -62,6 +62,22 @@
    */
   void logScreenView(com.android.dialer.logging.ScreenEvent.Type screenEvent, Activity activity);
 
+  /** Logs the composition of contact tiles in the speed dial tab. */
+  void logSpeedDialContactComposition(
+      int counter,
+      int starredContactsCount,
+      int pinnedContactsCount,
+      int multipleNumbersContactsCount,
+      int contactsWithPhotoCount,
+      int contactsWithNameCount,
+      int lightbringerReachableContactsCount);
+
   /** Logs a hit event to the analytics server. */
   void sendHitEventAnalytics(String category, String action, String label, long value);
+
+  /** Logs where a quick contact badge is clicked */
+  void logQuickContactOnTouch(
+      QuickContactBadge quickContact,
+      InteractionEvent.Type interactionEvent,
+      boolean shouldPerformClick);
 }
diff --git a/java/com/android/dialer/logging/LoggingBindingsStub.java b/java/com/android/dialer/logging/LoggingBindingsStub.java
index f7ca6ec..3892996 100644
--- a/java/com/android/dialer/logging/LoggingBindingsStub.java
+++ b/java/com/android/dialer/logging/LoggingBindingsStub.java
@@ -15,6 +15,7 @@
 package com.android.dialer.logging;
 
 import android.app.Activity;
+import android.widget.QuickContactBadge;
 
 /** Default implementation for logging bindings. */
 public class LoggingBindingsStub implements LoggingBindings {
@@ -36,5 +37,21 @@
   public void logScreenView(ScreenEvent.Type screenEvent, Activity activity) {}
 
   @Override
+  public void logSpeedDialContactComposition(
+      int counter,
+      int starredContactsCount,
+      int pinnedContactsCount,
+      int multipleNumbersContactsCount,
+      int contactsWithPhotoCount,
+      int contactsWithNameCount,
+      int lightbringerReachableContactsCount) {}
+
+  @Override
   public void sendHitEventAnalytics(String category, String action, String label, long value) {}
+
+  @Override
+  public void logQuickContactOnTouch(
+      QuickContactBadge quickContact,
+      InteractionEvent.Type interactionEvent,
+      boolean shouldPerformClick) {}
 }
diff --git a/java/com/android/dialer/logging/contact_lookup_result.proto b/java/com/android/dialer/logging/contact_lookup_result.proto
index 835d7d7..13ea3c8 100644
--- a/java/com/android/dialer/logging/contact_lookup_result.proto
+++ b/java/com/android/dialer/logging/contact_lookup_result.proto
@@ -5,6 +5,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 message ContactLookupResult {
   // The different results of a contact lookup done using a phone number.
   enum Type {
@@ -16,10 +17,10 @@
     // Contact was found in the local database.
     LOCAL_CONTACT = 2;
 
-    // Contact was found in Google Dialer's internal phone number cache
+    // DEPRECATED: see subcategories below
     LOCAL_CACHE = 3;
 
-    // Contact was found via Google Caller ID
+    // DEPRECATED: see subcategories below
     REMOTE = 4;
 
     // Phone number was an emergency phone number
@@ -27,5 +28,40 @@
 
     // Phone number was the SIM card's voicemail number
     VOICEMAIL = 6;
+
+    // Phone number was identified via the places part of the People API.
+    REMOTE_PLACES = 7;
+
+    // Phone number was identified via the profile part of the People API.
+    REMOTE_PROFILE = 8;
+
+    // Number was found in Dialer's local cache but we don't know how it was
+    // originally identified.
+    LOCAL_CACHE_UNKNOWN = 9;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // as a personal contact.
+    LOCAL_CACHE_DIRECTORY = 10;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // via a custom extended directory.
+    LOCAL_CACHE_EXTENDED = 11;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // via the places part of the People API.
+    LOCAL_CACHE_PLACES = 12;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // via the profile part of the People API.
+    LOCAL_CACHE_PROFILE = 13;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // via Caller Name Presentation (CNAP) information. Calls in this
+    // category would have had ContactLookupResultType NOT_FOUND originally.
+    LOCAL_CACHE_CNAP = 14;
+
+    // Number was found in Dialer's local cache and was originally identified
+    // via Cequint caller ID.
+    LOCAL_CACHE_CEQUINT = 15;
   }
 }
diff --git a/java/com/android/dialer/logging/contact_source.proto b/java/com/android/dialer/logging/contact_source.proto
index 470cf8b..ffd32de 100644
--- a/java/com/android/dialer/logging/contact_source.proto
+++ b/java/com/android/dialer/logging/contact_source.proto
@@ -5,6 +5,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 message ContactSource {
   // Applies only to reports made from call history. If we have contact
   // information for the phone number, this field indicates its source.
diff --git a/java/com/android/dialer/logging/dialer_impression.proto b/java/com/android/dialer/logging/dialer_impression.proto
index 5416146..ba8d922 100644
--- a/java/com/android/dialer/logging/dialer_impression.proto
+++ b/java/com/android/dialer/logging/dialer_impression.proto
@@ -5,11 +5,12 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 message DialerImpression {
   // Event enums to be used for Impression Logging in Dialer.
   // It's perfectly acceptable for this enum to be large
   // Values should be from 1000 to 100000.
-  // Next Tag:1191
+  // Next Tag:1227
   enum Type {
 
     UNKNOWN_AOSP_EVENT_TYPE = 1000;
@@ -386,5 +387,56 @@
     VVM_STATUS_CHECK_REACTIVATION = 1189;
 
     VVM_ARCHIVE_AUTO_DELETE_FAILED_DUE_TO_FAILED_QUOTA_CHECK = 1190;
+
+    // User pressed the speaker phone button on the return-to-call bubble
+    BUBBLE_TURN_ON_SPEAKERPHONE = 1191;
+    // User pressed the speaker phone button again on the return-to-call bubble
+    BUBBLE_TURN_ON_WIRED_OR_EARPIECE = 1192;
+    // User muted the call from the return-to-call bubble
+    BUBBLE_MUTE_CALL = 1193;
+    // User unmuted the call from the return-to-call bubble
+    BUBBLE_UNMUTE_CALL = 1194;
+    // User ended the call from the return-to-call bubble
+    BUBBLE_END_CALL = 1195;
+
+    LIGHTBRINGER_VIDEO_REQUESTED_FROM_SEARCH = 1196;
+    LIGHTBRINGER_VIDEO_REQUESTED_FROM_CALL_LOG = 1197;
+    IMS_VIDEO_REQUESTED_FROM_SEARCH = 1198;
+    IMS_VIDEO_REQUESTED_FROM_CALL_LOG = 1199;
+
+    // Multi select impressions
+    MULTISELECT_LONG_PRESS_ENTER_MULTI_SELECT_MODE = 1200;
+    MULTISELECT_LONG_PRESS_TAP_ENTRY = 1201;
+    MULTISELECT_SINGLE_PRESS_SELECT_ENTRY = 1202;
+    MULTISELECT_SINGLE_PRESS_UNSELECT_ENTRY = 1203;
+    MULTISELECT_SINGLE_PRESS_TAP_VIA_CONTACT_BADGE = 1204;
+    MULTISELECT_SELECT_ALL = 1205;
+    MULTISELECT_UNSELECT_ALL = 1206;
+    MULTISELECT_TAP_DELETE_ICON = 1207;
+    MULTISELECT_DISPLAY_DELETE_CONFIRMATION_DIALOG = 1208;
+    MULTISELECT_DELETE_ENTRY_VIA_CONFIRMATION_DIALOG = 1209;
+    MULTISELECT_CANCEL_CONFIRMATION_DIALOG_VIA_CANCEL_BUTTON = 1210;
+    MULTISELECT_CANCEL_CONFIRMATION_DIALOG_VIA_CANCEL_TOUCH = 1211;
+    MULTISELECT_ROTATE_AND_SHOW_ACTION_MODE= 1212;
+
+    // Impressions for verizon VVM with backup and transcription ToS
+    VOICEMAIL_VVM3_TOS_V2_CREATED = 1213;
+    VOICEMAIL_VVM3_TOS_V2_ACCEPTED = 1214;
+    VOICEMAIL_VVM3_TOS_V2_DECLINE_CLICKED = 1215;
+    // Impressions for dialer voicemail with backup and transcription ToS
+    VOICEMAIL_DIALER_TOS_CREATED = 1216;
+    VOICEMAIL_DIALER_TOS_ACCEPTED = 1217;
+    VOICEMAIL_DIALER_TOS_DECLINE_CLICKED = 1218;
+
+    // Add or create contact
+    // Creating new contact fab was logged as NEW_CONTACT_FAB
+    CREATE_NEW_CONTACT_FROM_CALL_LOG = 1219;
+    CREATE_NEW_CONTACT_FROM_DIALPAD = 1220;
+    CREATE_NEW_CONTACT_FROM_VOICEMAIL = 1221;
+    CREATE_NEW_CONTACT_FROM_CALL_HISTORY = 1222;
+    ADD_TO_A_CONTACT_FROM_CALL_LOG = 1223;
+    ADD_TO_A_CONTACT_FROM_DIALPAD = 1224;
+    ADD_TO_A_CONTACT_FROM_VOICEMAIL = 1225;
+    ADD_TO_A_CONTACT_FROM_CALL_HISTORY = 1226;
   }
 }
diff --git a/java/com/android/dialer/logging/interaction_event.proto b/java/com/android/dialer/logging/interaction_event.proto
index b9af1b7..89cf46f 100644
--- a/java/com/android/dialer/logging/interaction_event.proto
+++ b/java/com/android/dialer/logging/interaction_event.proto
@@ -5,7 +5,9 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 message InteractionEvent {
+  // Next Tag: 38
   enum Type {
 
     UNKNOWN = 0;
@@ -41,5 +43,23 @@
 
     // The user unblocked a number then undid the unblock
     UNDO_UNBLOCK_NUMBER = 24;
+
+    // Actions in speed dial
+    SPEED_DIAL_PIN_CONTACT = 25;
+    SPEED_DIAL_REMOVE_CONTACT = 26;
+    SPEED_DIAL_OPEN_CONTACT_CARD = 27;
+    SPEED_DIAL_CLICK_CONTACT_WITH_AMBIGUOUS_NUMBER = 28;
+
+    SPEED_DIAL_SET_DEFAULT_NUMBER_FOR_AMBIGUOUS_CONTACT = 29;
+
+    // Open quick contact from where
+    OPEN_QUICK_CONTACT_FROM_CALL_LOG = 30;
+    OPEN_QUICK_CONTACT_FROM_CALL_DETAILS = 31;
+    OPEN_QUICK_CONTACT_FROM_ALL_CONTACTS_GENERAL = 32;
+    OPEN_QUICK_CONTACT_FROM_CONTACTS_FRAGMENT_BADGE = 33;
+    OPEN_QUICK_CONTACT_FROM_CONTACTS_FRAGMENT_ITEM = 34;
+    OPEN_QUICK_CONTACT_FROM_SEARCH = 35;
+    OPEN_QUICK_CONTACT_FROM_VOICEMAIL = 36;
+    OPEN_QUICK_CONTACT_FROM_CALL_HISTORY = 37;
   }
 }
diff --git a/java/com/android/dialer/logging/reporting_location.proto b/java/com/android/dialer/logging/reporting_location.proto
index 7286948..d436564 100644
--- a/java/com/android/dialer/logging/reporting_location.proto
+++ b/java/com/android/dialer/logging/reporting_location.proto
@@ -5,6 +5,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 message ReportingLocation {
   // Spam reporting location
   enum Type {
diff --git a/java/com/android/dialer/logging/screen_event.proto b/java/com/android/dialer/logging/screen_event.proto
index 2430bfd..ca62477 100644
--- a/java/com/android/dialer/logging/screen_event.proto
+++ b/java/com/android/dialer/logging/screen_event.proto
@@ -5,6 +5,7 @@
 option java_multiple_files = true;
 option optimize_for = LITE_RUNTIME;
 
+
 message ScreenEvent {
   enum Type {
 
diff --git a/java/com/android/dialer/logging/ui_action.proto b/java/com/android/dialer/logging/ui_action.proto
new file mode 100644
index 0000000..784dbed
--- /dev/null
+++ b/java/com/android/dialer/logging/ui_action.proto
@@ -0,0 +1,43 @@
+syntax = "proto2";
+
+package com.android.dialer.logging;
+option java_package = "com.android.dialer.logging";
+option java_multiple_files = true;
+option optimize_for = LITE_RUNTIME;
+
+
+message UiAction {
+  enum Type {
+    UNKNOWN = 0;
+
+    // General action starting from 1
+    CHANGE_TAB_TO_FAVORITE = 1;
+    CHANGE_TAB_TO_CALL_LOG = 2;
+    CHANGE_TAB_TO_CONTACTS = 3;
+    CHANGE_TAB_TO_VOICEMAIL = 4;
+    PRESS_ANDROID_BACK_BUTTON = 5;
+    TEXT_CHANGE_WITH_INPUT = 6;
+    SCROLL = 7;
+
+    // In call log, starting from 100
+    CLICK_CALL_LOG_ITEM = 100;
+    OPEN_CALL_DETAIL = 101;
+    CLOSE_CALL_DETAIL_WITH_CANCEL_BUTTON = 102;
+    COPY_NUMBER_IN_CALL_DETAIL = 103;
+    EDIT_NUMBER_BEFORE_CALL_IN_CALL_DETAIL = 104;
+
+    // In dialpad, starting from 200
+    OPEN_DIALPAD = 200;
+    CLOSE_DIALPAD = 201;
+    PRESS_CALL_BUTTON_WITHOUT_CALLING = 202;
+
+    // In search, starting from 300
+    OPEN_SEARCH = 300;
+    HIDE_KEYBOARD_IN_SEARCH = 301;
+    CLOSE_SEARCH_WITH_HIDE_BUTTON = 302;
+
+    // In call history, starting from 400
+    OPEN_CALL_HISTORY = 400;
+    CLOSE_CALL_HISTORY_WITH_CANCEL_BUTTON = 401;
+  }
+}
diff --git a/java/com/android/incallui/calllocation/impl/TrafficStatsTags.java b/java/com/android/dialer/main/Main.java
similarity index 60%
copy from java/com/android/incallui/calllocation/impl/TrafficStatsTags.java
copy to java/com/android/dialer/main/Main.java
index 02cc2e0..14ac7e4 100644
--- a/java/com/android/incallui/calllocation/impl/TrafficStatsTags.java
+++ b/java/com/android/dialer/main/Main.java
@@ -14,16 +14,14 @@
  * limitations under the License
  */
 
-package com.android.incallui.calllocation.impl;
+package com.android.dialer.main;
 
-/** Constants used for logging */
-public class TrafficStatsTags {
+import android.content.Context;
 
-  /**
-   * Must be greater than {@link com.android.contacts.common.util.TrafficStatsTags#TAG_MAX}, to
-   * respect the namespace of the tags in ContactsCommon.
-   */
-  public static final int DOWNLOAD_LOCATION_MAP_TAG = 0xd000;
+/** Used to display the main activity for Dialer. This hosts favorites, dial pad, search, etc... */
+public interface Main {
+  boolean isNewUiEnabled(Context context);
 
-  public static final int REVERSE_GEOCODE_TAG = 0xd001;
+  // TODO(38502365): Remove this when we're ready to launch the new UI. */
+  void createNewUiLauncherShortcut(Context context);
 }
diff --git a/java/com/android/dialer/main/MainComponent.java b/java/com/android/dialer/main/MainComponent.java
new file mode 100644
index 0000000..e735457
--- /dev/null
+++ b/java/com/android/dialer/main/MainComponent.java
@@ -0,0 +1,39 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.main;
+
+import android.content.Context;
+import com.android.dialer.inject.HasRootComponent;
+import com.android.dialer.main.impl.MainModule;
+import dagger.Subcomponent;
+
+/** Subcomponent that can be used to access the main implementation. */
+@Subcomponent(modules = MainModule.class)
+public abstract class MainComponent {
+
+  public abstract Main getMain();
+
+  public static MainComponent get(Context context) {
+    return ((HasComponent) ((HasRootComponent) context.getApplicationContext()).component())
+        .mainComponent();
+  }
+
+  /** Used to refer to the root application component. */
+  public interface HasComponent {
+    MainComponent mainComponent();
+  }
+}
diff --git a/java/com/android/dialer/main/impl/AndroidManifest.xml b/java/com/android/dialer/main/impl/AndroidManifest.xml
new file mode 100644
index 0000000..8edde50
--- /dev/null
+++ b/java/com/android/dialer/main/impl/AndroidManifest.xml
@@ -0,0 +1,110 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+  package="com.android.dialer.main.impl">
+
+  <application>
+
+    <activity
+      android:clearTaskOnLaunch="true"
+      android:directBootAware="true"
+      android:enabled="false"
+      android:exported="true"
+      android:icon="@drawable/nui_launcher_icon"
+      android:label="@string/main_activity_label"
+      android:launchMode="singleTask"
+      android:name="com.android.dialer.main.impl.MainActivity"
+      android:resizeableActivity="true"
+      android:theme="@style/NuiMainActivityTheme"
+      android:windowSoftInputMode="stateAlwaysHidden|adjustNothing">
+
+      <!-- LINT.IfChange -->
+      <intent-filter>
+        <action android:name="android.intent.action.DIAL"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+
+        <data android:mimeType="vnd.android.cursor.item/phone"/>
+        <data android:mimeType="vnd.android.cursor.item/person"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.DIAL"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+
+        <data android:scheme="voicemail"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.DIAL"/>
+        <category android:name="android.intent.category.DEFAULT"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.MAIN"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.LAUNCHER"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.VIEW"/>
+        <action android:name="android.intent.action.DIAL"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+
+        <data android:scheme="tel"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.VIEW"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+
+        <data android:mimeType="vnd.android.cursor.dir/calls"/>
+      </intent-filter>
+      <intent-filter>
+        <action android:name="android.intent.action.CALL_BUTTON"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.BROWSABLE"/>
+      </intent-filter>
+      <!-- This was never intended to be public, but is here for backward
+           compatibility.  Use Intent.ACTION_DIAL instead. -->
+      <intent-filter>
+        <action android:name="com.android.phone.action.TOUCH_DIALER"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.TAB"/>
+      </intent-filter>
+      <intent-filter android:label="@string/main_call_history_tab_description">
+        <action android:name="com.android.phone.action.RECENT_CALLS"/>
+
+        <category android:name="android.intent.category.DEFAULT"/>
+        <category android:name="android.intent.category.TAB"/>
+      </intent-filter>
+      <!-- LINT.ThenChange(//depot/google3/third_party/java_src/android_app/dialer/java/com/android/dialer/app/manifests/activities/AndroidManifest.xml) -->
+
+      <meta-data
+        android:name="com.android.keyguard.layout"
+        android:resource="@layout/keyguard_preview"/>
+    </activity>
+
+  </application>
+
+</manifest>
diff --git a/java/com/android/dialer/main/impl/MainActivity.java b/java/com/android/dialer/main/impl/MainActivity.java
new file mode 100644
index 0000000..4b2bd2e
--- /dev/null
+++ b/java/com/android/dialer/main/impl/MainActivity.java
@@ -0,0 +1,91 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.main.impl;
+
+import android.content.Context;
+import android.content.Intent;
+import android.os.Bundle;
+import android.support.design.widget.TabLayout;
+import android.support.v4.view.ViewPager;
+import android.support.v7.app.AppCompatActivity;
+import android.support.v7.widget.Toolbar;
+import android.view.Menu;
+import android.view.MenuItem;
+import android.view.View;
+import android.widget.Toast;
+import com.android.dialer.common.LogUtil;
+
+/** This is the main activity for dialer. It hosts favorites, call log, search, dialpad, etc... */
+public final class MainActivity extends AppCompatActivity implements View.OnClickListener {
+
+  static Intent getIntent(Context context) {
+    return new Intent(context, MainActivity.class)
+        .setAction(Intent.ACTION_VIEW)
+        .setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+  }
+
+  @Override
+  protected void onCreate(Bundle savedInstanceState) {
+    super.onCreate(savedInstanceState);
+    LogUtil.enterBlock("MainActivity.onCreate");
+    setContentView(R.layout.main_activity);
+    initLayout();
+  }
+
+  private void initLayout() {
+    findViewById(R.id.fab).setOnClickListener(this);
+
+    ViewPager pager = findViewById(R.id.pager);
+    MainPagerAdapter pagerAdapter = new MainPagerAdapter(this, getSupportFragmentManager());
+    pager.setAdapter(pagerAdapter);
+
+    TabLayout tabLayout = findViewById(R.id.tab_layout);
+    tabLayout.setupWithViewPager(pager);
+
+    Toolbar toolbar = findViewById(R.id.toolbar);
+    toolbar.setPopupTheme(android.R.style.Theme_Material_Light);
+    setSupportActionBar(toolbar);
+  }
+
+  @Override
+  public boolean onCreateOptionsMenu(Menu menu) {
+    getMenuInflater().inflate(R.menu.main_menu, menu);
+    return true;
+  }
+
+  @Override
+  public boolean onOptionsItemSelected(MenuItem item) {
+    Toast.makeText(this, "Not yet implemented", Toast.LENGTH_SHORT).show();
+    if (item.getItemId() == R.id.search) {
+      // open search
+      return true;
+    } else if (item.getItemId() == R.id.contacts) {
+      // open contacts
+      return true;
+    } else {
+      // TODO handle other menu items
+      return super.onOptionsItemSelected(item);
+    }
+  }
+
+  @Override
+  public void onClick(View v) {
+    if (v.getId() == R.id.fab) {
+      // open dialpad search
+    }
+  }
+}
diff --git a/java/com/android/dialer/main/impl/MainImpl.java b/java/com/android/dialer/main/impl/MainImpl.java
new file mode 100644
index 0000000..d29e8c0
--- /dev/null
+++ b/java/com/android/dialer/main/impl/MainImpl.java
@@ -0,0 +1,90 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.main.impl;
+
+import android.annotation.TargetApi;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.content.pm.PackageManager;
+import android.os.Build.VERSION_CODES;
+import android.support.v4.content.pm.ShortcutInfoCompat;
+import android.support.v4.content.pm.ShortcutManagerCompat;
+import android.support.v4.graphics.drawable.IconCompat;
+import android.support.v4.os.BuildCompat;
+import com.android.dialer.buildtype.BuildType;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.main.Main;
+import javax.inject.Inject;
+
+/** The entry point for the main feature. */
+final class MainImpl implements Main {
+  private static final String SHORTCUT_KEY = "nui_launcher_shortcut";
+
+  @Inject
+  public MainImpl() {}
+
+  @Override
+  public boolean isNewUiEnabled(Context context) {
+    return BuildType.get() == BuildType.BUGFOOD || LogUtil.isDebugEnabled();
+  }
+
+  @Override
+  public void createNewUiLauncherShortcut(Context context) {
+    enableComponent(context);
+    if (BuildCompat.isAtLeastO()) {
+      createLauncherShortcutO(context);
+    } else {
+      createLauncherShortcutPreO(context);
+    }
+  }
+
+  /**
+   * Enables the NUI activity component. By default the component is disabled and can't be accessed.
+   * Once the component has been enabled the user will get an option to use the new UI to handle
+   * DIAL (and other) intents.
+   */
+  private static void enableComponent(Context context) {
+    context
+        .getPackageManager()
+        .setComponentEnabledSetting(
+            new ComponentName(context, MainActivity.class),
+            PackageManager.COMPONENT_ENABLED_STATE_ENABLED,
+            PackageManager.DONT_KILL_APP);
+  }
+
+  @TargetApi(VERSION_CODES.O)
+  private static void createLauncherShortcutO(Context context) {
+    ShortcutInfoCompat shortcutInfo =
+        new ShortcutInfoCompat.Builder(context, SHORTCUT_KEY)
+            .setIcon(IconCompat.createWithResource(context, R.drawable.nui_launcher_icon))
+            .setIntent(MainActivity.getIntent(context))
+            .setShortLabel(context.getString(R.string.nui_shortcut_name))
+            .build();
+    ShortcutManagerCompat.requestPinShortcut(context, shortcutInfo, null);
+  }
+
+  private static void createLauncherShortcutPreO(Context context) {
+    Intent intent = new Intent("com.android.launcher.action.INSTALL_SHORTCUT");
+    intent.putExtra(
+        Intent.EXTRA_SHORTCUT_ICON,
+        Intent.ShortcutIconResource.fromContext(context, R.drawable.nui_launcher_icon));
+    intent.putExtra(Intent.EXTRA_SHORTCUT_NAME, context.getString(R.string.nui_shortcut_name));
+    intent.putExtra(Intent.EXTRA_SHORTCUT_INTENT, MainActivity.getIntent(context));
+    context.sendBroadcast(intent);
+  }
+}
diff --git a/java/com/android/dialer/app/bindings/DialerBindings.java b/java/com/android/dialer/main/impl/MainModule.java
similarity index 61%
copy from java/com/android/dialer/app/bindings/DialerBindings.java
copy to java/com/android/dialer/main/impl/MainModule.java
index e1f5178..90342cf 100644
--- a/java/com/android/dialer/app/bindings/DialerBindings.java
+++ b/java/com/android/dialer/main/impl/MainModule.java
@@ -1,5 +1,5 @@
 /*
- * Copyright (C) 2016 The Android Open Source Project
+ * Copyright (C) 2017 The Android Open Source Project
  *
  * Licensed under the Apache License, Version 2.0 (the "License");
  * you may not use this file except in compliance with the License.
@@ -14,12 +14,17 @@
  * limitations under the License
  */
 
-package com.android.dialer.app.bindings;
+package com.android.dialer.main.impl;
 
-import com.android.dialer.common.ConfigProvider;
+import com.android.dialer.main.Main;
+import dagger.Module;
+import dagger.Provides;
 
-/** This interface allows the container application to customize the dialer. */
-public interface DialerBindings {
-
-  ConfigProvider getConfigProvider();
+/** This module provides an instance of {@link Main}. */
+@Module
+public final class MainModule {
+  @Provides
+  public static Main provideMain() {
+    return new MainImpl();
+  }
 }
diff --git a/java/com/android/dialer/main/impl/MainPagerAdapter.java b/java/com/android/dialer/main/impl/MainPagerAdapter.java
new file mode 100644
index 0000000..19cf4e7
--- /dev/null
+++ b/java/com/android/dialer/main/impl/MainPagerAdapter.java
@@ -0,0 +1,75 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.main.impl;
+
+import android.content.Context;
+import android.support.annotation.IntDef;
+import android.support.v4.app.Fragment;
+import android.support.v4.app.FragmentManager;
+import android.support.v4.app.FragmentStatePagerAdapter;
+import com.android.dialer.common.Assert;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/** Adapter for {@link MainActivity} ViewPager. */
+final class MainPagerAdapter extends FragmentStatePagerAdapter {
+
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({
+    TabIndex.SPEED_DIAL,
+    TabIndex.HISTORY,
+    TabIndex.VOICEMAIL,
+  })
+  private @interface TabIndex {
+    int SPEED_DIAL = 0;
+    int HISTORY = 1;
+    int VOICEMAIL = 2;
+  }
+
+  private final Context context;
+
+  MainPagerAdapter(Context context, FragmentManager fragmentManager) {
+    super(fragmentManager);
+    this.context = context;
+  }
+
+  @Override
+  public int getCount() {
+    // TODO: add logic to hide/show voicemail tab
+    return 3;
+  }
+
+  @Override
+  public Fragment getItem(int position) {
+    // TODO: implement tabs
+    return new StubFragment();
+  }
+
+  @Override
+  public CharSequence getPageTitle(int position) {
+    switch (position) {
+      case TabIndex.SPEED_DIAL:
+        return context.getString(R.string.tab_title_speed_dial);
+      case TabIndex.HISTORY:
+        return context.getString(R.string.tab_title_call_history);
+      case TabIndex.VOICEMAIL:
+        return context.getString(R.string.tab_title_voicemail);
+      default:
+        throw Assert.createIllegalStateFailException("Tab position with no title: " + position);
+    }
+  }
+}
diff --git a/java/com/android/dialer/main/impl/StubFragment.java b/java/com/android/dialer/main/impl/StubFragment.java
new file mode 100644
index 0000000..8e0accf
--- /dev/null
+++ b/java/com/android/dialer/main/impl/StubFragment.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.main.impl;
+
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v4.app.Fragment;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+
+/** Stub Fragment for Dialer. */
+public class StubFragment extends Fragment {
+
+  @Nullable
+  @Override
+  public View onCreateView(
+      LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) {
+    return inflater.inflate(R.layout.stub_fragment, container, false);
+  }
+}
diff --git a/java/com/android/dialer/main/impl/res/drawable-xxxhdpi/nui_launcher_icon.png b/java/com/android/dialer/main/impl/res/drawable-xxxhdpi/nui_launcher_icon.png
new file mode 100644
index 0000000..7845ebc
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/drawable-xxxhdpi/nui_launcher_icon.png
Binary files differ
diff --git a/java/com/android/dialer/main/impl/res/layout/main_activity.xml b/java/com/android/dialer/main/impl/res/layout/main_activity.xml
new file mode 100644
index 0000000..73b2eae
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/layout/main_activity.xml
@@ -0,0 +1,68 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<FrameLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:id="@+id/container"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
+
+  <TextView
+      android:layout_width="match_parent"
+      android:layout_height="match_parent"
+      android:textColor="@android:color/secondary_text_dark_nodisable"/>
+
+  <android.support.design.widget.CoordinatorLayout
+      android:layout_width="match_parent"
+      android:layout_height="match_parent">
+
+    <android.support.design.widget.AppBarLayout
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:theme="@style/AppBarTheme">
+
+      <android.support.v7.widget.Toolbar
+          android:id="@+id/toolbar"
+          android:layout_height="wrap_content"
+          android:layout_width="match_parent"
+          android:background="?android:attr/colorPrimary"/>
+
+      <android.support.design.widget.TabLayout
+          android:id="@+id/tab_layout"
+          android:layout_width="match_parent"
+          android:layout_height="wrap_content"
+          android:background="?android:attr/colorPrimary"
+          app:tabIndicatorColor="?android:attr/colorAccent"
+          app:layout_scrollFlags="enterAlwaysCollapsed"/>
+    </android.support.design.widget.AppBarLayout>
+
+    <android.support.v4.view.ViewPager
+        android:id="@+id/pager"
+        android:layout_width="match_parent"
+        android:layout_height="match_parent"
+        app:layout_behavior="@string/appbar_scrolling_view_behavior"/>
+
+    <android.support.design.widget.FloatingActionButton
+        android:id="@+id/fab"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="bottom|end"
+        android:layout_margin="16dp"
+        android:src="@drawable/quantum_ic_dialpad_white_24"
+        app:backgroundTint="?android:attr/colorAccent"/>
+  </android.support.design.widget.CoordinatorLayout>
+</FrameLayout>
\ No newline at end of file
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/main/impl/res/layout/stub_fragment.xml
similarity index 60%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/main/impl/res/layout/stub_fragment.xml
index ecf704e..3bb744f 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/main/impl/res/layout/stub_fragment.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +14,14 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+<FrameLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent">
+
+  <TextView
+      android:text="hello world!"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_gravity="center"/>
+</FrameLayout>
\ No newline at end of file
diff --git a/java/com/android/dialer/main/impl/res/menu/main_menu.xml b/java/com/android/dialer/main/impl/res/menu/main_menu.xml
new file mode 100644
index 0000000..09bcbf8
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/menu/main_menu.xml
@@ -0,0 +1,47 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<menu xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto">
+  <item
+      android:id="@+id/search"
+      android:icon="@drawable/quantum_ic_search_white_24"
+      android:title="@string/search"
+      android:contentDescription="@string/description_search"
+      app:showAsAction="always"/>
+
+  <item
+      android:id="@+id/contacts"
+      android:icon="@drawable/quantum_ic_person_white_24"
+      android:title="@string/contacts"
+      android:contentDescription="@string/description_contacts"
+      app:showAsAction="always"/>
+
+  <item
+      android:id="@+id/call_history"
+      android:title="@string/tab_title_call_history"
+      app:showAsAction="collapseActionView"/>
+
+  <item
+      android:id="@+id/settings"
+      android:title="@string/settings"
+      app:showAsAction="collapseActionView"/>
+
+  <item
+      android:id="@+id/feedback"
+      android:title="@string/main_send_feedback"
+      app:showAsAction="collapseActionView"/>
+</menu>
\ No newline at end of file
diff --git a/java/com/android/dialer/main/impl/res/values-af/strings.xml b/java/com/android/dialer/main/impl/res/values-af/strings.xml
new file mode 100644
index 0000000..fd1a859
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-af/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Foon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Foon-NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Oproepgeskiedenis"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Deursoek kontakte en plekke"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakte"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Bekyk kontakte"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Oproepgeskiedenis"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Spoedbel"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Stemboodskap"</string>
+    <string name="settings" msgid="7614336599112169779">"Instellings"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Stuur terugvoer"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-am/strings.xml b/java/com/android/dialer/main/impl/res/values-am/strings.xml
new file mode 100644
index 0000000..e45382b
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-am/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ስልክ"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ስልክ NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"የጥሪ ታሪክ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ዕውቂያዎችን እና ቦታዎችን ይፈልጉ"</string>
+    <string name="contacts" msgid="4464246185723317911">"እውቂያዎች"</string>
+    <string name="description_contacts" msgid="12768481422137448">"እውቂያዎችን ይመልከቱ"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"ቅንብሮች"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ar/strings.xml b/java/com/android/dialer/main/impl/res/values-ar/strings.xml
new file mode 100644
index 0000000..2be1289
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ar/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"الهاتف"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"واجهة مستخدم جديدة للهاتف"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"سجل المكالمات"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"البحث عن جهات الاتصال والأماكن"</string>
+    <string name="contacts" msgid="4464246185723317911">"جهات الاتصال"</string>
+    <string name="description_contacts" msgid="12768481422137448">"عرض جهات الاتصال"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"سجلّ المكالمات"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"اتصال سريع"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"بريد صوتي"</string>
+    <string name="settings" msgid="7614336599112169779">"الإعدادات"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"إرسال تعليقات"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-az/strings.xml b/java/com/android/dialer/main/impl/res/values-az/strings.xml
new file mode 100644
index 0000000..baa702c
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-az/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Telefon Yeni İİ"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Zəng tarixçəsi"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Kontakt və yer axtarın"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktlar"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Kontaktlara Baxın"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Ayarlar"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/main/impl/res/values-b+sr+Latn/strings.xml
new file mode 100644
index 0000000..75be4b8
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-b+sr+Latn/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Novi UI Telefona"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Istorija poziva"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pretražite kontakte i mesta"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakti"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Pregledajte kontakte"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Ist. poziva"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Brzo poz."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Gov. pošta"</string>
+    <string name="settings" msgid="7614336599112169779">"Podešavanja"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Pošalji povr. inform."</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-be/strings.xml b/java/com/android/dialer/main/impl/res/values-be/strings.xml
new file mode 100644
index 0000000..390eec1
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-be/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Тэлефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Новы карыстальніцкі інтэрфейс тэлефона"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Гісторыя выклікаў"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Пошук кантактаў і месцаў"</string>
+    <string name="contacts" msgid="4464246185723317911">"Кантакты"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Прагляд кантактаў"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Налады"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-bg/strings.xml b/java/com/android/dialer/main/impl/res/values-bg/strings.xml
new file mode 100644
index 0000000..075e3e9
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-bg/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Телефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Телефон – НПИ"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"История на обажданията"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Търсене на контакти и места"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контакти"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Преглед на контактите"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"История"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Бързо наб."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Гл. поща"</string>
+    <string name="settings" msgid="7614336599112169779">"Настройки"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Изпращане на отзиви"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-bn/strings.xml b/java/com/android/dialer/main/impl/res/values-bn/strings.xml
new file mode 100644
index 0000000..e5b56ff
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-bn/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ফোন"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ফোন NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"কলের ইতিহাস"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"পরিচিতি এবং স্থানগুলি অনুসন্ধান করুন"</string>
+    <string name="contacts" msgid="4464246185723317911">"পরিচিতিগুলি"</string>
+    <string name="description_contacts" msgid="12768481422137448">"পরিচিতিগুলি দেখুন"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"কলের ইতিহাস"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"দ্রুত ডায়াল"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"ভয়েসমেল"</string>
+    <string name="settings" msgid="7614336599112169779">"সেটিংস"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"প্রতিক্রিয়া পাঠান"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-bs/strings.xml b/java/com/android/dialer/main/impl/res/values-bs/strings.xml
new file mode 100644
index 0000000..989fa5c
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-bs/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historija poziva"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pretraži kontakte i mjesta"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakti"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Prikaži kontakte"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"His. pozi."</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Brzo bira."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Govor. poš."</string>
+    <string name="settings" msgid="7614336599112169779">"Postavke"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Poša. povrat. infor."</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ca/strings.xml b/java/com/android/dialer/main/impl/res/values-ca/strings.xml
new file mode 100644
index 0000000..d8a4633
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ca/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telèfon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nova IU de telèfon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historial de trucades"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Cerca contactes i llocs"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contactes"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Mostra contactes"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Configuració"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-cs/strings.xml b/java/com/android/dialer/main/impl/res/values-cs/strings.xml
new file mode 100644
index 0000000..6bfc24d
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-cs/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nové rozhraní Telefonu"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historie volání"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Hledat kontakty a místa"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakty"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Zobrazit kontakty"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Nastavení"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-da/strings.xml b/java/com/android/dialer/main/impl/res/values-da/strings.xml
new file mode 100644
index 0000000..1dc96da
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-da/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Ny genvej til telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Opkaldshistorik"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Søg efter kontaktpersoner og steder"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktpersoner"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Se kontaktpersoner"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Indstillinger"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-de/strings.xml b/java/com/android/dialer/main/impl/res/values-de/strings.xml
new file mode 100644
index 0000000..a305ed4
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-de/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Neue Benutzeroberfläche für Telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Anrufliste"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Kontakte und Orte suchen"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakte"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Kontakte ansehen"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Anrufliste"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Kurzwahl"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Mailbox"</string>
+    <string name="settings" msgid="7614336599112169779">"Einstellungen"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Feedback geben"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-el/strings.xml b/java/com/android/dialer/main/impl/res/values-el/strings.xml
new file mode 100644
index 0000000..df58b08
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-el/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Τηλέφωνο"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Νέα διεπαφή χρήστη για το Τηλέφωνο"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Ιστορικό κλήσεων"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Αναζητήστε επαφές και μέρη"</string>
+    <string name="contacts" msgid="4464246185723317911">"Επαφές"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Προβολή επαφών"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Ρυθμίσεις"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-en-rAU/strings.xml b/java/com/android/dialer/main/impl/res/values-en-rAU/strings.xml
new file mode 100644
index 0000000..b6c139f
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-en-rAU/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telephone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Call history"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Search contacts and places"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacts"</string>
+    <string name="description_contacts" msgid="12768481422137448">"View contacts"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Call history"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Speed dial"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Voicemail"</string>
+    <string name="settings" msgid="7614336599112169779">"Settings"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Sending feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-en-rGB/strings.xml b/java/com/android/dialer/main/impl/res/values-en-rGB/strings.xml
new file mode 100644
index 0000000..b6c139f
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-en-rGB/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telephone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Call history"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Search contacts and places"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacts"</string>
+    <string name="description_contacts" msgid="12768481422137448">"View contacts"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Call history"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Speed dial"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Voicemail"</string>
+    <string name="settings" msgid="7614336599112169779">"Settings"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Sending feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-en-rIN/strings.xml b/java/com/android/dialer/main/impl/res/values-en-rIN/strings.xml
new file mode 100644
index 0000000..b6c139f
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-en-rIN/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telephone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Call history"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Search contacts and places"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacts"</string>
+    <string name="description_contacts" msgid="12768481422137448">"View contacts"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Call history"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Speed dial"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Voicemail"</string>
+    <string name="settings" msgid="7614336599112169779">"Settings"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Sending feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-es-rUS/strings.xml b/java/com/android/dialer/main/impl/res/values-es-rUS/strings.xml
new file mode 100644
index 0000000..6ddb775
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-es-rUS/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Teléfono"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nueva IU del teléfono"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historial de llamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Buscar contactos y lugares"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contactos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ver contactos"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Configuración"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-es/strings.xml b/java/com/android/dialer/main/impl/res/values-es/strings.xml
new file mode 100644
index 0000000..5ccc9e9
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-es/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Teléfono"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nueva interfaz de usuario del teléfono"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historial de llamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Buscar contactos y sitios"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contactos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ver contactos"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Historial"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Marcación"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Buzón"</string>
+    <string name="settings" msgid="7614336599112169779">"Ajustes"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Enviar comentarios"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-et/strings.xml b/java/com/android/dialer/main/impl/res/values-et/strings.xml
new file mode 100644
index 0000000..1e681a9
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-et/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Telefoni uus kasutajaliides"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Kõneajalugu"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Otsige kontakte ja soovitusi"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktid"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Vaadake kontakte"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Seaded"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-eu/strings.xml b/java/com/android/dialer/main/impl/res/values-eu/strings.xml
new file mode 100644
index 0000000..3204c43
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-eu/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefonoa"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Telefonoko erabiltzaile-interfaze naturala"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Deien historia"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Ikusi kontaktuak eta tokiak"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktuak"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ikusi kontaktuak"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Ezarpenak"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-fa/strings.xml b/java/com/android/dialer/main/impl/res/values-fa/strings.xml
new file mode 100644
index 0000000..82ba23b
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-fa/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"تلفن"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"رابط کاربری جدید تلفن"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"سابقه تماس"</string>
+    <string name="search" msgid="3570654445331155513">"‎@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"جستجوی مخاطبین و مکان‌ها"</string>
+    <string name="contacts" msgid="4464246185723317911">"مخاطبین"</string>
+    <string name="description_contacts" msgid="12768481422137448">"مشاهده مخاطبین"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"تنظیمات"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-fi/strings.xml b/java/com/android/dialer/main/impl/res/values-fi/strings.xml
new file mode 100644
index 0000000..f997a30
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-fi/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Puhelin"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Puhelimen uusi UI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Soittohistoria"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/haku_aloita"</string>
+    <string name="description_search" msgid="3443578912463129718">"Haku yhteystiedoista ja paikoista"</string>
+    <string name="contacts" msgid="4464246185723317911">"Yhteystiedot"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Näytä yhteystiedot"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Asetukset"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-fr-rCA/strings.xml b/java/com/android/dialer/main/impl/res/values-fr-rCA/strings.xml
new file mode 100644
index 0000000..5d81972
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-fr-rCA/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Téléphoner"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Téléphoner (nouvelle IU)"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historique des appels"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Rechercher dans les contacts et les lieux"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacts"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Afficher les contacts"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Appels"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Comp. abr."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Mess. voc."</string>
+    <string name="settings" msgid="7614336599112169779">"Paramètres"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Envoyer commentaires"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-fr/strings.xml b/java/com/android/dialer/main/impl/res/values-fr/strings.xml
new file mode 100644
index 0000000..613ffb2
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-fr/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Téléphone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Téléphone (nouvelle version)"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historique des appels"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Recherchez des contacts et des adresses"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacts"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Consultez vos contacts"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Historique"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Num. abrégée"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Messagerie"</string>
+    <string name="settings" msgid="7614336599112169779">"Paramètres"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Laisser un avis"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-gl/strings.xml b/java/com/android/dialer/main/impl/res/values-gl/strings.xml
new file mode 100644
index 0000000..a8b4b4e
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-gl/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Teléfono"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nova IU do teléfono"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historial de chamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Busca contactos e lugares"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contactos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Mira os contactos"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Historial"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Marc. ráp."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Correo voz"</string>
+    <string name="settings" msgid="7614336599112169779">"Configuración"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Enviar comentarios"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-gu/strings.xml b/java/com/android/dialer/main/impl/res/values-gu/strings.xml
new file mode 100644
index 0000000..2bf6137
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-gu/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ફોન"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ફોન NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"કૉલ ઇતિહાસ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"સંપર્કો અને સ્થાનો શોધો"</string>
+    <string name="contacts" msgid="4464246185723317911">"સંપર્કો"</string>
+    <string name="description_contacts" msgid="12768481422137448">"સંપર્કો જુઓ"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"કૉલ ઇતિહાસ"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"સ્પીડ ડાયલ"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"વૉઇસમેઇલ"</string>
+    <string name="settings" msgid="7614336599112169779">"સેટિંગ્સ"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"પ્રતિસાદ મોકલો"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-hi/strings.xml b/java/com/android/dialer/main/impl/res/values-hi/strings.xml
new file mode 100644
index 0000000..99cc780
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-hi/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"फ़ोन"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"फ़ोन NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"कॉल इतिहास"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"संपर्क और स्थान खोजें"</string>
+    <string name="contacts" msgid="4464246185723317911">"संपर्क"</string>
+    <string name="description_contacts" msgid="12768481422137448">"संपर्क देखें"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"कॉल इतिहास"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"स्पीड डायल"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"वॉइसमेल"</string>
+    <string name="settings" msgid="7614336599112169779">"सेटिंग"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"फ़ीडबैक भेजें"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-hr/strings.xml b/java/com/android/dialer/main/impl/res/values-hr/strings.xml
new file mode 100644
index 0000000..037dd12
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-hr/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI telefona"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Povijest poziva"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pretraži kontakte i mjesta"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakti"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Prikaži kontakte"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Postavke"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-hu/strings.xml b/java/com/android/dialer/main/impl/res/values-hu/strings.xml
new file mode 100644
index 0000000..f86ed24
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-hu/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Telefon új felhasználói felülete"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Híváslista"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Névjegyek és helyek keresése"</string>
+    <string name="contacts" msgid="4464246185723317911">"Névjegyek"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Névjegyek megtekintése"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Beállítások"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-hy/strings.xml b/java/com/android/dialer/main/impl/res/values-hy/strings.xml
new file mode 100644
index 0000000..e8334ca
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-hy/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Հեռախոս"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Հեռախոսի նոր միջերես"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Զանգերի պատմություն"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Գտնել կոնտակտներ և վայրեր"</string>
+    <string name="contacts" msgid="4464246185723317911">"Կոնտակտներ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Դիտել կոնտակտները"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Զանգերի պատմ."</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Արագ հավաքում"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Ձայն. փոստ"</string>
+    <string name="settings" msgid="7614336599112169779">"Կարգավորումներ"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Կարծիք հայտնել"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-in/strings.xml b/java/com/android/dialer/main/impl/res/values-in/strings.xml
new file mode 100644
index 0000000..f3effe1
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-in/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telepon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI Telepon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Histori panggilan"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Telusuri kontak dan tempat"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontak"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Lihat Kontak"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Setelan"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-is/strings.xml b/java/com/android/dialer/main/impl/res/values-is/strings.xml
new file mode 100644
index 0000000..988eef4
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-is/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Sími"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nýtt viðmót síma"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Símtalaferill"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Leita að tengiliðum og stöðum"</string>
+    <string name="contacts" msgid="4464246185723317911">"Tengiliðir"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Skoða tengiliði"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Stillingar"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-it/strings.xml b/java/com/android/dialer/main/impl/res/values-it/strings.xml
new file mode 100644
index 0000000..324359f
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-it/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefono"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI telefono"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Cronologia chiamate"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Cerca contatti e luoghi"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contatti"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Visualizza contatti"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Impostazioni"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-iw/strings.xml b/java/com/android/dialer/main/impl/res/values-iw/strings.xml
new file mode 100644
index 0000000..645ef20
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-iw/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"טלפון"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ממשק משתמש חדש לטלפון"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"היסטוריית שיחות"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"חיפוש אנשי קשר ומקומות"</string>
+    <string name="contacts" msgid="4464246185723317911">"אנשי קשר"</string>
+    <string name="description_contacts" msgid="12768481422137448">"הצגת אנשי הקשר"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"היסטוריית שיחות"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"חיוג מהיר"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"דואר קולי"</string>
+    <string name="settings" msgid="7614336599112169779">"הגדרות"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"משוב"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ja/strings.xml b/java/com/android/dialer/main/impl/res/values-ja/strings.xml
new file mode 100644
index 0000000..5791538
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ja/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"電話"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"電話 NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"通話履歴"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"連絡先や場所を検索"</string>
+    <string name="contacts" msgid="4464246185723317911">"連絡先"</string>
+    <string name="description_contacts" msgid="12768481422137448">"連絡先を表示"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"設定"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ka/strings.xml b/java/com/android/dialer/main/impl/res/values-ka/strings.xml
new file mode 100644
index 0000000..e2570a1
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ka/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ტელეფონი"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ტელეფონის NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ზარების ისტორია"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"კონტაქტებისა და ადგილების ძიება"</string>
+    <string name="contacts" msgid="4464246185723317911">"კონტაქტები"</string>
+    <string name="description_contacts" msgid="12768481422137448">"კონტაქტების ნახვა"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"პარამეტრები"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-kk/strings.xml b/java/com/android/dialer/main/impl/res/values-kk/strings.xml
new file mode 100644
index 0000000..e29f53a
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-kk/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Телефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Телефонға арналған жаңа пайдаланушы интерфейсі"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Қоңыраулар тарихы"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Контактілер мен орындарды іздеу"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контактілер"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Контактілерді көру"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Параметрлер"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-km/strings.xml b/java/com/android/dialer/main/impl/res/values-km/strings.xml
new file mode 100644
index 0000000..c6c6dc5
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-km/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ទូរសព្ទ"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI ទូរសព្ទ"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ប្រវត្តិហៅ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ទំនាក់ទំនង និង​កន្លែង​ស្វែងរក"</string>
+    <string name="contacts" msgid="4464246185723317911">"ទំនាក់ទំនង"</string>
+    <string name="description_contacts" msgid="12768481422137448">"មើលទំនាក់ទំនង"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"ការ​កំណត់"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-kn/strings.xml b/java/com/android/dialer/main/impl/res/values-kn/strings.xml
new file mode 100644
index 0000000..48b8f83
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-kn/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ಫೋನ್"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ಫೋನ್ NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ಕರೆ ಇತಿಹಾಸ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ಸಂಪರ್ಕಗಳು ಮತ್ತು ಸ್ಥಳಗಳನ್ನು ಹುಡುಕಿ"</string>
+    <string name="contacts" msgid="4464246185723317911">"ಸಂಪರ್ಕಗಳು"</string>
+    <string name="description_contacts" msgid="12768481422137448">"ಸಂಪರ್ಕ ವೀಕ್ಷಿಸು"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"ಸೆಟ್ಟಿಂಗ್‌ಗಳು"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ko/strings.xml b/java/com/android/dialer/main/impl/res/values-ko/strings.xml
new file mode 100644
index 0000000..1f98f7f
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ko/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"전화"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"새 전화 UI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"통화 기록"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"연락처 및 장소 검색"</string>
+    <string name="contacts" msgid="4464246185723317911">"연락처"</string>
+    <string name="description_contacts" msgid="12768481422137448">"연락처 보기"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"통화 기록"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"단축 다이얼"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"음성사서함"</string>
+    <string name="settings" msgid="7614336599112169779">"설정"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"의견 보내기"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ky/strings.xml b/java/com/android/dialer/main/impl/res/values-ky/strings.xml
new file mode 100644
index 0000000..66f06d2
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ky/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Чалуу"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Жаы интерфейсте чалуу"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Чалуулар таржымалы"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Байланыштарды жана жерлерди издөө"</string>
+    <string name="contacts" msgid="4464246185723317911">"Байланыштар"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Байланыштарды көрүү"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Жөндөөлөр"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-lo/strings.xml b/java/com/android/dialer/main/impl/res/values-lo/strings.xml
new file mode 100644
index 0000000..8b7e547
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-lo/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ໂທລະສັບ"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ປະຫວັດການໂທ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ຊອກຫາລາຍຊື່ຜູ້ຕິດຕໍ່ ແລະ ສະຖານທີ່"</string>
+    <string name="contacts" msgid="4464246185723317911">"ລາຍຊື່ຜູ້ຕິດຕໍ່"</string>
+    <string name="description_contacts" msgid="12768481422137448">"ເບິ່ງລາຍຊື່ຜູ້ຕິດຕໍ່"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ປະຫວັດການໂທ"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"ໂທດ່ວນ"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"ຂໍ້ຄວາມສຽງ"</string>
+    <string name="settings" msgid="7614336599112169779">"ການຕັ້ງຄ່າ"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ສົ່ງຄຳຕິຊົມ"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-lt/strings.xml b/java/com/android/dialer/main/impl/res/values-lt/strings.xml
new file mode 100644
index 0000000..4b3e3b9
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-lt/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefonas"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nauja telefono NS"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Skambučių istorija"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Ieškoti kontaktų ir vietų"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktai"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Žr. kontaktus"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Sk. istor."</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Sp. rink."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Balso p."</string>
+    <string name="settings" msgid="7614336599112169779">"Nustatymai"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Siųsti atsiliepimą"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-lv/strings.xml b/java/com/android/dialer/main/impl/res/values-lv/strings.xml
new file mode 100644
index 0000000..459950b
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-lv/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Tālrunis"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Tālruņa jaunā lietotāja saskarne"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Zvanu vēsture"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Meklēt kontaktpersonas un vietas"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktpersonas"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Skatīt kontaktpersonas"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Iestatījumi"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-mk/strings.xml b/java/com/android/dialer/main/impl/res/values-mk/strings.xml
new file mode 100644
index 0000000..0543f33
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-mk/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Телефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Нов интерфејс на телефон"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Историја на повици"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Пребарајте контакти и места"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контакти"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Прикажи контакти"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Поставки"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ml/strings.xml b/java/com/android/dialer/main/impl/res/values-ml/strings.xml
new file mode 100644
index 0000000..d143e6c
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ml/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ഫോണ്‍"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ഫോൺ NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"കോള്‍‌ ചരിത്രം"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"കോൺടാക്റ്റുകളും സ്ഥലങ്ങളും തിരയുക"</string>
+    <string name="contacts" msgid="4464246185723317911">"കോൺടാക്റ്റുകൾ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"കോൺടാക്റ്റുകൾ കാണുക"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"ക്രമീകരണം"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-mn/strings.xml b/java/com/android/dialer/main/impl/res/values-mn/strings.xml
new file mode 100644
index 0000000..6dee167
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-mn/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Утас"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Утас NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Дуудлагын түүх"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Харилцагчид, газруудаас хайх"</string>
+    <string name="contacts" msgid="4464246185723317911">"Харилцагчид"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Харилцагчдыг харах"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Дуудлагын түүх"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Шуурхай залгах"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Дуут шуудан"</string>
+    <string name="settings" msgid="7614336599112169779">"Тохиргоо"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Санал хүсэл илгээх"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-mr/strings.xml b/java/com/android/dialer/main/impl/res/values-mr/strings.xml
new file mode 100644
index 0000000..4662461
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-mr/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"फोन"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"फोन NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"कॉल इतिहास"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"संपर्क आणि स्थाने शोधा"</string>
+    <string name="contacts" msgid="4464246185723317911">"संपर्क"</string>
+    <string name="description_contacts" msgid="12768481422137448">"संपर्क पहा"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"कॉल इतिहास"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"जलद डायल"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"व्हॉइसमेल"</string>
+    <string name="settings" msgid="7614336599112169779">"सेटिंग्ज"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"अभिप्राय पाठवा"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ms/strings.xml b/java/com/android/dialer/main/impl/res/values-ms/strings.xml
new file mode 100644
index 0000000..36cb14b
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ms/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI Telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Sejarah panggilan"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Cari kenalan dan tempat"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kenalan"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Lihat Kenalan"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Sjrh Pgln"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Dail Laju"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Mel suara"</string>
+    <string name="settings" msgid="7614336599112169779">"Tetapan"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Hantar maklum balas"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-my/strings.xml b/java/com/android/dialer/main/impl/res/values-my/strings.xml
new file mode 100644
index 0000000..b71a8a5
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-my/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ဖုန်း"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI ဖုန်း"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ခေါ်ဆိုမှုမှတ်တမ်း"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"အဆက်အသွယ်များနှင့် နေရာများကို ရှာဖွေရန်"</string>
+    <string name="contacts" msgid="4464246185723317911">"အဆက်အသွယ်များ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"အဆက်အသွယ်များကို ကြည့်ရှုရန်"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ခေါ်ဆိုမှု"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"နံပါတ်ကွက်"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"အသံမေးလ်"</string>
+    <string name="settings" msgid="7614336599112169779">"ဆက်တင်များ"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"အကြံပြုချက် ပို့ရန်"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-nb/strings.xml b/java/com/android/dialer/main/impl/res/values-nb/strings.xml
new file mode 100644
index 0000000..fa89e4c
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-nb/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Anropslogg"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Søk etter kontakter og steder"</string>
+    <string name="contacts" msgid="4464246185723317911">"Google-kontakter"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Se kontakter"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Innstillinger"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ne/strings.xml b/java/com/android/dialer/main/impl/res/values-ne/strings.xml
new file mode 100644
index 0000000..794b058
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ne/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"फोन"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI फोन"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"कलको इतिहास"</string>
+    <string name="search" msgid="3570654445331155513">"@android:स्ट्रिङ/खोज_जानुहोस्"</string>
+    <string name="description_search" msgid="3443578912463129718">"सम्पर्क र स्थानहरू खोज्‍नुहोस्"</string>
+    <string name="contacts" msgid="4464246185723317911">"सम्पर्कहरू"</string>
+    <string name="description_contacts" msgid="12768481422137448">"सम्पर्कहरू हेर्नुहोस्"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"कल इतिहास"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"स्पिड डायल"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"भ्वाइस मेल"</string>
+    <string name="settings" msgid="7614336599112169779">"सेटिङहरू"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"प्रतिक्रिया पठाउने"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-nl/strings.xml b/java/com/android/dialer/main/impl/res/values-nl/strings.xml
new file mode 100644
index 0000000..cf00e19
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-nl/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Bellen"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nieuwe UI van telefoon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Oproepgeschiedenis"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Contacten en plaatsen zoeken"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contacten"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Contacten bekijken"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Instellingen"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-no/strings.xml b/java/com/android/dialer/main/impl/res/values-no/strings.xml
new file mode 100644
index 0000000..fa89e4c
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-no/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Anropslogg"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Søk etter kontakter og steder"</string>
+    <string name="contacts" msgid="4464246185723317911">"Google-kontakter"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Se kontakter"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Innstillinger"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-pa/strings.xml b/java/com/android/dialer/main/impl/res/values-pa/strings.xml
new file mode 100644
index 0000000..57d3334
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-pa/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ਫ਼ੋਨ"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ਫ਼ੋਨ NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ਕਾਲ ਇਤਿਹਾਸ"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ਸੰਪਰਕਾਂ ਅਤੇ ਥਾਂਵਾਂ ਨੂੰ ਖੋਜੋ"</string>
+    <string name="contacts" msgid="4464246185723317911">"ਸੰਪਰਕ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"ਸੰਪਰਕ ਵੇਖੋ"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ਕਾਲ ਇਤਿਹਾਸ"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"ਸਪੀਡ ਡਾਇਲ"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"ਵੌਇਸਮੇਲ"</string>
+    <string name="settings" msgid="7614336599112169779">"ਸੈਟਿੰਗਾਂ"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ਪ੍ਰਤੀਕਰਮ ਭੇਜੋ"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-pl/strings.xml b/java/com/android/dialer/main/impl/res/values-pl/strings.xml
new file mode 100644
index 0000000..70f535e
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-pl/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nowy interfejs telefonu"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historia połączeń"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Wyszukaj kontakty i miejsca"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakty"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Wyświetl kontakty"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Historia połączeń"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Szybkie wybieranie"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Poczta głosowa"</string>
+    <string name="settings" msgid="7614336599112169779">"Ustawienia"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Prześlij opinię"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-pt-rBR/strings.xml b/java/com/android/dialer/main/impl/res/values-pt-rBR/strings.xml
new file mode 100644
index 0000000..e408d65
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-pt-rBR/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nova IU: Telefone"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Histórico de chamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pesquisar contatos e lugares"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contatos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ver contatos"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Configurações"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-pt-rPT/strings.xml b/java/com/android/dialer/main/impl/res/values-pt-rPT/strings.xml
new file mode 100644
index 0000000..33c1451
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-pt-rPT/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NIU do telemóvel"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Histórico de chamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pesquisar contactos e locais"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contactos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ver contactos"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Definições"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-pt/strings.xml b/java/com/android/dialer/main/impl/res/values-pt/strings.xml
new file mode 100644
index 0000000..e408d65
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-pt/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefone"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nova IU: Telefone"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Histórico de chamadas"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Pesquisar contatos e lugares"</string>
+    <string name="contacts" msgid="4464246185723317911">"Contatos"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Ver contatos"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Configurações"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ro/strings.xml b/java/com/android/dialer/main/impl/res/values-ro/strings.xml
new file mode 100644
index 0000000..674e494
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ro/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Noua IU pentru Telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Istoricul apelurilor"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Căutați persoane de contact și locuri"</string>
+    <string name="contacts" msgid="4464246185723317911">"Agendă"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Afișați Agenda"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Setări"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ru/strings.xml b/java/com/android/dialer/main/impl/res/values-ru/strings.xml
new file mode 100644
index 0000000..d6d4918
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ru/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Позвонить"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Позвонить в новом интерфейсе"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Журнал звонков"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Поиск контактов и мест"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контакты"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Посмотреть контакты"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Настройки"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-si/strings.xml b/java/com/android/dialer/main/impl/res/values-si/strings.xml
new file mode 100644
index 0000000..c3c4b80
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-si/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"දුරකථනය"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ඇමතුම් ඉතිහාසය"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"සම්බන්ධතා සහ ස්ථාන සොයන්න"</string>
+    <string name="contacts" msgid="4464246185723317911">"සම්බන්ධතා"</string>
+    <string name="description_contacts" msgid="12768481422137448">"සම්බන්ධතා බලන්න"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"සැකසීම්"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sk/strings.xml b/java/com/android/dialer/main/impl/res/values-sk/strings.xml
new file mode 100644
index 0000000..d5ee882
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sk/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefón"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nové rozhranie Telefónu"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"História hovorov"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Hľadať kontakty a miesta"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakty"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Zobraziť kontakty"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Nastavenia"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sl/strings.xml b/java/com/android/dialer/main/impl/res/values-sl/strings.xml
new file mode 100644
index 0000000..44fb501
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sl/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nov uporabniški vmesnik za telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Zgodovina klicev"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Iskanje po stikih in mestih"</string>
+    <string name="contacts" msgid="4464246185723317911">"Stiki"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Prikaz stikov"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Nastavitve"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sq/strings.xml b/java/com/android/dialer/main/impl/res/values-sq/strings.xml
new file mode 100644
index 0000000..c2e3664
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sq/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefoni"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Ndërfaqja e re e përdoruesit e telefonit"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Historiku i telefonatave"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Kërko për kontakte dhe vende"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktet"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Shiko kontaktet"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Cilësimet"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sr/strings.xml b/java/com/android/dialer/main/impl/res/values-sr/strings.xml
new file mode 100644
index 0000000..542460e
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sr/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Телефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Нови UI Телефона"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Историја позива"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Претражите контакте и места"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контакти"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Прегледајте контакте"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Ист. позива"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Брзо поз."</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Гов. пошта"</string>
+    <string name="settings" msgid="7614336599112169779">"Подешавања"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Пошаљи повр. информ."</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sv/strings.xml b/java/com/android/dialer/main/impl/res/values-sv/strings.xml
new file mode 100644
index 0000000..cefefb3
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sv/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Nytt användargränssnitt för telefon"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Samtalshistorik"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Sök efter kontakter och platser"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontakter"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Visa kontakter"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Samt.hist."</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Snabbval"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Röstbrevl."</string>
+    <string name="settings" msgid="7614336599112169779">"Inställningar"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Skicka feedback"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-sw/strings.xml b/java/com/android/dialer/main/impl/res/values-sw/strings.xml
new file mode 100644
index 0000000..158afa3
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-sw/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Simu"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI ya Simu"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Rekodi ya simu zilizopigwa"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Tafuta anwani na mahali"</string>
+    <string name="contacts" msgid="4464246185723317911">"Anwani"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Angalia Anwani"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Mipangilio"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ta/strings.xml b/java/com/android/dialer/main/impl/res/values-ta/strings.xml
new file mode 100644
index 0000000..81e02ef
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ta/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ஃபோன்"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ஃபோன் NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"அழைப்பு வரலாறு"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"தொடர்புகளையும் இடங்களையும் தேடுவதற்கான பொத்தான்"</string>
+    <string name="contacts" msgid="4464246185723317911">"தொடர்புகள்"</string>
+    <string name="description_contacts" msgid="12768481422137448">"தொடர்புகளைக் காட்டுவதற்கான பொத்தான்"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"கால் தகவல்"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"ஸ்பீட்டைல்"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"குரலஞ்சல்"</string>
+    <string name="settings" msgid="7614336599112169779">"அமைப்புகள்"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"கருத்துத் தெரிவி"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-te/strings.xml b/java/com/android/dialer/main/impl/res/values-te/strings.xml
new file mode 100644
index 0000000..c337cf3
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-te/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"ఫోన్"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"ఫోన్ NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"కాల్ చరిత్ర"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"పరిచయాలు మరియు స్థలాలను శోధించు"</string>
+    <string name="contacts" msgid="4464246185723317911">"పరిచయాలు"</string>
+    <string name="description_contacts" msgid="12768481422137448">"పరిచయాలను వీక్షించండి"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"కాల్ చరిత్ర"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"స్పీడ్ డయల్"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"వాయిస్ మెయిల్"</string>
+    <string name="settings" msgid="7614336599112169779">"సెట్టింగ్‌లు"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"అభిప్రాయాన్ని పంపండి"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-th/strings.xml b/java/com/android/dialer/main/impl/res/values-th/strings.xml
new file mode 100644
index 0000000..aa83f81
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-th/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"โทรศัพท์"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI ของโทรศัพท์"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"ประวัติการโทร"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"ค้นหารายชื่อติดต่อและสถานที่"</string>
+    <string name="contacts" msgid="4464246185723317911">"รายชื่อติดต่อ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"ดูรายชื่อติดต่อ"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"ประวัติการโทร"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"โทรด่วน"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"ข้อความเสียง"</string>
+    <string name="settings" msgid="7614336599112169779">"การตั้งค่า"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"ส่งความคิดเห็น"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-tl/strings.xml b/java/com/android/dialer/main/impl/res/values-tl/strings.xml
new file mode 100644
index 0000000..ca3bd6d
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-tl/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telepono"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI ng telepono"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"History ng tawag"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Maghanap ng mga contact at mga lugar"</string>
+    <string name="contacts" msgid="4464246185723317911">"Mga Contact"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Tingnan ang Mga Contact"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Mga Setting"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-tr/strings.xml b/java/com/android/dialer/main/impl/res/values-tr/strings.xml
new file mode 100644
index 0000000..623c156
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-tr/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Telefon"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Telefonun Yeni Kullanıcı Arayüzü"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Çağrı geçmişi"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Kişileri ve yerleri ara"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kişiler"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Kişileri Göster"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Ayarlar"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-uk/strings.xml b/java/com/android/dialer/main/impl/res/values-uk/strings.xml
new file mode 100644
index 0000000..7691054
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-uk/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Телефон"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Новий елемент інтерфейсу телефону"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Історія дзвінків"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Шукати контакти й місця"</string>
+    <string name="contacts" msgid="4464246185723317911">"Контакти"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Переглянути контакти"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"Історія"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"Шв. набір"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"Гол. пошта"</string>
+    <string name="settings" msgid="7614336599112169779">"Налаштування"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"Надіслати відгук"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-ur/strings.xml b/java/com/android/dialer/main/impl/res/values-ur/strings.xml
new file mode 100644
index 0000000..5795faa
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-ur/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"فون"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"‏فون NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"کال کی سرگزشت"</string>
+    <string name="search" msgid="3570654445331155513">"‎@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"رابطے اور مقامات تلاش کریں"</string>
+    <string name="contacts" msgid="4464246185723317911">"رابطے"</string>
+    <string name="description_contacts" msgid="12768481422137448">"رابطے دیکھیں"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"کال کی سرگزشت"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"اسپیڈ ڈائل"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"صوتی میل"</string>
+    <string name="settings" msgid="7614336599112169779">"ترتیبات"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"تاثرات بھیجیں"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-uz/strings.xml b/java/com/android/dialer/main/impl/res/values-uz/strings.xml
new file mode 100644
index 0000000..be14286
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-uz/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Qo‘ng‘iroq qilish"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"Yangi interfeysdan foydalanib qo‘ng‘iroq qilish"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Qo‘ng‘iroqlar tarixi"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Kontakt va joylarni qidirish"</string>
+    <string name="contacts" msgid="4464246185723317911">"Kontaktlar"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Kontaktlarni ko‘rish"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Sozlamalar"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-vi/strings.xml b/java/com/android/dialer/main/impl/res/values-vi/strings.xml
new file mode 100644
index 0000000..768167a
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-vi/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Điện thoại"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"NUI điện thoại"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Nhật ký cuộc gọi"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Tìm kiếm liên hệ và địa điểm"</string>
+    <string name="contacts" msgid="4464246185723317911">"Danh bạ"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Xem Danh bạ"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Cài đặt"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-zh-rCN/strings.xml b/java/com/android/dialer/main/impl/res/values-zh-rCN/strings.xml
new file mode 100644
index 0000000..9649748
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-zh-rCN/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"拨打电话"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"电话 NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"通话记录"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"搜索联系人和地点"</string>
+    <string name="contacts" msgid="4464246185723317911">"联系人"</string>
+    <string name="description_contacts" msgid="12768481422137448">"查看联系人"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"通话记录"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"快速拨号"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"语音邮件"</string>
+    <string name="settings" msgid="7614336599112169779">"设置"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"发送反馈"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-zh-rHK/strings.xml b/java/com/android/dialer/main/impl/res/values-zh-rHK/strings.xml
new file mode 100644
index 0000000..5595a9d
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-zh-rHK/strings.xml
@@ -0,0 +1,32 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"電話"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"電話 NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"通話記錄"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"搜尋聯絡人和地點"</string>
+    <string name="contacts" msgid="4464246185723317911">"通訊錄"</string>
+    <string name="description_contacts" msgid="12768481422137448">"查看通訊錄"</string>
+    <string name="tab_title_call_history" msgid="5191872501729332994">"通話記錄"</string>
+    <string name="tab_title_speed_dial" msgid="1968484500112572774">"快速撥號"</string>
+    <string name="tab_title_voicemail" msgid="4777655983569268504">"留言"</string>
+    <string name="settings" msgid="7614336599112169779">"設定"</string>
+    <string name="main_send_feedback" msgid="2446919533981327373">"提供意見"</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-zh-rTW/strings.xml b/java/com/android/dialer/main/impl/res/values-zh-rTW/strings.xml
new file mode 100644
index 0000000..0ae532e
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-zh-rTW/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"手機"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"手機 NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"通話紀錄"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"搜尋聯絡人和地點"</string>
+    <string name="contacts" msgid="4464246185723317911">"聯絡人"</string>
+    <string name="description_contacts" msgid="12768481422137448">"查看聯絡人"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"設定"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values-zu/strings.xml b/java/com/android/dialer/main/impl/res/values-zu/strings.xml
new file mode 100644
index 0000000..408acac
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values-zu/strings.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="main_activity_label" msgid="3121599977875141886">"Ifoni"</string>
+    <string name="nui_shortcut_name" msgid="6370942901789984087">"I-Phone NUI"</string>
+    <string name="main_call_history_tab_description" msgid="1705569872650796265">"Umlando wekholi"</string>
+    <string name="search" msgid="3570654445331155513">"@android:string/search_go"</string>
+    <string name="description_search" msgid="3443578912463129718">"Sesha oxhumana nabo nezindawo"</string>
+    <string name="contacts" msgid="4464246185723317911">"Oxhumana nabo"</string>
+    <string name="description_contacts" msgid="12768481422137448">"Buka oxhumana nabo"</string>
+    <!-- no translation found for tab_title_call_history (5191872501729332994) -->
+    <skip />
+    <!-- no translation found for tab_title_speed_dial (1968484500112572774) -->
+    <skip />
+    <!-- no translation found for tab_title_voicemail (4777655983569268504) -->
+    <skip />
+    <string name="settings" msgid="7614336599112169779">"Izilungiselelo"</string>
+    <!-- no translation found for main_send_feedback (2446919533981327373) -->
+    <skip />
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values/strings.xml b/java/com/android/dialer/main/impl/res/values/strings.xml
new file mode 100644
index 0000000..ba8a20b
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values/strings.xml
@@ -0,0 +1,49 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<resources>
+  <!-- Name of the main activity. -->
+  <string name="main_activity_label">Phone</string>
+
+  <!-- Name of launcher shortcut for the new UI main activity.
+       TODO(38502365): Remove this once we're ready to launch the new UI. -->
+  <string name="nui_shortcut_name">Phone NUI</string>
+
+  <!-- The description text for the call log tab. -->
+  <string name="main_call_history_tab_description">Call history</string>
+
+  <!-- Text for a toolbar button that shows the user their contacts [CHAR LIMIT=NONE] -->
+  <string name="search">@android:string/search_go</string>
+  <!-- A11y announcement to let users know a button will let them search for contacts and places [CHAR LIMIT=NONE] -->
+  <string name="description_search">Search contacts and places</string>
+
+  <!-- Text for a toolbar button that shows the user their contacts [CHAR LIMIT=NONE] -->
+  <string name="contacts">Contacts</string>
+  <!-- A11y announcement to let users know a button will let them view their contacts [CHAR LIMIT=NONE] -->
+  <string name="description_contacts">View Contacts</string>
+
+  <!-- Tab text to show users their call log/call history [CHAR LIMIT=10] -->
+  <string name="tab_title_call_history">Call History</string>
+  <!-- Tab text to show users their favorite contacts that they can call in 1 click [CHAR LIMIT=10] -->
+  <string name="tab_title_speed_dial">Speed Dial</string>
+  <!-- Tab text to show users their voicemails  [CHAR LIMIT=10] -->
+  <string name="tab_title_voicemail">Voicemail</string>
+
+  <!-- Show users their settings [CHAR LIMIT=20] -->
+  <string name="settings">Settings</string>
+  <!-- Send feedback about the app [CHAR LIMIT=20] -->
+  <string name="main_send_feedback">Send feedback</string>
+</resources>
diff --git a/java/com/android/dialer/main/impl/res/values/styles.xml b/java/com/android/dialer/main/impl/res/values/styles.xml
new file mode 100644
index 0000000..38c5008
--- /dev/null
+++ b/java/com/android/dialer/main/impl/res/values/styles.xml
@@ -0,0 +1,28 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<resources>
+  <style name="NuiMainActivityTheme" parent="Theme.AppCompat.Light.NoActionBar">
+    <item name="android:colorPrimary">@color/dialtacts_theme_color</item>
+    <item name="android:colorPrimaryDark">@color/dialer_theme_color_dark</item>
+    <item name="android:colorAccent">@color/dialer_secondary_color</item>
+  </style>
+
+  <style name="AppBarTheme" parent="Theme.AppCompat">
+    <item name="android:colorPrimary">@color/dialtacts_theme_color</item>
+    <item name="android:colorAccent">@color/dialer_secondary_color</item>
+  </style>
+</resources>
diff --git a/java/com/android/dialer/multimedia/MultimediaData.java b/java/com/android/dialer/multimedia/MultimediaData.java
index 22bb764..dee0cff 100644
--- a/java/com/android/dialer/multimedia/MultimediaData.java
+++ b/java/com/android/dialer/multimedia/MultimediaData.java
@@ -20,6 +20,7 @@
 import android.net.Uri;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.text.TextUtils;
 import com.android.dialer.common.LogUtil;
 import com.google.auto.value.AutoValue;
 
@@ -63,6 +64,11 @@
   /** Returns {@code true} if this data is marked as important. */
   public abstract boolean isImportant();
 
+  /** Returns true if this has image, text or location data. */
+  public boolean hasData() {
+    return hasImageData() || !TextUtils.isEmpty(getText()) || getLocation() != null;
+  }
+
   /** Returns the string form of this MultimediaData with no PII. */
   @Override
   public String toString() {
diff --git a/java/com/android/dialer/notification/AndroidManifest.xml b/java/com/android/dialer/notification/AndroidManifest.xml
index 741f481..b89d8f8 100644
--- a/java/com/android/dialer/notification/AndroidManifest.xml
+++ b/java/com/android/dialer/notification/AndroidManifest.xml
@@ -1,3 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
 <!--
   ~ Copyright (C) 2017 The Android Open Source Project
   ~
@@ -13,19 +14,6 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-
-<manifest
-  xmlns:android="http://schemas.android.com/apk/res/android"
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.android.dialer.notification">
-
-  <uses-sdk android:minSdkVersion="23"/>
-  <application>
-    <receiver android:name=".PackageUpdatedReceiver"
-              android:directBootAware="true">
-      <intent-filter>
-        <action android:name="android.intent.action.MY_PACKAGE_REPLACED"/>
-        <action android:name="android.intent.action.LOCKED_BOOT_COMPLETED"/>
-      </intent-filter>
-    </receiver>
-  </application>
 </manifest>
diff --git a/java/com/android/dialer/notification/GroupedNotificationUtil.java b/java/com/android/dialer/notification/GroupedNotificationUtil.java
deleted file mode 100644
index 3925248..0000000
--- a/java/com/android/dialer/notification/GroupedNotificationUtil.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.dialer.notification;
-
-import android.app.NotificationManager;
-import android.service.notification.StatusBarNotification;
-import android.support.annotation.NonNull;
-import android.support.annotation.Nullable;
-import java.util.Objects;
-
-/** Utilities for dealing with grouped notifications */
-public final class GroupedNotificationUtil {
-
-  /**
-   * Remove notification(s) that were added as part of a group. Will ensure that if this is the last
-   * notification in the group the summary will be removed.
-   *
-   * @param tag String tag as included in {@link NotificationManager#notify(String, int,
-   *     android.app.Notification)}. If null will remove all notifications under id
-   * @param id notification id as included with {@link NotificationManager#notify(String, int,
-   *     android.app.Notification)}.
-   * @param summaryTag String tag of the summary notification
-   */
-  public static void removeNotification(
-      @NonNull NotificationManager notificationManager,
-      @Nullable String tag,
-      int id,
-      @NonNull String summaryTag) {
-    if (tag == null) {
-      // Clear all grouped notifications
-      for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
-        if (notification.getId() == id) {
-          notificationManager.cancel(notification.getTag(), id);
-        }
-      }
-    } else {
-      notificationManager.cancel(tag, id);
-
-      // See if other non-summary grouped notifications exist, and if not then clear the summary
-      boolean clearSummary = true;
-      for (StatusBarNotification notification : notificationManager.getActiveNotifications()) {
-        if (notification.getId() == id && !Objects.equals(summaryTag, notification.getTag())) {
-          clearSummary = false;
-          break;
-        }
-      }
-      if (clearSummary) {
-        notificationManager.cancel(summaryTag, id);
-      }
-    }
-  }
-}
diff --git a/java/com/android/dialer/notification/NotificationChannelId.java b/java/com/android/dialer/notification/NotificationChannelId.java
new file mode 100644
index 0000000..4ab3d44
--- /dev/null
+++ b/java/com/android/dialer/notification/NotificationChannelId.java
@@ -0,0 +1,41 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.notification;
+
+import android.support.annotation.StringDef;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/** Centralized source of all notification channels used by Dialer. */
+@Retention(RetentionPolicy.SOURCE)
+@StringDef({
+  NotificationChannelId.INCOMING_CALL,
+  NotificationChannelId.ONGOING_CALL,
+  NotificationChannelId.MISSED_CALL,
+  NotificationChannelId.DEFAULT,
+})
+public @interface NotificationChannelId {
+  // This value is white listed in the system.
+  // See /vendor/google/nexus_overlay/common/frameworks/base/core/res/res/values/config.xml
+  String INCOMING_CALL = "phone_incoming_call";
+
+  String ONGOING_CALL = "phone_ongoing_call";
+
+  String MISSED_CALL = "phone_missed_call";
+
+  String DEFAULT = "phone_default";
+}
diff --git a/java/com/android/dialer/notification/NotificationChannelManager.java b/java/com/android/dialer/notification/NotificationChannelManager.java
index 8867906..790aac3 100644
--- a/java/com/android/dialer/notification/NotificationChannelManager.java
+++ b/java/com/android/dialer/notification/NotificationChannelManager.java
@@ -17,366 +17,156 @@
 package com.android.dialer.notification;
 
 import android.annotation.TargetApi;
-import android.app.Notification;
 import android.app.NotificationChannel;
-import android.app.NotificationChannelGroup;
 import android.app.NotificationManager;
 import android.content.Context;
-import android.content.Intent;
-import android.content.SharedPreferences;
 import android.media.AudioAttributes;
-import android.net.Uri;
 import android.os.Build.VERSION_CODES;
-import android.provider.Settings;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
-import android.support.annotation.RequiresApi;
-import android.support.annotation.StringDef;
 import android.support.v4.os.BuildCompat;
-import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
-import android.telecom.TelecomManager;
-import android.telephony.TelephonyManager;
-import com.android.contacts.common.compat.TelephonyManagerCompat;
-import com.android.dialer.buildtype.BuildType;
+import android.util.ArraySet;
+import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.common.concurrent.DialerExecutors;
-import com.android.dialer.telecom.TelecomUtil;
-import java.lang.annotation.Retention;
-import java.lang.annotation.RetentionPolicy;
-import java.util.List;
-import java.util.Objects;
+import java.util.Set;
 
-/** Contains info on how to create {@link NotificationChannel NotificationChannels} */
-public class NotificationChannelManager {
-
-  private static final String PREFS_FILENAME = "NotificationChannelManager";
-  private static final String PREF_NEED_FIRST_INIT = "needFirstInit";
-  private static NotificationChannelManager instance;
-
-  public static NotificationChannelManager getInstance() {
-    if (instance == null) {
-      instance = new NotificationChannelManager();
-    }
-    return instance;
-  }
+/** Creates all notification channels for Dialer. */
+@TargetApi(VERSION_CODES.O)
+public final class NotificationChannelManager {
 
   /**
-   * Set the channel of notification appropriately. Will create the channel if it does not already
-   * exist. Safe to call pre-O (will no-op).
+   * Creates all the notification channels Dialer will need. This method is called at app startup
+   * and must be fast. Currently it takes between 3 to 7 milliseconds on a Pixel XL.
    *
-   * <p>phoneAccount should only be null if channelName is {@link Channel#DEFAULT} or {@link
-   * Channel#MISSED_CALL} since these do not have account-specific settings.
+   * <p>An alternative approach would be to lazily create channels when we actualy post a
+   * notification. The advatange to precreating channels is that:
+   *
+   * <ul>
+   *   <li>channels will be available to user right away. For example, users can customize voicemail
+   *       sounds when they first get their device without waiting for a voicemail to arrive first.
+   *   <li>code that posts a notification can be simpler
+   *   <li>channel management code is simpler and it's easier to ensure that the correct set of
+   *       channels are visible.
+   *       <ul>
    */
-  @TargetApi(26)
-  public static void applyChannel(
-      @NonNull Notification.Builder notification,
-      @NonNull Context context,
-      @Channel String channelName,
-      @Nullable PhoneAccountHandle phoneAccount) {
-    checkNullity(channelName, phoneAccount);
+  public static void initChannels(@NonNull Context context) {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isNotNull(context);
 
-    if (BuildCompat.isAtLeastO()) {
-      NotificationChannel channel =
-          NotificationChannelManager.getInstance().getChannel(context, channelName, phoneAccount);
-      notification.setChannelId(channel.getId());
-    }
-  }
-
-  private static void checkNullity(
-      @Channel String channelName, @Nullable PhoneAccountHandle phoneAccount) {
-    if (phoneAccount != null || channelAllowsNullPhoneAccountHandle(channelName)) {
-      return;
-    }
-
-    // TODO (b/36568553): don't throw an exception once most cases have been identified
-    IllegalArgumentException exception =
-        new IllegalArgumentException(
-            "Phone account handle must not be null on channel " + channelName);
-    if (BuildType.get() == BuildType.RELEASE) {
-      LogUtil.e("NotificationChannelManager.applyChannel", null, exception);
-    } else {
-      throw exception;
-    }
-  }
-
-  private static boolean channelAllowsNullPhoneAccountHandle(@Channel String channelName) {
-    switch (channelName) {
-      case Channel.DEFAULT:
-      case Channel.MISSED_CALL:
-        return true;
-      default:
-        return false;
-    }
-  }
-
-  /** The base Channel IDs for {@link NotificationChannel} */
-  @Retention(RetentionPolicy.SOURCE)
-  @StringDef({
-    Channel.INCOMING_CALL,
-    Channel.ONGOING_CALL,
-    Channel.ONGOING_CALL_OLD,
-    Channel.MISSED_CALL,
-    Channel.VOICEMAIL,
-    Channel.EXTERNAL_CALL,
-    Channel.DEFAULT
-  })
-  public @interface Channel {
-    @Deprecated String ONGOING_CALL_OLD = "ongoingCall";
-    String INCOMING_CALL = "incomingCall";
-    String ONGOING_CALL = "ongoingCall2";
-    String MISSED_CALL = "missedCall";
-    String VOICEMAIL = "voicemail";
-    String EXTERNAL_CALL = "externalCall";
-    String DEFAULT = "default";
-  }
-
-  @Channel
-  private static final String[] prepopulatedAccountChannels =
-      new String[] {Channel.INCOMING_CALL, Channel.ONGOING_CALL, Channel.VOICEMAIL};
-
-  @Channel
-  private static final String[] prepopulatedGlobalChannels =
-      new String[] {Channel.MISSED_CALL, Channel.DEFAULT};
-
-  private NotificationChannelManager() {}
-
-  public void firstInitIfNeeded(@NonNull Context context) {
-    if (BuildCompat.isAtLeastO()) {
-      DialerExecutors.createNonUiTaskBuilder(this::firstInitIfNeededSync)
-          .build()
-          .executeSerial(context);
-    }
-  }
-
-  private boolean firstInitIfNeededSync(@NonNull Context context) {
-    if (needsFirstInit(context)) {
-      initChannels(context);
-      return true;
-    }
-    return false;
-  }
-
-  public boolean needsFirstInit(@NonNull Context context) {
-    return (BuildCompat.isAtLeastO()
-        && getSharedPreferences(context).getBoolean(PREF_NEED_FIRST_INIT, true));
-  }
-
-  @RequiresApi(VERSION_CODES.N)
-  private SharedPreferences getSharedPreferences(@NonNull Context context) {
-    // Use device protected storage since in some cases this will need to be accessed while device
-    // is locked
-    context = context.createDeviceProtectedStorageContext();
-    return context.getSharedPreferences(PREFS_FILENAME, Context.MODE_PRIVATE);
-  }
-
-  @RequiresApi(26)
-  public Intent getSettingsIntentForChannel(
-      @NonNull Context context, @Channel String channelName, PhoneAccountHandle accountHandle) {
-    checkNullity(channelName, accountHandle);
-    Intent intent = new Intent(Settings.ACTION_CHANNEL_NOTIFICATION_SETTINGS);
-    intent.putExtra(
-        Settings.EXTRA_CHANNEL_ID, getChannel(context, channelName, accountHandle).getId());
-    intent.putExtra(Settings.EXTRA_APP_PACKAGE, context.getPackageName());
-    return intent;
-  }
-
-  @TargetApi(26)
-  @SuppressWarnings("AndroidApiChecker")
-  public void initChannels(@NonNull Context context) {
-    if (!BuildCompat.isAtLeastO()) {
-      return;
-    }
-    LogUtil.enterBlock("NotificationChannelManager.initChannels");
-    List<PhoneAccountHandle> phoneAccounts = TelecomUtil.getCallCapablePhoneAccounts(context);
-
-    // Remove notification channels for PhoneAccounts that don't exist anymore
     NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
-    List<NotificationChannelGroup> notificationChannelGroups =
-        notificationManager.getNotificationChannelGroups();
-    notificationChannelGroups
-        .stream()
-        .filter(group -> !idExists(group.getId(), phoneAccounts))
-        .forEach(group -> deleteGroup(notificationManager, group));
+    Set<String> desiredChannelIds = getAllDesiredChannelIds(context);
+    Set<String> existingChannelIds = getAllExistingChannelIds(context);
 
-    for (PhoneAccountHandle phoneAccountHandle : phoneAccounts) {
-      for (@Channel String channel : prepopulatedAccountChannels) {
-        getChannel(context, channel, phoneAccountHandle);
+    if (desiredChannelIds.equals(existingChannelIds)) {
+      return;
+    }
+    LogUtil.i(
+        "NotificationChannelManager.initChannels",
+        "doing an expensive initialization of all notification channels");
+    LogUtil.i(
+        "NotificationChannelManager.initChannels", "desired channel IDs: " + desiredChannelIds);
+    LogUtil.i(
+        "NotificationChannelManager.initChannels", "existing channel IDs: " + existingChannelIds);
+
+    // Delete any old channels that we don't use any more. This is safe because if we're recreate
+    // this later then any user settings will be restored. An example is SIM specific voicemail
+    // channel that gets deleted when the user removes the SIM and is then restored when the user
+    // re-inserts the SIM.
+    for (String existingChannelId : existingChannelIds) {
+      if (!desiredChannelIds.contains(existingChannelId)) {
+        notificationManager.deleteNotificationChannel(existingChannelId);
       }
     }
 
-    for (@Channel String channel : prepopulatedGlobalChannels) {
-      getChannel(context, channel, null);
-    }
-    getSharedPreferences(context).edit().putBoolean(PREF_NEED_FIRST_INIT, false).apply();
-  }
-
-  @TargetApi(26)
-  private void deleteGroup(
-      @NonNull NotificationManager notificationManager, @NonNull NotificationChannelGroup group) {
-    for (NotificationChannel channel : group.getChannels()) {
-      notificationManager.deleteNotificationChannel(channel.getId());
-    }
-    notificationManager.deleteNotificationChannelGroup(group.getId());
-  }
-
-  private boolean idExists(String id, List<PhoneAccountHandle> phoneAccountHandles) {
-    for (PhoneAccountHandle handle : phoneAccountHandles) {
-      if (Objects.equals(handle.getId(), id)) {
-        return true;
-      }
-    }
-    return false;
+    // Just recreate all desired channels. We won't do this often so it's ok to do this now.
+    createIncomingCallChannel(context);
+    createOngoingCallChannel(context);
+    createMissedCallChannel(context);
+    createDefaultChannel(context);
+    VoicemailChannelUtils.createAllChannels(context);
   }
 
   @NonNull
-  @RequiresApi(26)
-  private NotificationChannel getChannel(
-      @NonNull Context context,
-      @Channel String channelName,
-      @Nullable PhoneAccountHandle phoneAccount) {
-    String channelId = channelNameToId(channelName, phoneAccount);
-    NotificationChannel channel = getNotificationManager(context).getNotificationChannel(channelId);
-    if (channel == null) {
-      channel = createChannel(context, channelName, phoneAccount);
+  public static String getVoicemailChannelId(
+      @NonNull Context context, @Nullable PhoneAccountHandle handle) {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isNotNull(context);
+    return VoicemailChannelUtils.getChannelId(context, handle);
+  }
+
+  private static Set<String> getAllExistingChannelIds(@NonNull Context context) {
+    Set<String> result = new ArraySet<>();
+    NotificationManager notificationManager = context.getSystemService(NotificationManager.class);
+    for (NotificationChannel channel : notificationManager.getNotificationChannels()) {
+      result.add(channel.getId());
     }
-    return channel;
+    return result;
   }
 
-  private static String channelNameToId(
-      @Channel String name, @Nullable PhoneAccountHandle phoneAccountHandle) {
-    if (phoneAccountHandle == null) {
-      return name;
-    } else {
-      return name + ":" + phoneAccountHandle.getId();
-    }
+  private static Set<String> getAllDesiredChannelIds(@NonNull Context context) {
+    Set<String> result = new ArraySet<>();
+    result.add(NotificationChannelId.INCOMING_CALL);
+    result.add(NotificationChannelId.ONGOING_CALL);
+    result.add(NotificationChannelId.MISSED_CALL);
+    result.add(NotificationChannelId.DEFAULT);
+    result.addAll(VoicemailChannelUtils.getAllChannelIds(context));
+    return result;
   }
 
-  @RequiresApi(26)
-  private NotificationChannel createChannel(
-      Context context,
-      @Channel String channelName,
-      @Nullable PhoneAccountHandle phoneAccountHandle) {
-    String channelId = channelNameToId(channelName, phoneAccountHandle);
-
-    if (phoneAccountHandle != null) {
-      PhoneAccount account = getTelecomManager(context).getPhoneAccount(phoneAccountHandle);
-      NotificationChannelGroup group =
-          new NotificationChannelGroup(
-              phoneAccountHandle.getId(),
-              (account == null) ? phoneAccountHandle.getId() : account.getLabel().toString());
-      getNotificationManager(context)
-          .createNotificationChannelGroup(group); // No-op if already exists
-    } else if (!channelAllowsNullPhoneAccountHandle(channelName)) {
-      LogUtil.w(
-          "NotificationChannelManager.createChannel",
-          "Null PhoneAccountHandle with channel " + channelName);
-    }
-
-    Uri silentRingtone = Uri.EMPTY;
-
-    CharSequence name;
-    int importance;
-    boolean canShowBadge;
-    boolean lights;
-    boolean vibration;
-    Uri sound;
-    switch (channelName) {
-      case Channel.INCOMING_CALL:
-        name = context.getText(R.string.notification_channel_incoming_call);
-        importance = NotificationManager.IMPORTANCE_MAX;
-        canShowBadge = false;
-        lights = true;
-        vibration = false;
-        sound = silentRingtone;
-        break;
-      case Channel.MISSED_CALL:
-        name = context.getText(R.string.notification_channel_missed_call);
-        importance = NotificationManager.IMPORTANCE_DEFAULT;
-        canShowBadge = true;
-        lights = true;
-        vibration = true;
-        sound = silentRingtone;
-        break;
-      case Channel.ONGOING_CALL:
-        name = context.getText(R.string.notification_channel_ongoing_call);
-        importance = NotificationManager.IMPORTANCE_DEFAULT;
-        canShowBadge = false;
-        lights = false;
-        vibration = false;
-        sound = silentRingtone;
-        deleteOldOngoingCallChannelIfNeeded(context, phoneAccountHandle);
-        break;
-      case Channel.VOICEMAIL:
-        name = context.getText(R.string.notification_channel_voicemail);
-        importance = NotificationManager.IMPORTANCE_DEFAULT;
-        canShowBadge = true;
-        lights = true;
-        vibration =
-            TelephonyManagerCompat.isVoicemailVibrationEnabled(
-                getTelephonyManager(context), phoneAccountHandle);
-        sound =
-            TelephonyManagerCompat.getVoicemailRingtoneUri(
-                getTelephonyManager(context), phoneAccountHandle);
-        break;
-      case Channel.EXTERNAL_CALL:
-        name = context.getText(R.string.notification_channel_external_call);
-        importance = NotificationManager.IMPORTANCE_HIGH;
-        canShowBadge = false;
-        lights = true;
-        vibration = true;
-        sound = null;
-        break;
-      case Channel.DEFAULT:
-        name = context.getText(R.string.notification_channel_misc);
-        importance = NotificationManager.IMPORTANCE_DEFAULT;
-        canShowBadge = false;
-        lights = true;
-        vibration = true;
-        sound = null;
-        break;
-      default:
-        throw new IllegalArgumentException("Unknown channel: " + channelName);
-    }
-
-    NotificationChannel channel = new NotificationChannel(channelId, name, importance);
-    channel.setShowBadge(canShowBadge);
-    if (sound != null) {
-      // silentRingtone acts as a sentinel value to indicate that setSound should still be called,
-      // but with a null value to indicate no sound.
-      channel.setSound(
-          sound.equals(silentRingtone) ? null : sound,
-          new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
-    }
-    channel.enableLights(lights);
-    channel.enableVibration(vibration);
-    getNotificationManager(context).createNotificationChannel(channel);
-    return channel;
+  private static void createIncomingCallChannel(@NonNull Context context) {
+    NotificationChannel channel =
+        new NotificationChannel(
+            NotificationChannelId.INCOMING_CALL,
+            context.getText(R.string.notification_channel_incoming_call),
+            NotificationManager.IMPORTANCE_MAX);
+    channel.setShowBadge(false);
+    channel.enableLights(true);
+    channel.enableVibration(false);
+    channel.setSound(
+        null, new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
   }
 
-  @RequiresApi(26)
-  private void deleteOldOngoingCallChannelIfNeeded(
-      @NonNull Context context, PhoneAccountHandle phoneAccountHandle) {
-    String channelId = channelNameToId(Channel.ONGOING_CALL_OLD, phoneAccountHandle);
-    NotificationManager notificationManager = getNotificationManager(context);
-    NotificationChannel channel = notificationManager.getNotificationChannel(channelId);
-    if (channel != null) {
-      LogUtil.i(
-          "NotificationManager.deleteOldOngoingCallChannelIfNeeded",
-          "Old ongoing channel found. Deleting to create new channel");
-      notificationManager.deleteNotificationChannel(channel.getId());
-    }
+  private static void createOngoingCallChannel(@NonNull Context context) {
+    NotificationChannel channel =
+        new NotificationChannel(
+            NotificationChannelId.ONGOING_CALL,
+            context.getText(R.string.notification_channel_ongoing_call),
+            NotificationManager.IMPORTANCE_DEFAULT);
+    channel.setShowBadge(false);
+    channel.enableLights(false);
+    channel.enableVibration(false);
+    channel.setSound(
+        null, new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
   }
 
-  private static NotificationManager getNotificationManager(@NonNull Context context) {
-    return context.getSystemService(NotificationManager.class);
+  private static void createMissedCallChannel(@NonNull Context context) {
+    NotificationChannel channel =
+        new NotificationChannel(
+            NotificationChannelId.MISSED_CALL,
+            context.getText(R.string.notification_channel_missed_call),
+            NotificationManager.IMPORTANCE_DEFAULT);
+    channel.setShowBadge(true);
+    channel.enableLights(true);
+    channel.enableVibration(true);
+    channel.setSound(
+        null, new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
   }
 
-  private static TelephonyManager getTelephonyManager(@NonNull Context context) {
-    return context.getSystemService(TelephonyManager.class);
+  private static void createDefaultChannel(@NonNull Context context) {
+    NotificationChannel channel =
+        new NotificationChannel(
+            NotificationChannelId.DEFAULT,
+            context.getText(R.string.notification_channel_misc),
+            NotificationManager.IMPORTANCE_DEFAULT);
+    channel.setShowBadge(false);
+    channel.enableLights(true);
+    channel.enableVibration(true);
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
   }
 
-  private static TelecomManager getTelecomManager(@NonNull Context context) {
-    return context.getSystemService(TelecomManager.class);
-  }
+  private NotificationChannelManager() {}
 }
diff --git a/java/com/android/dialer/notification/PackageUpdatedReceiver.java b/java/com/android/dialer/notification/PackageUpdatedReceiver.java
deleted file mode 100644
index feed402..0000000
--- a/java/com/android/dialer/notification/PackageUpdatedReceiver.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.dialer.notification;
-
-import android.annotation.TargetApi;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.support.v4.os.BuildCompat;
-
-/** Inits the notification channels when Dialer or OS is updated */
-public class PackageUpdatedReceiver extends BroadcastReceiver {
-
-  @Override
-  @TargetApi(26)
-  public void onReceive(Context context, Intent intent) {
-    if (!BuildCompat.isAtLeastO()) {
-      return;
-    }
-    context = context.createDeviceProtectedStorageContext();
-    NotificationChannelManager.getInstance().initChannels(context);
-  }
-}
diff --git a/java/com/android/dialer/notification/VoicemailChannelUtils.java b/java/com/android/dialer/notification/VoicemailChannelUtils.java
new file mode 100644
index 0000000..dc74799
--- /dev/null
+++ b/java/com/android/dialer/notification/VoicemailChannelUtils.java
@@ -0,0 +1,217 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.notification;
+
+import android.annotation.TargetApi;
+import android.app.NotificationChannel;
+import android.app.NotificationManager;
+import android.content.Context;
+import android.media.AudioAttributes;
+import android.os.Build.VERSION_CODES;
+import android.provider.Settings;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.v4.os.BuildCompat;
+import android.telecom.PhoneAccount;
+import android.telecom.PhoneAccountHandle;
+import android.telecom.TelecomManager;
+import android.telephony.TelephonyManager;
+import android.text.TextUtils;
+import android.util.ArraySet;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+/** Utilities for working with voicemail channels. */
+@TargetApi(VERSION_CODES.O)
+/* package */ final class VoicemailChannelUtils {
+  private static final String GLOBAL_VOICEMAIL_CHANNEL_ID = "phone_voicemail";
+  private static final String PER_ACCOUNT_VOICEMAIL_CHANNEL_ID_PREFIX = "phone_voicemail_account_";
+
+  static Set<String> getAllChannelIds(@NonNull Context context) {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isNotNull(context);
+
+    Set<String> result = new ArraySet<>();
+    if (isSingleSimDevice(context)) {
+      result.add(GLOBAL_VOICEMAIL_CHANNEL_ID);
+    } else {
+      for (PhoneAccountHandle handle : getAllEligableAccounts(context)) {
+        result.add(getChannelIdForAccount(handle));
+      }
+    }
+    return result;
+  }
+
+  static void createAllChannels(@NonNull Context context) {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isNotNull(context);
+
+    if (isSingleSimDevice(context)) {
+      createGlobalVoicemailChannel(context);
+    } else {
+      for (PhoneAccountHandle handle : getAllEligableAccounts(context)) {
+        createVoicemailChannelForAccount(context, handle);
+      }
+    }
+  }
+
+  @NonNull
+  static String getChannelId(@NonNull Context context, @Nullable PhoneAccountHandle handle) {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isNotNull(context);
+
+    // Most devices we deal with have a single SIM slot. No need to distinguish between phone
+    // accounts.
+    if (isSingleSimDevice(context)) {
+      return GLOBAL_VOICEMAIL_CHANNEL_ID;
+    }
+
+    // We can get a null phone account at random points (modem reboot, etc...). Gracefully degrade
+    // by using the default channel.
+    if (handle == null) {
+      LogUtil.i(
+          "VoicemailChannelUtils.getChannelId",
+          "no phone account on a multi-SIM device, using default channel");
+      return NotificationChannelId.DEFAULT;
+    }
+
+    // Voicemail notifications should always be associated with a SIM based phone account.
+    if (!isChannelAllowedForAccount(context, handle)) {
+      LogUtil.i(
+          "VoicemailChannelUtils.getChannelId",
+          "phone account is not for a SIM, using default channel");
+      return NotificationChannelId.DEFAULT;
+    }
+
+    // Now we're in the multi-SIM case.
+    String channelId = getChannelIdForAccount(handle);
+    if (!doesChannelExist(context, channelId)) {
+      LogUtil.i(
+          "VoicemailChannelUtils.getChannelId",
+          "voicemail channel not found for phone account (possible SIM swap?), creating a new one");
+      createVoicemailChannelForAccount(context, handle);
+    }
+    return channelId;
+  }
+
+  private static boolean doesChannelExist(@NonNull Context context, @NonNull String channelId) {
+    return context.getSystemService(NotificationManager.class).getNotificationChannel(channelId)
+        != null;
+  }
+
+  private static String getChannelIdForAccount(@NonNull PhoneAccountHandle handle) {
+    Assert.isNotNull(handle);
+    return PER_ACCOUNT_VOICEMAIL_CHANNEL_ID_PREFIX + ":" + handle.getId();
+  }
+
+  /**
+   * Creates a voicemail channel but doesn't associate it with a SIM. For devices with only one SIM
+   * slot this is ideal because there won't be duplication in the settings UI.
+   */
+  private static void createGlobalVoicemailChannel(@NonNull Context context) {
+    NotificationChannel channel = newChannel(context, GLOBAL_VOICEMAIL_CHANNEL_ID, null);
+
+    TelecomManager telecomManager = context.getSystemService(TelecomManager.class);
+    PhoneAccountHandle handle =
+        telecomManager.getDefaultOutgoingPhoneAccount(PhoneAccount.SCHEME_TEL);
+    if (handle == null) {
+      LogUtil.i(
+          "VoicemailChannelUtils.createGlobalVoicemailChannel",
+          "phone account is null, not migrating sound settings");
+    } else if (!isChannelAllowedForAccount(context, handle)) {
+      LogUtil.i(
+          "VoicemailChannelUtils.createGlobalVoicemailChannel",
+          "phone account is not eligable, not migrating sound settings");
+    } else {
+      migrateVoicemailSoundSettings(context, channel, handle);
+    }
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
+  }
+
+  private static List<PhoneAccountHandle> getAllEligableAccounts(@NonNull Context context) {
+    List<PhoneAccountHandle> handles = new ArrayList<>();
+    TelecomManager telecomManager = context.getSystemService(TelecomManager.class);
+    for (PhoneAccountHandle handle : telecomManager.getCallCapablePhoneAccounts()) {
+      if (isChannelAllowedForAccount(context, handle)) {
+        handles.add(handle);
+      }
+    }
+    return handles;
+  }
+
+  private static void createVoicemailChannelForAccount(
+      @NonNull Context context, @NonNull PhoneAccountHandle handle) {
+    PhoneAccount phoneAccount =
+        context.getSystemService(TelecomManager.class).getPhoneAccount(handle);
+    NotificationChannel channel =
+        newChannel(context, getChannelIdForAccount(handle), phoneAccount.getLabel());
+    migrateVoicemailSoundSettings(context, channel, handle);
+    context.getSystemService(NotificationManager.class).createNotificationChannel(channel);
+  }
+
+  private static void migrateVoicemailSoundSettings(
+      @NonNull Context context,
+      @NonNull NotificationChannel channel,
+      @NonNull PhoneAccountHandle handle) {
+    TelephonyManager telephonyManager = context.getSystemService(TelephonyManager.class);
+    channel.enableVibration(telephonyManager.isVoicemailVibrationEnabled(handle));
+    channel.setSound(
+        telephonyManager.getVoicemailRingtoneUri(handle),
+        new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
+  }
+
+  private static boolean isChannelAllowedForAccount(
+      @NonNull Context context, @NonNull PhoneAccountHandle handle) {
+    PhoneAccount phoneAccount =
+        context.getSystemService(TelecomManager.class).getPhoneAccount(handle);
+    if (phoneAccount == null) {
+      return false;
+    }
+    if (!phoneAccount.hasCapabilities(PhoneAccount.CAPABILITY_SIM_SUBSCRIPTION)) {
+      return false;
+    }
+    return true;
+  }
+
+  private static NotificationChannel newChannel(
+      @NonNull Context context, @NonNull String channelId, @Nullable CharSequence nameSuffix) {
+    CharSequence name = context.getText(R.string.notification_channel_voicemail);
+    // TODO: Use a string resource template after v10.
+    if (!TextUtils.isEmpty(nameSuffix)) {
+      name = TextUtils.concat(name, ": ", nameSuffix);
+    }
+
+    NotificationChannel channel =
+        new NotificationChannel(channelId, name, NotificationManager.IMPORTANCE_DEFAULT);
+    channel.setShowBadge(true);
+    channel.enableLights(true);
+    channel.enableVibration(true);
+    channel.setSound(
+        Settings.System.DEFAULT_NOTIFICATION_URI,
+        new AudioAttributes.Builder().setUsage(AudioAttributes.USAGE_NOTIFICATION).build());
+    return channel;
+  }
+
+  private static boolean isSingleSimDevice(@NonNull Context context) {
+    return context.getSystemService(TelephonyManager.class).getPhoneCount() <= 1;
+  }
+
+  private VoicemailChannelUtils() {}
+}
diff --git a/java/com/android/dialer/notification/res/values-af/strings.xml b/java/com/android/dialer/notification/res/values-af/strings.xml
index 08dd754..e48249b 100644
--- a/java/com/android/dialer/notification/res/values-af/strings.xml
+++ b/java/com/android/dialer/notification/res/values-af/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Deurlopende oproepe"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Gemiste oproepe"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Stemboodskappe"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Ekterne oproepe"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Verstek"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-am/strings.xml b/java/com/android/dialer/notification/res/values-am/strings.xml
index 56d6c2c..0983e05 100644
--- a/java/com/android/dialer/notification/res/values-am/strings.xml
+++ b/java/com/android/dialer/notification/res/values-am/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"በመካሄድ ላይ ያሉ ጥሪዎች"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"ያመለጡ ጥሪዎች"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"የድምፅ መልዕክቶች"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ውጫዊ ጥሪዎች"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ነባሪ"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ar/strings.xml b/java/com/android/dialer/notification/res/values-ar/strings.xml
index 71857c2..ab6059f 100644
--- a/java/com/android/dialer/notification/res/values-ar/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ar/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"المكالمات الجارية"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"المكالمات الفائتة"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"رسائل البريد الصوتي"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"المكالمات الخارجية"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"افتراضي"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-az/strings.xml b/java/com/android/dialer/notification/res/values-az/strings.xml
index f907e55..425f30a 100644
--- a/java/com/android/dialer/notification/res/values-az/strings.xml
+++ b/java/com/android/dialer/notification/res/values-az/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Gedən zənglər"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Buraxılmış zənglər"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Səsli məktublar"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"External calls"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Defolt"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/notification/res/values-b+sr+Latn/strings.xml
index 4d5b5e7..4598e76 100644
--- a/java/com/android/dialer/notification/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/notification/res/values-b+sr+Latn/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Pozivi u toku"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Propušteni pozivi"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Govorne poruke"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Spoljni pozivi"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Podrazumevano"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-be/strings.xml b/java/com/android/dialer/notification/res/values-be/strings.xml
index 70defe3..586a36c 100644
--- a/java/com/android/dialer/notification/res/values-be/strings.xml
+++ b/java/com/android/dialer/notification/res/values-be/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Адбываючыяся выклікі"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Прапушчаныя выклікі"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Галасавая пошта"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Знешнія выклікі"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Стандартны"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-bg/strings.xml b/java/com/android/dialer/notification/res/values-bg/strings.xml
index 1ec202e..9bc8f8f 100644
--- a/java/com/android/dialer/notification/res/values-bg/strings.xml
+++ b/java/com/android/dialer/notification/res/values-bg/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Текущи обаждания"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Пропуснати обаждания"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Гласови съобщения"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Външни обаждания"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"По подразбиране"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-bn/strings.xml b/java/com/android/dialer/notification/res/values-bn/strings.xml
index 886f831..1d77817 100644
--- a/java/com/android/dialer/notification/res/values-bn/strings.xml
+++ b/java/com/android/dialer/notification/res/values-bn/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"সংযুক্ত কল"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"মিস করা কল"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ভয়েসমেল"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"বাহ্যিক কল"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ডিফল্ট"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-bs/strings.xml b/java/com/android/dialer/notification/res/values-bs/strings.xml
index e408a64..dedbb1c 100644
--- a/java/com/android/dialer/notification/res/values-bs/strings.xml
+++ b/java/com/android/dialer/notification/res/values-bs/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Tekući pozivi"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Propušteni pozivi"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Poruke govorne pošte"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Vanjski pozivi"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Zadano"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ca/strings.xml b/java/com/android/dialer/notification/res/values-ca/strings.xml
index ea81b62..1c19d0f 100644
--- a/java/com/android/dialer/notification/res/values-ca/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ca/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Trucades en curs"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Trucades perdudes"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Missatges de veu"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Trucades externes"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predeterminat"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-cs/strings.xml b/java/com/android/dialer/notification/res/values-cs/strings.xml
index 9ea7b61..c428ca2 100644
--- a/java/com/android/dialer/notification/res/values-cs/strings.xml
+++ b/java/com/android/dialer/notification/res/values-cs/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Probíhající hovory"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Zmeškané hovory"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Hlasové zprávy"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Externí hovory"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Výchozí"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-da/strings.xml b/java/com/android/dialer/notification/res/values-da/strings.xml
index e4fc4dd..7f0ce9f 100644
--- a/java/com/android/dialer/notification/res/values-da/strings.xml
+++ b/java/com/android/dialer/notification/res/values-da/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Igangværende opkald"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Ubesvarede opkald"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Talebeskeder"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Eksterne opkald"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-de/strings.xml b/java/com/android/dialer/notification/res/values-de/strings.xml
index 7fce6bf..86b7520 100644
--- a/java/com/android/dialer/notification/res/values-de/strings.xml
+++ b/java/com/android/dialer/notification/res/values-de/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Laufende Anrufe"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Entgangene Anrufe"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mailboxnachrichten"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Externe Anrufe"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-el/strings.xml b/java/com/android/dialer/notification/res/values-el/strings.xml
index a25bb43..812dc25 100644
--- a/java/com/android/dialer/notification/res/values-el/strings.xml
+++ b/java/com/android/dialer/notification/res/values-el/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Κλήσεις σε εξέλιξη"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Αναπάντητες κλήσεις"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Μηνύματα αυτόματου τηλεφωνητή"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Εξωτερικές κλήσεις"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Προεπιλογή"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-en-rAU/strings.xml b/java/com/android/dialer/notification/res/values-en-rAU/strings.xml
index 7d4bd82..43b722b 100644
--- a/java/com/android/dialer/notification/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/notification/res/values-en-rAU/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Ongoing calls"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Missed calls"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Voicemail"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"External calls"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Default"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-en-rGB/strings.xml b/java/com/android/dialer/notification/res/values-en-rGB/strings.xml
index 7d4bd82..43b722b 100644
--- a/java/com/android/dialer/notification/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/notification/res/values-en-rGB/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Ongoing calls"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Missed calls"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Voicemail"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"External calls"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Default"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-en-rIN/strings.xml b/java/com/android/dialer/notification/res/values-en-rIN/strings.xml
index 7d4bd82..43b722b 100644
--- a/java/com/android/dialer/notification/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/notification/res/values-en-rIN/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Ongoing calls"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Missed calls"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Voicemail"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"External calls"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Default"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-es-rUS/strings.xml b/java/com/android/dialer/notification/res/values-es-rUS/strings.xml
index fe8fe13..c56edcf 100644
--- a/java/com/android/dialer/notification/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/notification/res/values-es-rUS/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Llamadas en curso"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Llamadas perdidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mensajes de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Llamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predeterminado"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-es/strings.xml b/java/com/android/dialer/notification/res/values-es/strings.xml
index fe8fe13..c56edcf 100644
--- a/java/com/android/dialer/notification/res/values-es/strings.xml
+++ b/java/com/android/dialer/notification/res/values-es/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Llamadas en curso"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Llamadas perdidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mensajes de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Llamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predeterminado"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-et/strings.xml b/java/com/android/dialer/notification/res/values-et/strings.xml
index 4162395..9c60a31 100644
--- a/java/com/android/dialer/notification/res/values-et/strings.xml
+++ b/java/com/android/dialer/notification/res/values-et/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Käimasolevad kõned"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Vastamata kõned"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Kõnepostisõnumid"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Välised kõned"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Vaikeseade"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-eu/strings.xml b/java/com/android/dialer/notification/res/values-eu/strings.xml
index 326ac0a..d94ac0a 100644
--- a/java/com/android/dialer/notification/res/values-eu/strings.xml
+++ b/java/com/android/dialer/notification/res/values-eu/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Abian diren deiak"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Dei galduak"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Ahots-mezuak"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Kanpoko deiak"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Lehenetsia"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-fa/strings.xml b/java/com/android/dialer/notification/res/values-fa/strings.xml
index f1a7efc..edbc983 100644
--- a/java/com/android/dialer/notification/res/values-fa/strings.xml
+++ b/java/com/android/dialer/notification/res/values-fa/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"تماس‌های درحال انجام"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"تماس‌های بی‌پاسخ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"پست‌های صوتی"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"تماس‌های خارجی"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"پیش‌فرض"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-fi/strings.xml b/java/com/android/dialer/notification/res/values-fi/strings.xml
index c88c232..87652f8 100644
--- a/java/com/android/dialer/notification/res/values-fi/strings.xml
+++ b/java/com/android/dialer/notification/res/values-fi/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Käynnissä olevat puhelut"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Vastaamattomat puhelut"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Vastaajaviestit"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Ulkopuoliset puhelut"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Oletus"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-fr-rCA/strings.xml b/java/com/android/dialer/notification/res/values-fr-rCA/strings.xml
index a21d6b2..5a2d7dc 100644
--- a/java/com/android/dialer/notification/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/notification/res/values-fr-rCA/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Appels en cours"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Appels manqués"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Messages vocaux"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Appels externes"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Par défaut"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-fr/strings.xml b/java/com/android/dialer/notification/res/values-fr/strings.xml
index a21d6b2..5a2d7dc 100644
--- a/java/com/android/dialer/notification/res/values-fr/strings.xml
+++ b/java/com/android/dialer/notification/res/values-fr/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Appels en cours"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Appels manqués"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Messages vocaux"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Appels externes"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Par défaut"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-gl/strings.xml b/java/com/android/dialer/notification/res/values-gl/strings.xml
index 3b57a59..0e7fb61 100644
--- a/java/com/android/dialer/notification/res/values-gl/strings.xml
+++ b/java/com/android/dialer/notification/res/values-gl/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Chamadas saíntes"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Chamadas perdidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Correos de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Chamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predeterminado"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-gu/strings.xml b/java/com/android/dialer/notification/res/values-gu/strings.xml
index f185e59..a4a0a7a 100644
--- a/java/com/android/dialer/notification/res/values-gu/strings.xml
+++ b/java/com/android/dialer/notification/res/values-gu/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"ચાલુ કૉલ"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"છૂટેલા કૉલ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"વૉઇસમેઇલ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"બાહ્ય કૉલ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ડિફૉલ્ટ"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-hi/strings.xml b/java/com/android/dialer/notification/res/values-hi/strings.xml
index 89c8e55..69ed9b0 100644
--- a/java/com/android/dialer/notification/res/values-hi/strings.xml
+++ b/java/com/android/dialer/notification/res/values-hi/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"चल रहे कॉल"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"छूटे कॉल"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"वॉइसमेल"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"बाहरी कॉल"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"डिफ़ॉल्ट"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-hr/strings.xml b/java/com/android/dialer/notification/res/values-hr/strings.xml
index 9f786d7..a5924c3 100644
--- a/java/com/android/dialer/notification/res/values-hr/strings.xml
+++ b/java/com/android/dialer/notification/res/values-hr/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Pozivi u tijeku"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Propušteni pozivi"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Poruke govorne pošte"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Vanjski pozivi"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Zadano"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-hu/strings.xml b/java/com/android/dialer/notification/res/values-hu/strings.xml
index 09fa795..719252f 100644
--- a/java/com/android/dialer/notification/res/values-hu/strings.xml
+++ b/java/com/android/dialer/notification/res/values-hu/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Kimenő hívások"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Nem fogadott hívások"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Hangüzenetek"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Külső hívások"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Alapértelmezett"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-hy/strings.xml b/java/com/android/dialer/notification/res/values-hy/strings.xml
index 693898a..6bb2c34 100644
--- a/java/com/android/dialer/notification/res/values-hy/strings.xml
+++ b/java/com/android/dialer/notification/res/values-hy/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Ընթացիկ զանգեր"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Բաց թողնված զանգեր"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Ձայնային փոստ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Արտաքին զանգեր"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Կանխադրված"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-in/strings.xml b/java/com/android/dialer/notification/res/values-in/strings.xml
index 405b292..88ef3d5 100644
--- a/java/com/android/dialer/notification/res/values-in/strings.xml
+++ b/java/com/android/dialer/notification/res/values-in/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Panggilan keluar"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Panggilan tak terjawab"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Pesan suara"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Panggilan eksternal"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Default"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-is/strings.xml b/java/com/android/dialer/notification/res/values-is/strings.xml
index be84917..166d974 100644
--- a/java/com/android/dialer/notification/res/values-is/strings.xml
+++ b/java/com/android/dialer/notification/res/values-is/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Símtöl í gangi"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Ósvöruð símtöl"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Talhólfsskilaboð"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Utanaðkomandi símtöl"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Sjálfgefið"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-it/strings.xml b/java/com/android/dialer/notification/res/values-it/strings.xml
index 1ac6e2d..7b55da9 100644
--- a/java/com/android/dialer/notification/res/values-it/strings.xml
+++ b/java/com/android/dialer/notification/res/values-it/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Chiamate in uscita"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Chiamate perse"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Messaggi vocali"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Chiamate esterne"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predefinito"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-iw/strings.xml b/java/com/android/dialer/notification/res/values-iw/strings.xml
index ed07b86..2b8b9df 100644
--- a/java/com/android/dialer/notification/res/values-iw/strings.xml
+++ b/java/com/android/dialer/notification/res/values-iw/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"שיחות יוצאות"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"שיחות שלא נענו"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"הודעות קוליות"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"שיחות חיצוניות"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ברירת מחדל"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ja/strings.xml b/java/com/android/dialer/notification/res/values-ja/strings.xml
index 3265d72..2ff8da7 100644
--- a/java/com/android/dialer/notification/res/values-ja/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ja/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"通話中"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"不在着信"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ボイスメール"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"外部通話"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"デフォルト"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ka/strings.xml b/java/com/android/dialer/notification/res/values-ka/strings.xml
index 6d81465..73394ef 100644
--- a/java/com/android/dialer/notification/res/values-ka/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ka/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"გამავალი ზარები"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"გამოტოვებული ზარები"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ხმოვანი ფოსტა"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"გარე ზარები"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ნაგულისხმევი"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-kk/strings.xml b/java/com/android/dialer/notification/res/values-kk/strings.xml
index 35733fb..8151c9c 100644
--- a/java/com/android/dialer/notification/res/values-kk/strings.xml
+++ b/java/com/android/dialer/notification/res/values-kk/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Қазіргі қоңыраулар"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Қабылданбаған қоңыраулар"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Дауыстық хабарлар"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Сыртқы қоңыраулар"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Әдепкі"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-km/strings.xml b/java/com/android/dialer/notification/res/values-km/strings.xml
index 42bc113..22131ff 100644
--- a/java/com/android/dialer/notification/res/values-km/strings.xml
+++ b/java/com/android/dialer/notification/res/values-km/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"ការ​ហៅ​បន្ត"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"ការ​ហៅ​ដែល​មិន​បាន​ទទួល"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"សារ​ជា​សំឡេង"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ការ​ហៅខាង​ក្រៅ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"លំ​នាំ​ដើម"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-kn/strings.xml b/java/com/android/dialer/notification/res/values-kn/strings.xml
index 45f26e3..d6e55bd 100644
--- a/java/com/android/dialer/notification/res/values-kn/strings.xml
+++ b/java/com/android/dialer/notification/res/values-kn/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಕರೆಗಳು"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"ಮಿಸ್ಡ್‌ ಕರೆಗಳು"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ಧ್ವನಿಮೇಲ್‌ಗಳು"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ಹೊರಗಿನ ಕರೆಗಳು"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ಡಿಫಾಲ್ಟ್"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ko/strings.xml b/java/com/android/dialer/notification/res/values-ko/strings.xml
index d806cad..5a66717 100644
--- a/java/com/android/dialer/notification/res/values-ko/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ko/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"진행 중인 전화"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"부재중 전화"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"음성사서함"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"외부 전화"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"기본"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ky/strings.xml b/java/com/android/dialer/notification/res/values-ky/strings.xml
index eb6adf6..c525931 100644
--- a/java/com/android/dialer/notification/res/values-ky/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ky/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Учурдагы чалуулар"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Кабыл алынбаган чалуулар"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Үнкаттар"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Тышкы чалуулар"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Демейки"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-lo/strings.xml b/java/com/android/dialer/notification/res/values-lo/strings.xml
index f439807..a52d9df 100644
--- a/java/com/android/dialer/notification/res/values-lo/strings.xml
+++ b/java/com/android/dialer/notification/res/values-lo/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"ສາຍໂທອອກ"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"ສາຍບໍ່ໄດ້ຮັບ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ຂໍ້ຄວາມສຽງ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ສາຍພາຍນອກ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ຄ່າເລີ່ມຕົ້ນ"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-lt/strings.xml b/java/com/android/dialer/notification/res/values-lt/strings.xml
index f08697a..6f26d3e 100644
--- a/java/com/android/dialer/notification/res/values-lt/strings.xml
+++ b/java/com/android/dialer/notification/res/values-lt/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Vykstantys skambučiai"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Praleisti skambučiai"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Balso pašto pranešimai"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Išoriniai skambučiai"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Numatytasis"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-lv/strings.xml b/java/com/android/dialer/notification/res/values-lv/strings.xml
index d465b68..1819d81 100644
--- a/java/com/android/dialer/notification/res/values-lv/strings.xml
+++ b/java/com/android/dialer/notification/res/values-lv/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Aktīvie zvani"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Neatbildētie zvani"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Balss pasta ziņojumi"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Ārējie zvani"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Noklusējums"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-mk/strings.xml b/java/com/android/dialer/notification/res/values-mk/strings.xml
index 838065b..56459c4 100644
--- a/java/com/android/dialer/notification/res/values-mk/strings.xml
+++ b/java/com/android/dialer/notification/res/values-mk/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Појдовни повици"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Пропуштени повици"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Говорни пораки"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Надворешни повици"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Стандардно"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ml/strings.xml b/java/com/android/dialer/notification/res/values-ml/strings.xml
index 448186a..49a64e8 100644
--- a/java/com/android/dialer/notification/res/values-ml/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ml/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"നിലവിലുള്ള കോളുകൾ"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"മിസ്‌ഡ് കോളുകൾ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"വോയ്‌സ്മെയിലുകൾ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"എക്‌സ്റ്റേണൽ കോളുകൾ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ഡിഫോൾട്ട്"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-mn/strings.xml b/java/com/android/dialer/notification/res/values-mn/strings.xml
index 3dca52e..28297b3 100644
--- a/java/com/android/dialer/notification/res/values-mn/strings.xml
+++ b/java/com/android/dialer/notification/res/values-mn/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Үргэлжилж буй дуудлага"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Аваагүй дуудлага"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Дуут шуудан"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Гадаад дуудлага"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Өгөгдмөл"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-mr/strings.xml b/java/com/android/dialer/notification/res/values-mr/strings.xml
index 5685376..38fbd60 100644
--- a/java/com/android/dialer/notification/res/values-mr/strings.xml
+++ b/java/com/android/dialer/notification/res/values-mr/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"सुरू असलेले कॉल"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"सुटलेले कॉल"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"व्हॉइसमेल"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"बाह्य कॉल"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"डीफॉल्ट"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ms/strings.xml b/java/com/android/dialer/notification/res/values-ms/strings.xml
index a1961c4..ec7be04 100644
--- a/java/com/android/dialer/notification/res/values-ms/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ms/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Panggilan sedang berlangsung"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Panggilan terlepas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mel suara"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Panggilan luar"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Lalai"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-my/strings.xml b/java/com/android/dialer/notification/res/values-my/strings.xml
index 26398b4..44df847 100644
--- a/java/com/android/dialer/notification/res/values-my/strings.xml
+++ b/java/com/android/dialer/notification/res/values-my/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"လက်ရှိခေါ်ဆိုမှုများ"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"လွဲသွားသော ခေါ်ဆိုမှုများ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"အသံစာပို့စနစ်များ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ပြင်ပခေါ်ဆိုမှုများ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"မူရင်း"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-nb/strings.xml b/java/com/android/dialer/notification/res/values-nb/strings.xml
index e4ccd48..8e63fd2 100644
--- a/java/com/android/dialer/notification/res/values-nb/strings.xml
+++ b/java/com/android/dialer/notification/res/values-nb/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Pågående samtaler"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Tapte anrop"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Talepost"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Eksterne anrop"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ne/strings.xml b/java/com/android/dialer/notification/res/values-ne/strings.xml
index 8ccd299..e653bb3 100644
--- a/java/com/android/dialer/notification/res/values-ne/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ne/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"जारी रहेका कलहरू"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"छुटेका कलहरू"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"भ्वाइस मेलहरू"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"बाह्य कलहरू"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"पूर्वनिर्धारित मान"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-nl/strings.xml b/java/com/android/dialer/notification/res/values-nl/strings.xml
index e46dd19..094cc35 100644
--- a/java/com/android/dialer/notification/res/values-nl/strings.xml
+++ b/java/com/android/dialer/notification/res/values-nl/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Actieve oproepen"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Gemiste oproepen"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Voicemails"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Externe oproepen"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standaard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-no/strings.xml b/java/com/android/dialer/notification/res/values-no/strings.xml
index e4ccd48..8e63fd2 100644
--- a/java/com/android/dialer/notification/res/values-no/strings.xml
+++ b/java/com/android/dialer/notification/res/values-no/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Pågående samtaler"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Tapte anrop"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Talepost"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Eksterne anrop"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-pa/strings.xml b/java/com/android/dialer/notification/res/values-pa/strings.xml
index 40709c1..c4ee97b 100644
--- a/java/com/android/dialer/notification/res/values-pa/strings.xml
+++ b/java/com/android/dialer/notification/res/values-pa/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"ਆਊਟਗੋਇੰਗ ਕਾਲਾਂ"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"ਖੁੰਝੀਆਂ ਕਾਲਾਂ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ਵੌਇਸਮੇਲਾਂ"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"ਬਾਹਰੀ ਕਾਲਾਂ"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ਪੂਰਵ-ਨਿਰਧਾਰਤ"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-pl/strings.xml b/java/com/android/dialer/notification/res/values-pl/strings.xml
index 73b795c..4b33460 100644
--- a/java/com/android/dialer/notification/res/values-pl/strings.xml
+++ b/java/com/android/dialer/notification/res/values-pl/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Połączenia trwające"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Połączenia nieodebrane"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Wiadomości głosowe"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Połączenia zewnętrzne"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Domyślny"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-pt-rBR/strings.xml b/java/com/android/dialer/notification/res/values-pt-rBR/strings.xml
index f6e41cb..4b988c3 100644
--- a/java/com/android/dialer/notification/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/notification/res/values-pt-rBR/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Chamadas em andamento"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Chamadas perdidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Correios de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Chamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Padrão"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-pt-rPT/strings.xml b/java/com/android/dialer/notification/res/values-pt-rPT/strings.xml
index ec42a5b..45b31eb 100644
--- a/java/com/android/dialer/notification/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/notification/res/values-pt-rPT/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Chamadas efetuadas"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Chamadas não atendidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mensagens de correio de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Chamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predefinição"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-pt/strings.xml b/java/com/android/dialer/notification/res/values-pt/strings.xml
index f6e41cb..4b988c3 100644
--- a/java/com/android/dialer/notification/res/values-pt/strings.xml
+++ b/java/com/android/dialer/notification/res/values-pt/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Chamadas em andamento"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Chamadas perdidas"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Correios de voz"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Chamadas externas"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Padrão"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ro/strings.xml b/java/com/android/dialer/notification/res/values-ro/strings.xml
index 7deeabb..040c58a 100644
--- a/java/com/android/dialer/notification/res/values-ro/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ro/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Apeluri în desfășurare"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Apeluri nepreluate"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mesaje vocale"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Apeluri externe"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Prestabilit"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ru/strings.xml b/java/com/android/dialer/notification/res/values-ru/strings.xml
index 3a11404..a811799 100644
--- a/java/com/android/dialer/notification/res/values-ru/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ru/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Текущие вызовы"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Пропущенные вызовы"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Голосовые сообщения"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Внешние вызовы"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"По умолчанию"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-si/strings.xml b/java/com/android/dialer/notification/res/values-si/strings.xml
index bf0a5a7..3ad0af7 100644
--- a/java/com/android/dialer/notification/res/values-si/strings.xml
+++ b/java/com/android/dialer/notification/res/values-si/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"යන ඇමතුම්"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"මඟ හැරුණු ඇමතුම්"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"හඬ තැපැල්"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"බාහිර ඇමතුම්"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"පෙරනිමි"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sk/strings.xml b/java/com/android/dialer/notification/res/values-sk/strings.xml
index 4a67e60..30941bc 100644
--- a/java/com/android/dialer/notification/res/values-sk/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sk/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Prebiehajúce hovory"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Zmeškané hovory"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Hlasové správy"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Externé hovory"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Predvolené"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sl/strings.xml b/java/com/android/dialer/notification/res/values-sl/strings.xml
index e54111d..70474b8 100644
--- a/java/com/android/dialer/notification/res/values-sl/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sl/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Aktivni klici"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Neodgovorjeni klici"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Sporočila v odzivniku"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Zunanji klici"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Privzeto"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sq/strings.xml b/java/com/android/dialer/notification/res/values-sq/strings.xml
index 42d4daa..03bc247 100644
--- a/java/com/android/dialer/notification/res/values-sq/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sq/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Telefonatat në vazhdim"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Telefonatat e humbura"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Postat zanore"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Telefonatat e jashtme"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"I parazgjedhur"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sr/strings.xml b/java/com/android/dialer/notification/res/values-sr/strings.xml
index 1047717..8326c04 100644
--- a/java/com/android/dialer/notification/res/values-sr/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sr/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Позиви у току"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Пропуштени позиви"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Говорне поруке"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Спољни позиви"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Подразумевано"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sv/strings.xml b/java/com/android/dialer/notification/res/values-sv/strings.xml
index 6c9ff83..e3170d4 100644
--- a/java/com/android/dialer/notification/res/values-sv/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sv/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Pågående samtal"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Missade samtal"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Röstmeddelanden"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Externa samtal"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standard"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-sw/strings.xml b/java/com/android/dialer/notification/res/values-sw/strings.xml
index a493f88..d0a65b0 100644
--- a/java/com/android/dialer/notification/res/values-sw/strings.xml
+++ b/java/com/android/dialer/notification/res/values-sw/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Simu zinazoendelea"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Simu ambazo hukujibu"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Ujumbe wa sauti"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Simu za nje"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Chaguo-msingi"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ta/strings.xml b/java/com/android/dialer/notification/res/values-ta/strings.xml
index d3000cf..8a6ae89 100644
--- a/java/com/android/dialer/notification/res/values-ta/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ta/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"செயலில் உள்ள அழைப்புகள்"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"தவறிய அழைப்புகள்"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"குரலஞ்சல்கள்"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"வெளி அழைப்புகள்"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"இயல்பு"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-te/strings.xml b/java/com/android/dialer/notification/res/values-te/strings.xml
index b14b210..b1911d3 100644
--- a/java/com/android/dialer/notification/res/values-te/strings.xml
+++ b/java/com/android/dialer/notification/res/values-te/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"కొనసాగుతున్న కాల్‌లు"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"సమాధానమివ్వని కాల్‌లు"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"వాయిస్ మెయిల్‌లు"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"బాహ్య కాల్‌లు"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"డిఫాల్ట్"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-th/strings.xml b/java/com/android/dialer/notification/res/values-th/strings.xml
index 45248bb..b2949e4 100644
--- a/java/com/android/dialer/notification/res/values-th/strings.xml
+++ b/java/com/android/dialer/notification/res/values-th/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"สายที่สนทนาอยู่"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"สายที่ไม่ได้รับ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"ข้อความเสียง"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"สายนอก"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ค่าเริ่มต้น"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-tl/strings.xml b/java/com/android/dialer/notification/res/values-tl/strings.xml
index 3e88a05..1219ad8 100644
--- a/java/com/android/dialer/notification/res/values-tl/strings.xml
+++ b/java/com/android/dialer/notification/res/values-tl/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Mga kasalukuyang tawag"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Mga hindi nasagot na tawag"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Mga voicemail"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Mga external na tawag"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Default"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-tr/strings.xml b/java/com/android/dialer/notification/res/values-tr/strings.xml
index d4e063b..71c91c8 100644
--- a/java/com/android/dialer/notification/res/values-tr/strings.xml
+++ b/java/com/android/dialer/notification/res/values-tr/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Devam eden çağrılar"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Cevapsız çağrılar"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Sesli mesajlar"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Harici çağrılar"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Varsayılan"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-uk/strings.xml b/java/com/android/dialer/notification/res/values-uk/strings.xml
index a83a584..a002f42 100644
--- a/java/com/android/dialer/notification/res/values-uk/strings.xml
+++ b/java/com/android/dialer/notification/res/values-uk/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Поточні виклики"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Пропущені виклики"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Голосова пошта"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Зовнішні виклики"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"За умовчанням"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-ur/strings.xml b/java/com/android/dialer/notification/res/values-ur/strings.xml
index ba6e0d1..805fe08 100644
--- a/java/com/android/dialer/notification/res/values-ur/strings.xml
+++ b/java/com/android/dialer/notification/res/values-ur/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"جاری کالیں"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"چھوٹی ہوئی کالیں"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"صوتی میلز"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"بیرونی کالیں"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"ڈیفالٹ"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-uz/strings.xml b/java/com/android/dialer/notification/res/values-uz/strings.xml
index d45ff47..16075b0 100644
--- a/java/com/android/dialer/notification/res/values-uz/strings.xml
+++ b/java/com/android/dialer/notification/res/values-uz/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Davom etayotgan suhbatlar"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Javobsiz chaqiruvlar"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Ovozli xabarlar"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Tashqi chaqiruvlar"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Standart"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-vi/strings.xml b/java/com/android/dialer/notification/res/values-vi/strings.xml
index 6df8872..b6ab3d2 100644
--- a/java/com/android/dialer/notification/res/values-vi/strings.xml
+++ b/java/com/android/dialer/notification/res/values-vi/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Cuộc gọi đến"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Cuộc gọi nhỡ"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Thư thoại"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Cuộc gọi bên ngoài"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Mặc định"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-zh-rCN/strings.xml b/java/com/android/dialer/notification/res/values-zh-rCN/strings.xml
index fa5f0a6..1ef46c2 100644
--- a/java/com/android/dialer/notification/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/notification/res/values-zh-rCN/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"正在进行的通话"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"未接电话"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"语音邮件"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"外部来电"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"默认"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-zh-rHK/strings.xml b/java/com/android/dialer/notification/res/values-zh-rHK/strings.xml
index 307a7f9..43a6fab 100644
--- a/java/com/android/dialer/notification/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/notification/res/values-zh-rHK/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"進行中的通話"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"未接來電"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"留言信箱"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"外部通話"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"預設"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-zh-rTW/strings.xml b/java/com/android/dialer/notification/res/values-zh-rTW/strings.xml
index 054a2d7..35236be 100644
--- a/java/com/android/dialer/notification/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/notification/res/values-zh-rTW/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"進行中的通話"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"未接來電"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"語音留言"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"外部通話"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"預設"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values-zu/strings.xml b/java/com/android/dialer/notification/res/values-zu/strings.xml
index 744ffc8..f3d9553 100644
--- a/java/com/android/dialer/notification/res/values-zu/strings.xml
+++ b/java/com/android/dialer/notification/res/values-zu/strings.xml
@@ -21,6 +21,5 @@
     <string name="notification_channel_ongoing_call" msgid="5593444445363940672">"Amakholi aqhubekayo"</string>
     <string name="notification_channel_missed_call" msgid="5820652855908217695">"Amakholi akuphuthile"</string>
     <string name="notification_channel_voicemail" msgid="9206363659849426204">"Amavoyisimeyili"</string>
-    <string name="notification_channel_external_call" msgid="2200143959948071132">"Amakholi angaphandle"</string>
     <string name="notification_channel_misc" msgid="5595452227577858518">"Okuzenzakalelayo"</string>
 </resources>
diff --git a/java/com/android/dialer/notification/res/values/ids.xml b/java/com/android/dialer/notification/res/values/ids.xml
deleted file mode 100644
index c965f31..0000000
--- a/java/com/android/dialer/notification/res/values/ids.xml
+++ /dev/null
@@ -1,27 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2017 The Android Open Source Project
-  ~
-  ~ Licensed under the Apache License, Version 2.0 (the "License");
-  ~ you may not use this file except in compliance with the License.
-  ~ You may obtain a copy of the License at
-  ~
-  ~      http://www.apache.org/licenses/LICENSE-2.0
-  ~
-  ~ Unless required by applicable law or agreed to in writing, software
-  ~ distributed under the License is distributed on an "AS IS" BASIS,
-  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-  ~ See the License for the specific language governing permissions and
-  ~ limitations under the License
-  -->
-
-<resources>
-  <item name="notification_ongoing_call" type="id"/>
-  <item name="notification_missed_call" type="id"/>
-  <item name="notification_visual_voicemail" type="id"/>
-  <item name="notification_legacy_voicemail" type="id"/>
-  <item name="notification_external_call" type="id"/>
-  <item name="notification_call_blocking_disabled_by_emergency_call" type="id"/>
-  <item name="notification_spam_call" type="id"/>
-  <item name="notification_feedback" type="id"/>
-</resources>
diff --git a/java/com/android/dialer/notification/res/values/strings.xml b/java/com/android/dialer/notification/res/values/strings.xml
index cb3119f..a3c6935 100644
--- a/java/com/android/dialer/notification/res/values/strings.xml
+++ b/java/com/android/dialer/notification/res/values/strings.xml
@@ -20,7 +20,6 @@
   <string name="notification_channel_ongoing_call">Ongoing calls</string>
   <string name="notification_channel_missed_call">Missed calls</string>
   <string name="notification_channel_voicemail">Voicemails</string>
-  <string name="notification_channel_external_call">External calls</string>
   <!-- [CHAR LIMIT=NONE] Catch-all channel for notifications that don't fit into one of the others -->
   <string name="notification_channel_misc">Default</string>
 </resources>
diff --git a/java/com/android/dialer/oem/CequintCallerIdManager.java b/java/com/android/dialer/oem/CequintCallerIdManager.java
index 095ee4e..86097c4 100644
--- a/java/com/android/dialer/oem/CequintCallerIdManager.java
+++ b/java/com/android/dialer/oem/CequintCallerIdManager.java
@@ -18,7 +18,6 @@
 import android.annotation.TargetApi;
 import android.content.Context;
 import android.content.pm.PackageManager;
-import android.database.ContentObserver;
 import android.database.Cursor;
 import android.net.Uri;
 import android.os.Build.VERSION_CODES;
@@ -29,9 +28,8 @@
 import android.telephony.PhoneNumberUtils;
 import android.text.TextUtils;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.util.PermissionsUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import java.util.concurrent.ConcurrentHashMap;
 
 /**
@@ -73,17 +71,12 @@
   private static final String IMAGE = "cid_pLogo";
   private static final String DISPLAY_NAME = "cid_pDisplayName";
 
-  // TODO: Revisit it and maybe remove it if it's not necessary.
-  private static final ConcurrentHashMap<String, CequintCallerIdContact> callLogCache =
-      new ConcurrentHashMap<>();
-  private static final ConcurrentHashMap<String, CequintCallerIdContact> incallIncomingCallCache =
-      new ConcurrentHashMap<>();
-  private static final ConcurrentHashMap<String, CequintCallerIdContact> incallOutgoingCallCache =
-      new ConcurrentHashMap<>();
-  private static boolean hasRegisteredContentObserver;
   private static boolean hasAlreadyCheckedCequintCallerIdPackage;
   private static boolean isCequintCallerIdEnabled;
 
+  // TODO: Revisit it and maybe remove it if it's not necessary.
+  private final ConcurrentHashMap<String, CequintCallerIdContact> callLogCache;
+
   /** Cequint caller id contact information. */
   public static class CequintCallerIdContact {
     public final String name;
@@ -117,9 +110,35 @@
     return isCequintCallerIdEnabled;
   }
 
+  public static CequintCallerIdManager createInstanceForCallLog() {
+    return new CequintCallerIdManager();
+  }
+
   @WorkerThread
   @Nullable
-  public static CequintCallerIdContact getCequintCallerIdContact(Context context, String number) {
+  public static CequintCallerIdContact getCequintCallerIdContactForInCall(
+      Context context, String number, String cnapName, boolean isIncoming) {
+    Assert.isWorkerThread();
+    LogUtil.d(
+        "CequintCallerIdManager.getCequintCallerIdContactForInCall",
+        "number: %s, cnapName: %s, isIncoming: %b",
+        LogUtil.sanitizePhoneNumber(number),
+        LogUtil.sanitizePii(cnapName),
+        isIncoming);
+    int flag = 0;
+    if (isIncoming) {
+      flag |= CALLER_ID_LOOKUP_INCOMING_CALL;
+      flag |= CALLER_ID_LOOKUP_SYSTEM_PROVIDED_CID;
+    } else {
+      flag |= CALLER_ID_LOOKUP_USER_PROVIDED_CID;
+    }
+    String[] flags = {cnapName, String.valueOf(flag)};
+    return lookup(context, CONTENT_URI_FOR_INCALL, number, flags);
+  }
+
+  @WorkerThread
+  @Nullable
+  public CequintCallerIdContact getCequintCallerIdContact(Context context, String number) {
     Assert.isWorkerThread();
     LogUtil.d(
         "CequintCallerIdManager.getCequintCallerIdContact",
@@ -142,43 +161,6 @@
 
   @WorkerThread
   @Nullable
-  public static CequintCallerIdContact getCequintCallerIdContactForInCall(
-      Context context, String number, String cnapName, boolean isIncoming) {
-    Assert.isWorkerThread();
-    LogUtil.d(
-        "CequintCallerIdManager.getCequintCallerIdContactForInCall",
-        "number: %s, cnapName: %s, isIncoming: %b",
-        LogUtil.sanitizePhoneNumber(number),
-        LogUtil.sanitizePii(cnapName),
-        isIncoming);
-    registerContentObserver(context);
-    if (isIncoming && incallIncomingCallCache.containsKey(number)) {
-      return incallIncomingCallCache.get(number);
-    } else if (!isIncoming && incallOutgoingCallCache.containsKey(number)) {
-      return incallOutgoingCallCache.get(number);
-    }
-    int flag = 0;
-    if (isIncoming) {
-      flag |= CALLER_ID_LOOKUP_INCOMING_CALL;
-      flag |= CALLER_ID_LOOKUP_SYSTEM_PROVIDED_CID;
-    } else {
-      flag |= CALLER_ID_LOOKUP_USER_PROVIDED_CID;
-    }
-    String[] flags = {cnapName, String.valueOf(flag)};
-    CequintCallerIdContact cequintCallerIdContact =
-        lookup(context, CONTENT_URI_FOR_INCALL, number, flags);
-    if (cequintCallerIdContact != null) {
-      if (isIncoming) {
-        incallIncomingCallCache.put(number, cequintCallerIdContact);
-      } else {
-        incallOutgoingCallCache.put(number, cequintCallerIdContact);
-      }
-    }
-    return cequintCallerIdContact;
-  }
-
-  @WorkerThread
-  @Nullable
   private static CequintCallerIdContact lookup(
       Context context, Uri uri, @NonNull String number, String[] flags) {
     Assert.isWorkerThread();
@@ -285,33 +267,7 @@
     return geoDescription;
   }
 
-  private static synchronized void registerContentObserver(Context context) {
-    if (!PermissionsUtil.hasCequintPermissions(context)) {
-      LogUtil.i("CequintCallerIdManager.registerContentObserver", "no cequint permissions");
-      return;
-    }
-
-    if (hasRegisteredContentObserver) {
-      return;
-    }
-    ContentObserver contentObserver =
-        new ContentObserver(null) {
-          @Override
-          public void onChange(boolean selfChange) {
-            invalidateCache();
-          }
-        };
-
-    context
-        .getContentResolver()
-        .registerContentObserver(CONTENT_URI_FOR_INCALL, true, contentObserver);
-    hasRegisteredContentObserver = true;
+  private CequintCallerIdManager() {
+    callLogCache = new ConcurrentHashMap<>();
   }
-
-  private static void invalidateCache() {
-    incallIncomingCallCache.clear();
-    incallOutgoingCallCache.clear();
-  }
-
-  private CequintCallerIdManager() {}
 }
diff --git a/java/com/android/dialer/oem/MotorolaHiddenMenuKeySequence.java b/java/com/android/dialer/oem/MotorolaHiddenMenuKeySequence.java
index 9cf145b..79abff0 100644
--- a/java/com/android/dialer/oem/MotorolaHiddenMenuKeySequence.java
+++ b/java/com/android/dialer/oem/MotorolaHiddenMenuKeySequence.java
@@ -67,9 +67,7 @@
   }
 
   private MotorolaHiddenMenuKeySequence(Context context) {
-    featureHiddenMenuEnabled =
-        MotorolaUtils.isSpnMatched(context)
-            && context.getResources().getBoolean(R.bool.motorola_feature_hidden_menu);
+    featureHiddenMenuEnabled = MotorolaUtils.isSupportingHiddenMenu(context);
     // In case we do have a SPN from resource we need to match from service; otherwise we are
     // free to go
     if (featureHiddenMenuEnabled) {
diff --git a/java/com/android/dialer/oem/MotorolaUtils.java b/java/com/android/dialer/oem/MotorolaUtils.java
index db2b890..ffab8ea 100644
--- a/java/com/android/dialer/oem/MotorolaUtils.java
+++ b/java/com/android/dialer/oem/MotorolaUtils.java
@@ -18,8 +18,11 @@
 import android.content.Context;
 import android.content.res.Resources;
 import android.telephony.TelephonyManager;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.common.PackageUtils;
+import com.android.dialer.configprovider.ConfigProviderBindings;
+import java.lang.reflect.InvocationTargetException;
+import java.lang.reflect.Method;
 
 /** Util class for Motorola OEM devices. */
 public class MotorolaUtils {
@@ -39,6 +42,8 @@
   // This is used to check if a Motorola device supports WiFi call feature, by checking if a certain
   // package is enabled.
   private static final String WIFI_CALL_PACKAGE_NAME = "com.motorola.sprintwfc";
+  // Thi is used to check if a Motorola device supports hidden menu feature.
+  private static final String HIDDEN_MENU_FEATURE = "com.motorola.software.sprint.hidden_menu";
 
   // Feature flag indicates it's a HD call, currently this is only used by Motorola system build.
   // TODO(b/35359461): Use reference to android.provider.CallLog once it's in new SDK.
@@ -64,6 +69,10 @@
     }
   }
 
+  static boolean isSupportingHiddenMenu(Context context) {
+    return context.getPackageManager().hasSystemFeature(HIDDEN_MENU_FEATURE);
+  }
+
   public static boolean shouldBlinkHdIconWhenConnectingCall(Context context) {
     return ConfigProviderBindings.get(context)
             .getBoolean(CONFIG_HD_CODEC_BLINKING_ICON_WHEN_CONNECTING_CALL_ENABLED, true)
@@ -102,6 +111,22 @@
     return MotorolaHiddenMenuKeySequence.handleCharSequence(context, input);
   }
 
+  public static boolean isWifiCallingAvailable(Context context) {
+    if (!isSupportingSprintWifiCall(context)) {
+      return false;
+    }
+    TelephonyManager telephonyManager = context.getSystemService(TelephonyManager.class);
+    try {
+      Method method = TelephonyManager.class.getMethod("isWifiCallingAvailable");
+      boolean isWifiCallingAvailable = (boolean) method.invoke(telephonyManager);
+      LogUtil.d("MotorolaUtils.isWifiCallingAvailable", "%b", isWifiCallingAvailable);
+      return isWifiCallingAvailable;
+    } catch (NoSuchMethodException | InvocationTargetException | IllegalAccessException e) {
+      LogUtil.e("MotorolaUtils.isWifiCallingAvailable", "", e);
+    }
+    return false;
+  }
+
   private static boolean isSupportingSprintHdCodec(Context context) {
     return isSpnMatched(context)
         && context.getResources().getBoolean(R.bool.motorola_sprint_hd_codec)
diff --git a/java/com/android/dialer/oem/res/values-mcc310-mnc000/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc310-mnc000/motorola_config.xml
index 7f63bee..ac33975 100644
--- a/java/com/android/dialer/oem/res/values-mcc310-mnc000/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc310-mnc000/motorola_config.xml
@@ -1,6 +1,21 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
   <string name="motorola_enabled_spn">Sprint</string>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values-mcc310-mnc120/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc310-mnc120/motorola_config.xml
index 39b72cd..c5cb0d1 100644
--- a/java/com/android/dialer/oem/res/values-mcc310-mnc120/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc310-mnc120/motorola_config.xml
@@ -1,5 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values-mcc311-mnc490/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc311-mnc490/motorola_config.xml
index 39b72cd..c5cb0d1 100644
--- a/java/com/android/dialer/oem/res/values-mcc311-mnc490/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc311-mnc490/motorola_config.xml
@@ -1,5 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values-mcc311-mnc870/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc311-mnc870/motorola_config.xml
index 39b72cd..c5cb0d1 100644
--- a/java/com/android/dialer/oem/res/values-mcc311-mnc870/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc311-mnc870/motorola_config.xml
@@ -1,5 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values-mcc312-mnc530/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc312-mnc530/motorola_config.xml
index 39b72cd..c5cb0d1 100644
--- a/java/com/android/dialer/oem/res/values-mcc312-mnc530/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc312-mnc530/motorola_config.xml
@@ -1,5 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values-mcc316-mnc010/motorola_config.xml b/java/com/android/dialer/oem/res/values-mcc316-mnc010/motorola_config.xml
index 39b72cd..c5cb0d1 100644
--- a/java/com/android/dialer/oem/res/values-mcc316-mnc010/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values-mcc316-mnc010/motorola_config.xml
@@ -1,5 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+
 <resources>
   <bool name="motorola_sprint_hd_codec">true</bool>
-  <bool name="motorola_feature_hidden_menu">true</bool>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/oem/res/values/motorola_config.xml b/java/com/android/dialer/oem/res/values/motorola_config.xml
index f875d57..46e7a16 100644
--- a/java/com/android/dialer/oem/res/values/motorola_config.xml
+++ b/java/com/android/dialer/oem/res/values/motorola_config.xml
@@ -1,12 +1,25 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+
 <resources>
   <!-- Flag to control if HD codec is supported by Sprint. -->
   <bool name="motorola_sprint_hd_codec">false</bool>
 
   <!-- Hidden menu configuration for Motorola. -->
-  <!-- Flag to control if the Hidden Menu sequence will be supported by Sprint. -->
-  <bool name="motorola_feature_hidden_menu">false</bool>
-
   <!-- This defines the specific key seuquence that will be catched in the SpecialCharSequenceMgr
        such as, ##OMADM# -->
   <string-array name="motorola_hidden_menu_key_sequence">
diff --git a/java/com/android/dialer/p13n/inference/P13nRanking.java b/java/com/android/dialer/p13n/inference/P13nRanking.java
index 0682e85..79b4d71 100644
--- a/java/com/android/dialer/p13n/inference/P13nRanking.java
+++ b/java/com/android/dialer/p13n/inference/P13nRanking.java
@@ -22,7 +22,7 @@
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.p13n.inference.protocol.P13nRanker;
 import com.android.dialer.p13n.inference.protocol.P13nRankerFactory;
 import java.util.List;
diff --git a/java/com/android/dialer/performancereport/PerformanceReport.java b/java/com/android/dialer/performancereport/PerformanceReport.java
new file mode 100644
index 0000000..27fd748
--- /dev/null
+++ b/java/com/android/dialer/performancereport/PerformanceReport.java
@@ -0,0 +1,155 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.performancereport;
+
+import android.os.SystemClock;
+import android.support.annotation.Nullable;
+import android.support.v7.widget.RecyclerView;
+import android.widget.AbsListView;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.UiAction;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.concurrent.TimeUnit;
+
+/** Tracks UI performance for a call. */
+public final class PerformanceReport {
+
+  private static final long INVALID_TIME = -1;
+  private static final long ACTIVE_DURATION = TimeUnit.MINUTES.toMillis(5);
+
+  private static final List<UiAction.Type> actions = new ArrayList<>();
+  private static final List<Long> actionTimestamps = new ArrayList<>();
+
+  private static final RecyclerView.OnScrollListener recordOnScrollListener =
+      new RecyclerView.OnScrollListener() {
+        @Override
+        public void onScrollStateChanged(RecyclerView recyclerView, int newState) {
+          if (newState == RecyclerView.SCROLL_STATE_SETTLING) {
+            PerformanceReport.recordClick(UiAction.Type.SCROLL);
+          }
+          super.onScrollStateChanged(recyclerView, newState);
+        }
+      };
+
+  private static boolean recording = false;
+  private static long appLaunchTimeMillis = INVALID_TIME;
+  private static long firstClickTimeMillis = INVALID_TIME;
+  private static long lastActionTimeMillis = INVALID_TIME;
+
+  @Nullable private static UiAction.Type ignoreActionOnce = null;
+
+  private PerformanceReport() {}
+
+  public static void startRecording() {
+    LogUtil.enterBlock("PerformanceReport.startRecording");
+
+    appLaunchTimeMillis = SystemClock.elapsedRealtime();
+    lastActionTimeMillis = appLaunchTimeMillis;
+    if (!actions.isEmpty()) {
+      actions.clear();
+      actionTimestamps.clear();
+    }
+    recording = true;
+  }
+
+  public static void stopRecording() {
+    LogUtil.enterBlock("PerformanceReport.stopRecording");
+    recording = false;
+  }
+
+  public static void recordClick(UiAction.Type action) {
+    if (!recording) {
+      return;
+    }
+
+    if (action == ignoreActionOnce) {
+      LogUtil.i("PerformanceReport.recordClick", "%s is ignored", action.toString());
+      ignoreActionOnce = null;
+      return;
+    }
+    ignoreActionOnce = null;
+
+    LogUtil.v("PerformanceReport.recordClick", action.toString());
+
+    // Timeout
+    long currentTime = SystemClock.elapsedRealtime();
+    if (currentTime - lastActionTimeMillis > ACTIVE_DURATION) {
+      startRecording();
+      recordClick(action);
+      return;
+    }
+
+    lastActionTimeMillis = currentTime;
+    if (actions.isEmpty()) {
+      firstClickTimeMillis = currentTime;
+    }
+    actions.add(action);
+    actionTimestamps.add(currentTime - appLaunchTimeMillis);
+  }
+
+  public static void recordScrollStateChange(int scrollState) {
+    if (scrollState == AbsListView.OnScrollListener.SCROLL_STATE_TOUCH_SCROLL) {
+      recordClick(UiAction.Type.SCROLL);
+    }
+  }
+
+  public static void logOnScrollStateChange(RecyclerView recyclerView) {
+    // Remove the listener in case it was added before
+    recyclerView.removeOnScrollListener(recordOnScrollListener);
+    recyclerView.addOnScrollListener(recordOnScrollListener);
+  }
+
+  public static boolean isRecording() {
+    return recording;
+  }
+
+  public static long getTimeSinceAppLaunch() {
+    if (appLaunchTimeMillis == INVALID_TIME) {
+      return INVALID_TIME;
+    }
+    return SystemClock.elapsedRealtime() - appLaunchTimeMillis;
+  }
+
+  public static long getTimeSinceFirstClick() {
+    if (firstClickTimeMillis == INVALID_TIME) {
+      return INVALID_TIME;
+    }
+    return SystemClock.elapsedRealtime() - firstClickTimeMillis;
+  }
+
+  public static List<UiAction.Type> getActions() {
+    return actions;
+  }
+
+  public static List<Long> getActionTimestamps() {
+    return actionTimestamps;
+  }
+
+  @Nullable
+  public static UiAction.Type getIgnoreActionOnce() {
+    return ignoreActionOnce;
+  }
+
+  public static void setIgnoreActionOnce(@Nullable UiAction.Type ignoreActionOnce) {
+    PerformanceReport.ignoreActionOnce = ignoreActionOnce;
+    LogUtil.i(
+        "PerformanceReport.setIgnoreActionOnce",
+        "next action will be ignored once if it is %s",
+        ignoreActionOnce.toString());
+  }
+}
diff --git a/java/com/android/dialer/phonenumbercache/CachedNumberLookupService.java b/java/com/android/dialer/phonenumbercache/CachedNumberLookupService.java
index 2aed9e7..c398251 100644
--- a/java/com/android/dialer/phonenumbercache/CachedNumberLookupService.java
+++ b/java/com/android/dialer/phonenumbercache/CachedNumberLookupService.java
@@ -49,6 +49,8 @@
 
   boolean canReportAsInvalid(ContactSource.Type sourceType, String objectId);
 
+  boolean reportAsInvalid(Context context, CachedContactInfo cachedContactInfo);
+
   /** @return return {@link Uri} to the photo or return {@code null} when failing to add photo */
   @Nullable
   Uri addPhoto(Context context, String number, InputStream in);
diff --git a/java/com/android/dialer/phonenumbercache/ContactInfo.java b/java/com/android/dialer/phonenumbercache/ContactInfo.java
index 5546553..aef7374 100644
--- a/java/com/android/dialer/phonenumbercache/ContactInfo.java
+++ b/java/com/android/dialer/phonenumbercache/ContactInfo.java
@@ -17,7 +17,7 @@
 package com.android.dialer.phonenumbercache;
 
 import android.net.Uri;
-import android.support.annotation.Nullable;
+import android.support.annotation.NonNull;
 import android.text.TextUtils;
 import com.android.contacts.common.ContactsUtils.UserType;
 import com.android.contacts.common.util.UriUtils;
@@ -59,7 +59,7 @@
   public boolean isBadData;
   public String objectId;
   public @UserType long userType;
-  public @Nullable ContactSource.Type sourceType = ContactSource.Type.UNKNOWN_SOURCE_TYPE;
+  public @NonNull ContactSource.Type sourceType = ContactSource.Type.UNKNOWN_SOURCE_TYPE;
   /**
    * True if local contact exists. This is only used for Cequint Caller ID so it won't overwrite
    * photo if local contact exists.
diff --git a/java/com/android/dialer/phonenumbercache/ContactInfoHelper.java b/java/com/android/dialer/phonenumbercache/ContactInfoHelper.java
index bd4ba97..4fa3147 100644
--- a/java/com/android/dialer/phonenumbercache/ContactInfoHelper.java
+++ b/java/com/android/dialer/phonenumbercache/ContactInfoHelper.java
@@ -203,6 +203,7 @@
     return info;
   }
 
+  @Nullable
   public ContactInfo lookupNumber(String number, String countryIso) {
     return lookupNumber(number, countryIso, -1);
   }
@@ -223,12 +224,14 @@
   @SuppressWarnings("ReferenceEquality")
   public ContactInfo lookupNumber(String number, String countryIso, long directoryId) {
     if (TextUtils.isEmpty(number)) {
+      LogUtil.d("ContactInfoHelper.lookupNumber", "number is empty");
       return null;
     }
 
     ContactInfo info;
 
     if (PhoneNumberHelper.isUriNumber(number)) {
+      LogUtil.d("ContactInfoHelper.lookupNumber", "number is sip");
       // The number is a SIP address..
       info = lookupContactFromUri(getContactInfoLookupUri(number, directoryId));
       if (info == null || info == ContactInfo.EMPTY) {
@@ -246,6 +249,7 @@
     final ContactInfo updatedInfo;
     if (info == null) {
       // The lookup failed.
+      LogUtil.d("ContactInfoHelper.lookupNumber", "lookup failed");
       updatedInfo = null;
     } else {
       // If we did not find a matching contact, generate an empty contact info for the number.
@@ -325,9 +329,11 @@
    */
   ContactInfo lookupContactFromUri(Uri uri) {
     if (uri == null) {
+      LogUtil.d("ContactInfoHelper.lookupContactFromUri", "uri is null");
       return null;
     }
     if (!PermissionsUtil.hasContactsReadPermissions(mContext)) {
+      LogUtil.d("ContactInfoHelper.lookupContactFromUri", "no contact permission, return empty");
       return ContactInfo.EMPTY;
     }
 
@@ -336,10 +342,12 @@
       String[] projection = PhoneQuery.getPhoneLookupProjection(uri);
       phoneLookupCursor = mContext.getContentResolver().query(uri, projection, null, null, null);
     } catch (NullPointerException e) {
+      LogUtil.e("ContactInfoHelper.lookupContactFromUri", "phone lookup", e);
       // Trap NPE from pre-N CP2
       return null;
     }
     if (phoneLookupCursor == null) {
+      LogUtil.d("ContactInfoHelper.lookupContactFromUri", "phoneLookupCursor is null");
       return null;
     }
 
@@ -408,19 +416,32 @@
   private ContactInfo queryContactInfoForPhoneNumber(
       String number, String countryIso, long directoryId) {
     if (TextUtils.isEmpty(number)) {
+      LogUtil.d("ContactInfoHelper.queryContactInfoForPhoneNumber", "number is empty");
       return null;
     }
 
     ContactInfo info = lookupContactFromUri(getContactInfoLookupUri(number, directoryId));
+    if (info == null) {
+      LogUtil.d("ContactInfoHelper.queryContactInfoForPhoneNumber", "info looked up is null");
+    }
     if (info != null && info != ContactInfo.EMPTY) {
       info.formattedNumber = formatPhoneNumber(number, null, countryIso);
+      if (directoryId == -1) {
+        // Contact found in the default directory
+        info.sourceType = ContactSource.Type.SOURCE_TYPE_DIRECTORY;
+      } else {
+        // Contact found in the extended directory specified by directoryId
+        info.sourceType = ContactSource.Type.SOURCE_TYPE_EXTENDED;
+      }
     } else if (mCachedNumberLookupService != null) {
       CachedContactInfo cacheInfo =
           mCachedNumberLookupService.lookupCachedContactFromNumber(mContext, number);
       if (cacheInfo != null) {
-        info = cacheInfo.getContactInfo().isBadData ? null : cacheInfo.getContactInfo();
-      } else {
-        info = null;
+        if (!cacheInfo.getContactInfo().isBadData) {
+          info = cacheInfo.getContactInfo();
+        } else {
+          LogUtil.i("ContactInfoHelper.queryContactInfoForPhoneNumber", "info is bad data");
+        }
       }
     }
     return info;
@@ -601,13 +622,17 @@
    * will be updated if available.
    */
   @WorkerThread
-  public void updateFromCequintCallerId(ContactInfo info, String number) {
+  public void updateFromCequintCallerId(
+      @Nullable CequintCallerIdManager cequintCallerIdManager, ContactInfo info, String number) {
     Assert.isWorkerThread();
     if (!CequintCallerIdManager.isCequintCallerIdEnabled(mContext)) {
       return;
     }
+    if (cequintCallerIdManager == null) {
+      return;
+    }
     CequintCallerIdContact cequintCallerIdContact =
-        CequintCallerIdManager.getCequintCallerIdContact(mContext, number);
+        cequintCallerIdManager.getCequintCallerIdContact(mContext, number);
     if (cequintCallerIdContact == null) {
       return;
     }
diff --git a/java/com/android/dialer/phonenumberproto/Converter.java b/java/com/android/dialer/phonenumberproto/Converter.java
new file mode 100644
index 0000000..453b988
--- /dev/null
+++ b/java/com/android/dialer/phonenumberproto/Converter.java
@@ -0,0 +1,120 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package com.android.dialer.phonenumberproto;
+
+import com.android.dialer.DialerInternalPhoneNumber;
+import com.google.i18n.phonenumbers.Phonenumber.PhoneNumber;
+
+/**
+ * Methods for converting from {@link PhoneNumber} POJOs to {@link DialerInternalPhoneNumber} protos
+ * and back.
+ */
+class Converter {
+
+  static DialerInternalPhoneNumber pojoToProto(PhoneNumber pojo) {
+    DialerInternalPhoneNumber.Builder proto = DialerInternalPhoneNumber.newBuilder();
+    if (pojo.hasCountryCode()) {
+      proto.setCountryCode(pojo.getCountryCode());
+    }
+    if (pojo.hasCountryCodeSource()) {
+      switch (pojo.getCountryCodeSource()) {
+        case FROM_NUMBER_WITH_PLUS_SIGN:
+          proto.setCountryCodeSource(
+              DialerInternalPhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN);
+          break;
+        case FROM_NUMBER_WITH_IDD:
+          proto.setCountryCodeSource(
+              DialerInternalPhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD);
+          break;
+        case FROM_NUMBER_WITHOUT_PLUS_SIGN:
+          proto.setCountryCodeSource(
+              DialerInternalPhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN);
+          break;
+        case FROM_DEFAULT_COUNTRY:
+          proto.setCountryCodeSource(
+              DialerInternalPhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY);
+          break;
+        default:
+          throw new IllegalArgumentException(
+              "unsupported country code source: " + pojo.getCountryCodeSource());
+      }
+    }
+    if (pojo.hasExtension()) {
+      proto.setExtension(pojo.getExtension());
+    }
+    if (pojo.hasItalianLeadingZero()) {
+      proto.setItalianLeadingZero(pojo.isItalianLeadingZero());
+    }
+    if (pojo.hasNationalNumber()) {
+      proto.setNationalNumber(pojo.getNationalNumber());
+    }
+    if (pojo.hasNumberOfLeadingZeros()) {
+      proto.setNumberOfLeadingZeros(pojo.getNumberOfLeadingZeros());
+    }
+    if (pojo.hasPreferredDomesticCarrierCode()) {
+      proto.setPreferredDomesticCarrierCode(pojo.getPreferredDomesticCarrierCode());
+    }
+    if (pojo.hasRawInput()) {
+      proto.setRawInput(pojo.getRawInput());
+    }
+    return proto.build();
+  }
+
+  static PhoneNumber protoToPojo(DialerInternalPhoneNumber proto) {
+    PhoneNumber pojo = new PhoneNumber();
+    if (proto.hasCountryCode()) {
+      pojo.setCountryCode(proto.getCountryCode());
+    }
+    if (proto.hasCountryCodeSource()) {
+      switch (proto.getCountryCodeSource()) {
+        case FROM_NUMBER_WITH_PLUS_SIGN:
+          pojo.setCountryCodeSource(PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_PLUS_SIGN);
+          break;
+        case FROM_NUMBER_WITH_IDD:
+          pojo.setCountryCodeSource(PhoneNumber.CountryCodeSource.FROM_NUMBER_WITH_IDD);
+          break;
+        case FROM_NUMBER_WITHOUT_PLUS_SIGN:
+          pojo.setCountryCodeSource(PhoneNumber.CountryCodeSource.FROM_NUMBER_WITHOUT_PLUS_SIGN);
+          break;
+        case FROM_DEFAULT_COUNTRY:
+          pojo.setCountryCodeSource(PhoneNumber.CountryCodeSource.FROM_DEFAULT_COUNTRY);
+          break;
+        default:
+          throw new IllegalArgumentException(
+              "unsupported country code source: " + proto.getCountryCodeSource());
+      }
+    }
+    if (proto.hasExtension()) {
+      pojo.setExtension(proto.getExtension());
+    }
+    if (proto.hasItalianLeadingZero()) {
+      pojo.setItalianLeadingZero(proto.getItalianLeadingZero());
+    }
+    if (proto.hasNationalNumber()) {
+      pojo.setNationalNumber(proto.getNationalNumber());
+    }
+    if (proto.hasNumberOfLeadingZeros()) {
+      pojo.setNumberOfLeadingZeros(proto.getNumberOfLeadingZeros());
+    }
+    if (proto.hasPreferredDomesticCarrierCode()) {
+      pojo.setPreferredDomesticCarrierCode(proto.getPreferredDomesticCarrierCode());
+    }
+    if (proto.hasRawInput()) {
+      pojo.setRawInput(proto.getRawInput());
+    }
+    return pojo;
+  }
+}
diff --git a/java/com/android/dialer/phonenumberproto/DialerPhoneNumberUtil.java b/java/com/android/dialer/phonenumberproto/DialerPhoneNumberUtil.java
new file mode 100644
index 0000000..cc509f4
--- /dev/null
+++ b/java/com/android/dialer/phonenumberproto/DialerPhoneNumberUtil.java
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.phonenumberproto;
+
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.annotation.WorkerThread;
+import com.android.dialer.DialerInternalPhoneNumber;
+import com.android.dialer.DialerPhoneNumber;
+import com.android.dialer.DialerPhoneNumber.RawInput;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.google.i18n.phonenumbers.NumberParseException;
+import com.google.i18n.phonenumbers.PhoneNumberUtil;
+import com.google.i18n.phonenumbers.PhoneNumberUtil.MatchType;
+
+/**
+ * Wrapper for selected methods in {@link PhoneNumberUtil} which uses the {@link DialerPhoneNumber}
+ * lite proto instead of the {@link com.google.i18n.phonenumbers.Phonenumber.PhoneNumber} POJO.
+ *
+ * <p>All methods should be called on a worker thread.
+ */
+public class DialerPhoneNumberUtil {
+  private final PhoneNumberUtil phoneNumberUtil;
+
+  @WorkerThread
+  public DialerPhoneNumberUtil(@NonNull PhoneNumberUtil phoneNumberUtil) {
+    Assert.isWorkerThread();
+    this.phoneNumberUtil = Assert.isNotNull(phoneNumberUtil);
+  }
+
+  /**
+   * Parses the provided raw phone number into a {@link DialerPhoneNumber}.
+   *
+   * @see PhoneNumberUtil#parse(String, String)
+   */
+  @WorkerThread
+  public DialerPhoneNumber parse(@Nullable String numberToParse, @Nullable String defaultRegion) {
+    Assert.isWorkerThread();
+
+    DialerPhoneNumber.Builder dialerPhoneNumber = DialerPhoneNumber.newBuilder();
+    RawInput.Builder rawInput = RawInput.newBuilder();
+    // Numbers can be null or empty for incoming "unknown" calls.
+    if (numberToParse != null) {
+      rawInput.setNumber(numberToParse);
+    }
+    if (defaultRegion != null) {
+      rawInput.setCountryIso(defaultRegion);
+    }
+    dialerPhoneNumber.setRawInput(rawInput.build());
+
+    try {
+      dialerPhoneNumber.setDialerInternalPhoneNumber(
+          Converter.pojoToProto(phoneNumberUtil.parse(numberToParse, defaultRegion)));
+    } catch (NumberParseException e) {
+      LogUtil.w("DialerPhoneNumberUtil.parse", "couldn't parse phone number", e);
+    }
+    return dialerPhoneNumber.build();
+  }
+
+  /**
+   * Returns true if the two numbers were parseable by libphonenumber and are an {@link
+   * MatchType#EXACT_MATCH} or if they have the same raw input.
+   */
+  @WorkerThread
+  public boolean isExactMatch(
+      @NonNull DialerPhoneNumber firstNumberIn, @NonNull DialerPhoneNumber secondNumberIn) {
+    Assert.isWorkerThread();
+    if (!Assert.isNotNull(firstNumberIn).hasDialerInternalPhoneNumber()
+        || !Assert.isNotNull(secondNumberIn).hasDialerInternalPhoneNumber()) {
+      return firstNumberIn.getRawInput().equals(secondNumberIn.getRawInput());
+    }
+    return isNumberMatch(
+            firstNumberIn.getDialerInternalPhoneNumber(),
+            secondNumberIn.getDialerInternalPhoneNumber())
+        == MatchType.EXACT_MATCH;
+  }
+
+  /**
+   * Compares the provided phone numbers.
+   *
+   * @see PhoneNumberUtil#isNumberMatch(com.google.i18n.phonenumbers.Phonenumber.PhoneNumber,
+   *     com.google.i18n.phonenumbers.Phonenumber.PhoneNumber)
+   */
+  @WorkerThread
+  private MatchType isNumberMatch(
+      @NonNull DialerInternalPhoneNumber firstNumberIn,
+      @NonNull DialerInternalPhoneNumber secondNumberIn) {
+    Assert.isWorkerThread();
+    return phoneNumberUtil.isNumberMatch(
+        Converter.protoToPojo(Assert.isNotNull(firstNumberIn)),
+        Converter.protoToPojo(Assert.isNotNull(secondNumberIn)));
+  }
+}
diff --git a/java/com/android/dialer/phonenumberproto/dialer_phone_number.proto b/java/com/android/dialer/phonenumberproto/dialer_phone_number.proto
new file mode 100644
index 0000000..a0f3626
--- /dev/null
+++ b/java/com/android/dialer/phonenumberproto/dialer_phone_number.proto
@@ -0,0 +1,172 @@
+// Copyright (C) 2017 The Android Open Source Project
+//
+// Licensed under the Apache License, Version 2.0 (the "License");
+// you may not use this file except in compliance with the License.
+// You may obtain a copy of the License at
+//
+//      http://www.apache.org/licenses/LICENSE-2.0
+//
+// Unless required by applicable law or agreed to in writing, software
+// distributed under the License is distributed on an "AS IS" BASIS,
+// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+// See the License for the specific language governing permissions and
+// limitations under the License
+
+syntax = "proto2";
+
+option java_package = "com.android.dialer";
+option java_multiple_files = true;
+option optimize_for = LITE_RUNTIME;
+
+package com.android.dialer;
+
+// A phone number for use in the dialer application. It consists of a
+// DialerInternalPhoneNumber, which is a copy of libphonenumber's PhoneNumber
+// proto, and the raw input used to create it.
+message DialerPhoneNumber {
+  // libphonenumber representation of the phone number. May be empty if the raw
+  // input failed to parse, in which case raw_input should be used.
+  optional DialerInternalPhoneNumber dialer_internal_phone_number = 1;
+
+  // The raw input which was used to create a DialerPhoneNumber.
+  message RawInput {
+    // The phone number as it was entered or received.
+    optional string number = 1;
+    // The ISO 3166-1 two letter country code of the country where the user made
+    // or received the call.
+    optional string country_iso = 2;
+  }
+  // Prefer to use dialer_internal_phone_number if present.
+  optional RawInput raw_input = 2;
+}
+
+// This is a copy of libphonenumber proto file for use in the dialer codebase.
+// We cannot depend on the real libphonenumber proto because it is not exposed
+// in any open source library. As such, this file could fall out of sync with
+// that proto over time.
+//
+// The only difference between this proto and the libphonenumber proto (as of
+// when this file was created) is the package name and proto name.
+//
+// If the libphonenumber proto becomes accessible some day, it may be possible
+// to remove this proto and use the real libphonenumber proto assuming this
+// proto is kept wire-compatible with it.
+message DialerInternalPhoneNumber {
+  // The country calling code for this number, as defined by the International
+  // Telecommunication Union (ITU). For example, this would be 1 for NANPA
+  // countries, and 33 for France.
+  required int32 country_code = 1;
+
+  // The National (significant) Number, as defined in International
+  // Telecommunication Union (ITU) Recommendation E.164, without any leading
+  // zero. The leading-zero is stored separately if required, since this is an
+  // uint64 and hence cannot store such information. Do not use this field
+  // directly: if you want the national significant number, call the
+  // getNationalSignificantNumber method of PhoneNumberUtil.
+  //
+  // For countries which have the concept of an "area code" or "national
+  // destination code", this is included in the National (significant) Number.
+  // Although the ITU says the maximum length should be 15, we have found longer
+  // numbers in some countries e.g. Germany.
+  // Note that the National (significant) Number does not contain the National
+  // (trunk) prefix. Obviously, as a uint64, it will never contain any
+  // formatting (hyphens, spaces, parentheses), nor any alphanumeric spellings.
+  required uint64 national_number = 2 [jstype = JS_NUMBER];
+
+  // Extension is not standardized in ITU recommendations, except for being
+  // defined as a series of numbers with a maximum length of 40 digits. It is
+  // defined as a string here to accommodate for the possible use of a leading
+  // zero in the extension (organizations have complete freedom to do so, as
+  // there is no standard defined). Other than digits, some other dialling
+  // characters such as "," (indicating a wait) may be stored here.
+  optional string extension = 3;
+
+  // In some countries, the national (significant) number starts with one or
+  // more "0"s without this being a national prefix or trunk code of some kind.
+  // For example, the leading zero in the national (significant) number of an
+  // Italian phone number indicates the number is a fixed-line number.  There
+  // have been plans to migrate fixed-line numbers to start with the digit two
+  // since December 2000, but it has not happened yet. See
+  // http://en.wikipedia.org/wiki/%2B39 for more details.
+  //
+  // These fields can be safely ignored (there is no need to set them) for most
+  // countries. Some limited number of countries behave like Italy - for these
+  // cases, if the leading zero(s) of a number would be retained even when
+  // dialling internationally, set this flag to true, and also set the number of
+  // leading zeros.
+  //
+  // Clients who use the parsing or conversion functionality of the i18n phone
+  // number libraries (go/phonenumbers) will have these fields set if necessary
+  // automatically.
+  optional bool italian_leading_zero = 4;
+  optional int32 number_of_leading_zeros = 8 [default = 1];
+
+  // The next few fields are non-essential fields for a phone number. They
+  // retain extra information about the form the phone number was in when it was
+  // provided to us to parse. They can be safely ignored by most clients. To
+  // populate them, call parseAndKeepRawInput on PhoneNumberUtil.
+
+  // This field is used to store the raw input string containing phone numbers
+  // before it was canonicalized by the library. For example, it could be used
+  // to store alphanumerical numbers such as "1-800-GOOG-411".
+  optional string raw_input = 5;
+
+  // The source from which the country_code is derived. This is not set in the
+  // general parsing method, but in the method that parses and keeps raw_input.
+  // New fields could be added upon request.
+  enum CountryCodeSource {
+    // The country_code is derived based on a phone number with a leading "+",
+    // e.g. the French number "+33 1 42 68 53 00".
+    FROM_NUMBER_WITH_PLUS_SIGN = 1;
+
+    // The country_code is derived based on a phone number with a leading IDD,
+    // e.g. the French number "011 33 1 42 68 53 00", as it is dialled from US.
+    FROM_NUMBER_WITH_IDD = 5;
+
+    // The country_code is derived based on a phone number without a leading
+    // "+", e.g. the French number "33 1 42 68 53 00" when defaultCountry is
+    // supplied as France.
+    FROM_NUMBER_WITHOUT_PLUS_SIGN = 10;
+
+    // The country_code is derived NOT based on the phone number itself, but
+    // from the defaultCountry parameter provided in the parsing function by the
+    // clients. This happens mostly for numbers written in the national format
+    // (without country code). For example, this would be set when parsing the
+    // French number "01 42 68 53 00", when defaultCountry is supplied as
+    // France.
+    FROM_DEFAULT_COUNTRY = 20;
+  }
+
+  // The source from which the country_code is derived.
+  optional CountryCodeSource country_code_source = 6;
+
+  // The carrier selection code that is preferred when calling this phone number
+  // domestically. This also includes codes that need to be dialed in some
+  // countries when calling from landlines to mobiles or vice versa. For
+  // example, in Columbia, a "3" needs to be dialed before the phone number
+  // itself when calling from a mobile phone to a domestic landline phone and
+  // vice versa.
+  //
+  // Note this is the "preferred" code, which means other codes may work as
+  // well.
+  optional string preferred_domestic_carrier_code = 7;
+}
+
+// Examples:
+//
+// Google MTV, +1 650-253-0000, (650) 253-0000
+// country_code: 1
+// national_number: 6502530000
+//
+// Google Paris, +33 (0)1 42 68 53 00, 01 42 68 53 00
+// country_code: 33
+// national_number: 142685300
+//
+// Google Beijing, +86-10-62503000, (010) 62503000
+// country_code: 86
+// national_number: 1062503000
+//
+// Google Italy, +39 02-36618 300, 02-36618 300
+// country_code: 39
+// national_number: 236618300
+// italian_leading_zero: true
\ No newline at end of file
diff --git a/java/com/android/dialer/postcall/AndroidManifest.xml b/java/com/android/dialer/postcall/AndroidManifest.xml
index 79ca5d5..22c77dd 100644
--- a/java/com/android/dialer/postcall/AndroidManifest.xml
+++ b/java/com/android/dialer/postcall/AndroidManifest.xml
@@ -21,7 +21,7 @@
     <activity
       android:name="com.android.dialer.postcall.PostCallActivity"
       android:exported="false"
-      android:theme="@style/Theme.AppCompat.NoActionBar"
+      android:theme="@style/DialerThemeBase.NoActionBar"
       android:windowSoftInputMode="adjustResize"
       android:screenOrientation="portrait"/>
   </application>
diff --git a/java/com/android/dialer/postcall/PostCall.java b/java/com/android/dialer/postcall/PostCall.java
index 586b473..b17a9b6 100644
--- a/java/com/android/dialer/postcall/PostCall.java
+++ b/java/com/android/dialer/postcall/PostCall.java
@@ -26,24 +26,23 @@
 import android.telephony.TelephonyManager;
 import android.view.View;
 import android.view.View.OnClickListener;
-import com.android.dialer.buildtype.BuildType;
-import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProvider;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProvider;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.enrichedcall.EnrichedCallCapabilities;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.performancereport.PerformanceReport;
 import com.android.dialer.util.DialerUtils;
 import com.android.dialer.util.IntentUtil;
 
 /** Helper class to handle all post call actions. */
 public class PostCall {
 
-  private static final String KEY_POST_CALL_CALL_CONNECT_TIME = "post_call_call_connect_time";
   private static final String KEY_POST_CALL_CALL_DISCONNECT_TIME = "post_call_call_disconnect_time";
+  private static final String KEY_POST_CALL_CALL_CONNECT_TIME = "post_call_call_connect_time";
   private static final String KEY_POST_CALL_CALL_NUMBER = "post_call_call_number";
   private static final String KEY_POST_CALL_MESSAGE_SENT = "post_call_message_sent";
 
@@ -55,6 +54,8 @@
         promptUserToViewSentMessage(activity, rootView);
       } else if (shouldPromptUserToSendMessage(activity)) {
         promptUserToSendMessage(activity, rootView);
+      } else {
+        clear(activity);
       }
     }
   }
@@ -160,6 +161,19 @@
         .apply();
   }
 
+  /**
+   * Restart performance recording if there is a recent call (disconnect time to now is under
+   * threshold)
+   */
+  public static void restartPerformanceRecordingIfARecentCallExist(Context context) {
+    long disconnectTimeMillis =
+        DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context)
+            .getLong(PostCall.KEY_POST_CALL_CALL_DISCONNECT_TIME, -1);
+    if (disconnectTimeMillis != -1 && PerformanceReport.isRecording()) {
+      PerformanceReport.startRecording();
+    }
+  }
+
   private static void clear(Context context) {
     activeSnackbar = null;
 
@@ -203,19 +217,7 @@
   }
 
   private static boolean isEnabled(Context context) {
-    @BuildType.Type int type = BuildType.get();
-    switch (type) {
-      case BuildType.BUGFOOD:
-      case BuildType.DOGFOOD:
-      case BuildType.FISHFOOD:
-      case BuildType.TEST:
-        return ConfigProviderBindings.get(context).getBoolean("enable_post_call", true);
-      case BuildType.RELEASE:
-        return ConfigProviderBindings.get(context).getBoolean("enable_post_call_prod", true);
-      default:
-        Assert.fail();
-        return false;
-    }
+    return ConfigProviderBindings.get(context).getBoolean("enable_post_call_prod", true);
   }
 
   private static boolean isSimReady(Context context) {
diff --git a/java/com/android/dialer/protos/ProtoParsers.java b/java/com/android/dialer/protos/ProtoParsers.java
index b77c069..5a60799 100644
--- a/java/com/android/dialer/protos/ProtoParsers.java
+++ b/java/com/android/dialer/protos/ProtoParsers.java
@@ -18,13 +18,10 @@
 
 import android.content.Intent;
 import android.os.Bundle;
-import android.os.Parcel;
-import android.os.Parcelable;
+import android.support.annotation.NonNull;
 import com.android.dialer.common.Assert;
-import com.google.protobuf.CodedOutputStream;
 import com.google.protobuf.InvalidProtocolBufferException;
 import com.google.protobuf.MessageLite;
-import java.io.IOException;
 
 /** Useful methods for using Protocol Buffers with Android. */
 public final class ProtoParsers {
@@ -35,11 +32,8 @@
   @SuppressWarnings("unchecked") // We want to eventually optimize away parser classes, so cast
   public static <T extends MessageLite> T get(Bundle bundle, String key, T defaultInstance)
       throws InvalidProtocolBufferException {
-    // Class loaders are unique to each Class instance, so we need to specify how to decode
-    // the information again, even though we set the class loaders when serializing the data.
-    bundle.setClassLoader(ProtoParsers.class.getClassLoader());
-    InternalDontUse parcelable = bundle.getParcelable(key);
-    return (T) parcelable.getMessageUnsafe(defaultInstance.getDefaultInstanceForType());
+    byte[] bytes = bundle.getByteArray(key);
+    return (T) mergeFrom(bytes, defaultInstance.getDefaultInstanceForType());
   }
 
   /**
@@ -51,7 +45,7 @@
     try {
       return get(bundle, key, defaultInstance);
     } catch (InvalidProtocolBufferException e) {
-      throw new RuntimeException(e);
+      throw Assert.createIllegalStateFailException(e.toString());
     }
   }
 
@@ -68,121 +62,28 @@
    * Stores a proto in a Bundle, for later retrieval by {@link #get(Bundle, String, MessageLite)} or
    * {@link #getFromInstanceState(Bundle, String, MessageLite)}.
    */
-  public static void put(Bundle bundle, String key, MessageLite message) {
-    bundle.putParcelable(key, new InternalDontUse<>(null, message));
+  public static void put(
+      @NonNull Bundle bundle, @NonNull String key, @NonNull MessageLite message) {
+    Assert.checkState(message != null);
+    bundle.putByteArray(key, message.toByteArray());
   }
 
   /**
    * Stores a proto in an Intent, for later retrieval by {@link #get(Bundle, String, MessageLite)}.
    * Needs separate method because Intent has similar to but different API than Bundle.
    */
-  public static void put(Intent intent, String key, MessageLite message) {
-    intent.putExtra(key, new InternalDontUse<>(null, message));
-  }
-
-  /** Returns a {@linkplain Parcelable} representation of this protobuf message. */
-  public static <T extends MessageLite> ParcelableProto<T> asParcelable(T message) {
-    return new InternalDontUse<>(null, message);
-  }
-
-  /**
-   * A protobuf message that can be stored in a {@link Parcel}.
-   *
-   * <p><b>Note:</b> This <code>Parcelable</code> can only be used in single app. Attempting to send
-   * it to another app through an <code>Intent</code> will result in an exception due to Proguard
-   * obfusation when the target application attempts to load the <code>ParcelableProto</code> class.
-   */
-  public interface ParcelableProto<T extends MessageLite> extends Parcelable {
-    /**
-     * @throws IllegalStateException if the parceled data does not correspond to the defaultInstance
-     *     type.
-     */
-    T getMessage(T defaultInstance);
-  }
-
-  /** Public because of Parcelable requirements. Do not use. */
-  public static final class InternalDontUse<T extends MessageLite> implements ParcelableProto<T> {
-    /* One of these two fields is always populated - since the bytes field never escapes this
-     * object, there is no risk of concurrent modification by multiple threads, and volatile
-     * is sufficient to be thread-safe. */
-    private volatile byte[] bytes;
-    private volatile T message;
-
-    /**
-     * Ideally, we would have type safety here. However, a static field {@link Creator} is required
-     * by {@link Parcelable}. Static fields are inherently not type safe, since only 1 exists per
-     * class (rather than 1 per type).
-     */
-    public static final Parcelable.Creator<InternalDontUse<?>> CREATOR =
-        new Creator<InternalDontUse<?>>() {
-          @Override
-          public InternalDontUse<?> createFromParcel(Parcel parcel) {
-            int serializedSize = parcel.readInt();
-            byte[] array = new byte[serializedSize];
-            parcel.readByteArray(array);
-            return new InternalDontUse<>(array, null);
-          }
-
-          @Override
-          public InternalDontUse<?>[] newArray(int i) {
-            return new InternalDontUse[i];
-          }
-        };
-
-    private InternalDontUse(byte[] bytes, T message) {
-      Assert.checkArgument(bytes != null || message != null, "Must have a message or bytes");
-      this.bytes = bytes;
-      this.message = message;
-    }
-
-    @Override
-    public int describeContents() {
-      return 0;
-    }
-
-    @Override
-    public void writeToParcel(Parcel parcel, int i) {
-      if (bytes == null) {
-        final byte[] flatArray = new byte[message.getSerializedSize()];
-        try {
-          message.writeTo(CodedOutputStream.newInstance(flatArray));
-          bytes = flatArray;
-        } catch (IOException impossible) {
-          throw new AssertionError(impossible);
-        }
-      }
-      parcel.writeInt(bytes.length);
-      parcel.writeByteArray(bytes);
-    }
-
-    @Override
-    public T getMessage(T defaultInstance) {
-      try {
-        // The proto should never be invalid if it came from our application, so if it is, throw.
-        return getMessageUnsafe(defaultInstance);
-      } catch (InvalidProtocolBufferException e) {
-        throw new IllegalStateException(e);
-      }
-    }
-
-    @SuppressWarnings("unchecked") // We're being deserialized, so there's no real type safety
-    T getMessageUnsafe(T defaultInstance) throws InvalidProtocolBufferException {
-      // There's a risk that we'll double-parse the bytes, but that's OK, because it'll end up
-      // as the same immutable object anyway.
-      if (message == null) {
-        message = (T) defaultInstance.toBuilder().mergeFrom(bytes).build();
-      }
-      return message;
-    }
+  public static void put(@NonNull Intent intent, @NonNull String key, MessageLite message) {
+    Assert.checkState(message != null);
+    intent.putExtra(key, message.toByteArray());
   }
 
   /** Parses a proto, throwing parser errors as runtime exceptions. */
   @SuppressWarnings("unchecked") // We want to eventually optimize away parser classes
-  public static <T extends MessageLite> T mergeFrom(byte[] bytes, T defaultInstance) {
+  private static <T extends MessageLite> T mergeFrom(byte[] bytes, T defaultInstance) {
     try {
       return (T) defaultInstance.toBuilder().mergeFrom(bytes).build();
     } catch (InvalidProtocolBufferException e) {
-      throw new RuntimeException(e);
+      throw Assert.createIllegalStateFailException(e.toString());
     }
   }
 }
diff --git a/java/com/android/dialer/searchfragment/README.md b/java/com/android/dialer/searchfragment/README.md
new file mode 100644
index 0000000..b3b9135
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/README.md
@@ -0,0 +1,62 @@
+# Dialer Search Ui
+
+searchfragment/ contains all code relevant to loading, rendering and filtering
+search results in both dialpad search and regular search.
+
+## Loading
+
+### On Device Contacts
+
+On device contacts loading happens in SearchContactsCursorLoader. It is used in
+conjunction with NewSearchFragment and Loader Callbacks to return a cursor from
+cp2 containing all of the relevant info needed to rendering.
+
+### Business Search
+
+// TODO(calderwoodra)
+
+### Google Directory Search
+
+// TODO(calderwoodra)
+
+## Rendering
+
+NewSearchFragment, SearchAdapter, SearchContactViewHolder and
+SearchCursorManager are used to render contact information. The fragment's
+recyclerview, adapter and viewholder work as expected like a normal recyclerview
+paradigm.
+
+The are three things to note about rendering:
+
+*   There are three data sources rendered: On device contacts, business search
+    results and google directory results.
+*   SearchContactsCursorLoader returns its cursor from cp2 and we filter/wrap it
+    with SearchContactCursor to render useful results (see below).
+*   SearchCursorManager is used to coalesce all three data sources to help with
+    determining row count, row type and returning the correct data source for
+    each position.
+
+## Filtering
+
+On device contacts are filtered using SearchContactCursor. We wrap the cursor
+returned from SearchContactsCursorLoader in NewSearchFragment#onLoadFinished in
+order to abstract away the filtering logic from the recyclerview adapter and
+viewholders.
+
+SearchContactCursor applies filtering in SearchContactCursor#filter to remove
+duplicate phone numbers returned from cp2 and phone numbers that do not match
+the given search query.
+
+Filtering methods used are:
+
+*   T9/dialpad search methods
+    *   Initial match (957 matches [W]illiam [J]ohn [S]mith)
+    *   Number + name match (1800946 matches [1800-Win]-A-Prize)
+*   Numeric/dialpad search methods
+    *   Simple number match (510333 matches [510-333]-7596)
+    *   Country-code agnostic matching for E164 normalized numbers (9177 matches
+        +65[9177]6930)
+    *   Country-code agnostic matching (510333 matches 1-[510-333]-7596)
+    *   Area-code agnostic matching (333 matches 510-[333]-7596)
+*   Name/keyboard search methods:
+    *   Simple name match (564 matches [Joh]n)
diff --git a/java/com/android/dialer/searchfragment/common/AndroidManifest.xml b/java/com/android/dialer/searchfragment/common/AndroidManifest.xml
new file mode 100644
index 0000000..178cd83
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/common/AndroidManifest.xml
@@ -0,0 +1,16 @@
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<manifest  package="com.android.dialer.searchfragment.common"/>
\ No newline at end of file
diff --git a/java/com/android/dialer/searchfragment/common/Projections.java b/java/com/android/dialer/searchfragment/common/Projections.java
new file mode 100644
index 0000000..37e20d1
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/common/Projections.java
@@ -0,0 +1,50 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.searchfragment.common;
+
+import android.provider.ContactsContract.CommonDataKinds.Phone;
+
+/** Class containing relevant projections for searching contacts. */
+public class Projections {
+
+  public static final int PHONE_ID = 0;
+  public static final int PHONE_TYPE = 1;
+  public static final int PHONE_LABEL = 2;
+  public static final int PHONE_NUMBER = 3;
+  public static final int PHONE_DISPLAY_NAME = 4;
+  public static final int PHONE_PHOTO_ID = 5;
+  public static final int PHONE_PHOTO_URI = 6;
+  public static final int PHONE_LOOKUP_KEY = 7;
+  public static final int PHONE_CARRIER_PRESENCE = 8;
+
+  @SuppressWarnings("unused")
+  public static final int PHONE_SORT_KEY = 9;
+
+  public static final String[] PHONE_PROJECTION =
+      new String[] {
+        Phone._ID, // 0
+        Phone.TYPE, // 1
+        Phone.LABEL, // 2
+        Phone.NUMBER, // 3
+        Phone.DISPLAY_NAME_PRIMARY, // 4
+        Phone.PHOTO_ID, // 5
+        Phone.PHOTO_THUMBNAIL_URI, // 6
+        Phone.LOOKUP_KEY, // 7
+        Phone.CARRIER_PRESENCE, // 8
+        Phone.SORT_KEY_PRIMARY // 9
+      };
+}
diff --git a/java/com/android/dialer/searchfragment/common/QueryBoldingUtil.java b/java/com/android/dialer/searchfragment/common/QueryBoldingUtil.java
new file mode 100644
index 0000000..7bdd695
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/common/QueryBoldingUtil.java
@@ -0,0 +1,154 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.searchfragment.common;
+
+import android.graphics.Typeface;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.text.SpannableString;
+import android.text.Spanned;
+import android.text.TextUtils;
+import android.text.style.StyleSpan;
+
+/** Utility class for handling bolding queries contained in string. */
+public class QueryBoldingUtil {
+
+  /**
+   * Compares a name and query and returns a {@link CharSequence} with bolded characters.
+   *
+   * <p>Some example:
+   *
+   * <ul>
+   *   <li>"query" would bold "John [query] Smith"
+   *   <li>"222" would bold "[AAA] Mom"
+   *   <li>"222" would bold "[A]llen [A]lex [A]aron"
+   * </ul>
+   *
+   * @param query containing any characters
+   * @param name of a contact/string that query will compare to
+   * @return name with query bolded if query can be found in the name.
+   */
+  public static CharSequence getNameWithQueryBolded(@Nullable String query, @NonNull String name) {
+    if (TextUtils.isEmpty(query)) {
+      return name;
+    }
+
+    int index = -1;
+    int numberOfBoldedCharacters = 0;
+
+    if (QueryFilteringUtil.nameMatchesT9Query(query, name)) {
+      // Bold the characters that match the t9 query
+      String t9 = QueryFilteringUtil.getT9Representation(name);
+      index = QueryFilteringUtil.indexOfQueryNonDigitsIgnored(query, t9);
+      if (index == -1) {
+        return getNameWithInitialsBolded(query, name);
+      }
+      numberOfBoldedCharacters = query.length();
+
+      for (int i = 0; i < query.length(); i++) {
+        char c = query.charAt(i);
+        if (!Character.isDigit(c)) {
+          numberOfBoldedCharacters--;
+        }
+      }
+
+      for (int i = 0; i < index + numberOfBoldedCharacters; i++) {
+        if (!Character.isLetterOrDigit(name.charAt(i))) {
+          if (i < index) {
+            index++;
+          } else {
+            numberOfBoldedCharacters++;
+          }
+        }
+      }
+    }
+
+    if (index == -1) {
+      // Bold the query as an exact match in the name
+      index = name.toLowerCase().indexOf(query);
+      numberOfBoldedCharacters = query.length();
+    }
+
+    return index == -1 ? name : getBoldedString(name, index, numberOfBoldedCharacters);
+  }
+
+  private static CharSequence getNameWithInitialsBolded(String query, String name) {
+    SpannableString boldedInitials = new SpannableString(name);
+    name = name.toLowerCase();
+    int initialsBolded = 0;
+    int nameIndex = -1;
+
+    while (++nameIndex < name.length() && initialsBolded < query.length()) {
+      if ((nameIndex == 0 || name.charAt(nameIndex - 1) == ' ')
+          && QueryFilteringUtil.getDigit(name.charAt(nameIndex)) == query.charAt(initialsBolded)) {
+        boldedInitials.setSpan(
+            new StyleSpan(Typeface.BOLD),
+            nameIndex,
+            nameIndex + 1,
+            Spanned.SPAN_INCLUSIVE_INCLUSIVE);
+        initialsBolded++;
+      }
+    }
+    return boldedInitials;
+  }
+
+  /**
+   * Compares a number and a query and returns a {@link CharSequence} with bolded characters.
+   *
+   * <ul>
+   *   <li>"123" would bold "(650)34[1-23]24"
+   *   <li>"123" would bold "+1([123])111-2222
+   * </ul>
+   *
+   * @param query containing only numbers and phone number related characters "(", ")", "-", "+"
+   * @param number phone number of a contact that the query will compare to.
+   * @return number with query bolded if query can be found in the number.
+   */
+  public static CharSequence getNumberWithQueryBolded(
+      @Nullable String query, @NonNull String number) {
+    if (TextUtils.isEmpty(query) || !QueryFilteringUtil.numberMatchesNumberQuery(query, number)) {
+      return number;
+    }
+
+    int index = QueryFilteringUtil.indexOfQueryNonDigitsIgnored(query, number);
+    int boldedCharacters = query.length();
+
+    for (char c : query.toCharArray()) {
+      if (!Character.isDigit(c)) {
+        boldedCharacters--;
+      }
+    }
+
+    for (int i = 0; i < index + boldedCharacters; i++) {
+      if (!Character.isDigit(number.charAt(i))) {
+        if (i <= index) {
+          index++;
+        } else {
+          boldedCharacters++;
+        }
+      }
+    }
+    return getBoldedString(number, index, boldedCharacters);
+  }
+
+  private static SpannableString getBoldedString(String s, int index, int numBolded) {
+    SpannableString span = new SpannableString(s);
+    span.setSpan(
+        new StyleSpan(Typeface.BOLD), index, index + numBolded, Spanned.SPAN_INCLUSIVE_EXCLUSIVE);
+    return span;
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java b/java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java
new file mode 100644
index 0000000..b23315b
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/common/QueryFilteringUtil.java
@@ -0,0 +1,141 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.searchfragment.common;
+
+import android.support.annotation.NonNull;
+import android.telephony.PhoneNumberUtils;
+import android.text.TextUtils;
+import java.util.regex.Pattern;
+
+/** Utility class for filtering, comparing and handling strings and queries. */
+public class QueryFilteringUtil {
+
+  /** Matches strings with "-", "(", ")", 2-9 of at least length one. */
+  static final Pattern T9_PATTERN = Pattern.compile("[\\-()2-9]+");
+
+  /**
+   * @return true if the query is of T9 format and the name's T9 representation belongs to the
+   *     query; false otherwise.
+   */
+  public static boolean nameMatchesT9Query(String query, String name) {
+    if (!T9_PATTERN.matcher(query).matches()) {
+      return false;
+    }
+
+    // Substring
+    if (indexOfQueryNonDigitsIgnored(query, getT9Representation(name)) != -1) {
+      return true;
+    }
+
+    // Check matches initials
+    // TODO investigate faster implementation
+    query = digitsOnly(query);
+    int queryIndex = 0;
+
+    String[] names = name.toLowerCase().split("\\s");
+    for (int i = 0; i < names.length && queryIndex < query.length(); i++) {
+      if (TextUtils.isEmpty(names[i])) {
+        continue;
+      }
+
+      if (getDigit(names[i].charAt(0)) == query.charAt(queryIndex)) {
+        queryIndex++;
+      }
+    }
+
+    return queryIndex == query.length();
+  }
+
+  /** @return true if the number belongs to the query. */
+  public static boolean numberMatchesNumberQuery(String query, String number) {
+    return PhoneNumberUtils.isGlobalPhoneNumber(query)
+        && indexOfQueryNonDigitsIgnored(query, number) != -1;
+  }
+
+  /**
+   * Checks if query is contained in number while ignoring all characters in both that are not
+   * digits (i.e. {@link Character#isDigit(char)} returns false).
+   *
+   * @return index where query is found with all non-digits removed, -1 if it's not found.
+   */
+  static int indexOfQueryNonDigitsIgnored(@NonNull String query, @NonNull String number) {
+    return digitsOnly(number).indexOf(digitsOnly(query));
+  }
+
+  // Returns string with letters replaced with their T9 representation.
+  static String getT9Representation(String s) {
+    StringBuilder builder = new StringBuilder(s.length());
+    for (char c : s.toLowerCase().toCharArray()) {
+      builder.append(getDigit(c));
+    }
+    return builder.toString();
+  }
+
+  /** @return String s with only digits recognized by Character#isDigit() remaining */
+  public static String digitsOnly(String s) {
+    StringBuilder sb = new StringBuilder();
+    for (int i = 0; i < s.length(); i++) {
+      char c = s.charAt(i);
+      if (Character.isDigit(c)) {
+        sb.append(c);
+      }
+    }
+    return sb.toString();
+  }
+
+  // Returns the T9 representation of a lower case character, otherwise returns the character.
+  static char getDigit(char c) {
+    switch (c) {
+      case 'a':
+      case 'b':
+      case 'c':
+        return '2';
+      case 'd':
+      case 'e':
+      case 'f':
+        return '3';
+      case 'g':
+      case 'h':
+      case 'i':
+        return '4';
+      case 'j':
+      case 'k':
+      case 'l':
+        return '5';
+      case 'm':
+      case 'n':
+      case 'o':
+        return '6';
+      case 'p':
+      case 'q':
+      case 'r':
+      case 's':
+        return '7';
+      case 't':
+      case 'u':
+      case 'v':
+        return '8';
+      case 'w':
+      case 'x':
+      case 'y':
+      case 'z':
+        return '9';
+      default:
+        return c;
+    }
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/common/res/layout/search_contact_row.xml b/java/com/android/dialer/searchfragment/common/res/layout/search_contact_row.xml
new file mode 100644
index 0000000..dd871af
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/common/res/layout/search_contact_row.xml
@@ -0,0 +1,69 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+<RelativeLayout
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:orientation="horizontal"
+    android:layout_width="match_parent"
+    android:layout_height="@dimen/search_row_height"
+    android:paddingStart="8dp"
+    android:paddingEnd="8dp"
+    android:background="?android:attr/selectableItemBackground">
+
+  <QuickContactBadge
+      android:id="@+id/photo"
+      android:layout_width="@dimen/search_row_height"
+      android:layout_height="@dimen/search_row_height"
+      android:padding="@dimen/search_photo_padding"
+      android:clickable="false"/>
+
+  <LinearLayout
+      android:orientation="vertical"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_toEndOf="@+id/photo"
+      android:layout_toStartOf="@+id/call_to_action"
+      android:layout_centerVertical="true">
+
+    <TextView
+        android:id="@+id/primary"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:paddingStart="@dimen/search_text_padding_start"
+        android:gravity="center_vertical|start"
+        android:fontFamily="sans-serif"
+        style="@style/PrimaryText"/>
+
+    <TextView
+        android:id="@+id/secondary"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:paddingStart="@dimen/search_text_padding_start"
+        android:gravity="center_vertical|start"
+        android:fontFamily="sans-serif"
+        style="@style/SecondaryText"/>
+  </LinearLayout>
+
+  <ImageView
+      android:id="@+id/call_to_action"
+      android:layout_width="@dimen/search_row_height"
+      android:layout_height="@dimen/search_row_height"
+      android:layout_alignParentEnd="true"
+      android:padding="@dimen/call_to_action_padding"
+      android:tint="@color/dialer_secondary_text_color"
+      android:visibility="gone"
+      android:scaleType="center"/>
+</RelativeLayout>
\ No newline at end of file
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/common/res/values/dimens.xml
similarity index 64%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/common/res/values/dimens.xml
index ecf704e..d5459dd 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/common/res/values/dimens.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +14,10 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+<resources>
+  <dimen name="search_row_height">56dp</dimen>
+  <dimen name="search_photo_padding">8dp</dimen>
+  <dimen name="call_to_action_padding">8dp</dimen>
+  <dimen name="search_text_padding_start">16dp</dimen>
+  <dimen name="new_search_text_size">16sp</dimen>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/searchfragment/cp2/SearchContactCursor.java b/java/com/android/dialer/searchfragment/cp2/SearchContactCursor.java
new file mode 100644
index 0000000..a2ef58c
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/cp2/SearchContactCursor.java
@@ -0,0 +1,392 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.searchfragment.cp2;
+
+import android.content.ContentResolver;
+import android.database.CharArrayBuffer;
+import android.database.ContentObserver;
+import android.database.Cursor;
+import android.database.DataSetObserver;
+import android.net.Uri;
+import android.os.Bundle;
+import android.support.annotation.IntDef;
+import android.support.annotation.Nullable;
+import android.text.TextUtils;
+import com.android.dialer.searchfragment.common.Projections;
+import com.android.dialer.searchfragment.common.QueryFilteringUtil;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Wrapper for a cursor returned by {@link SearchContactsCursorLoader}.
+ *
+ * <p>This cursor removes duplicate phone numbers associated with the same contact and can filter
+ * contacts based on a query by calling {@link #filter(String)}.
+ */
+public final class SearchContactCursor implements Cursor {
+
+  private final Cursor cursor;
+  // List of cursor ids that are valid for displaying after filtering.
+  private final List<Integer> queryFilteredPositions = new ArrayList<>();
+
+  private int currentPosition = 0;
+
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({
+    Qualification.NUMBERS_ARE_NOT_DUPLICATES,
+    Qualification.NEW_NUMBER_IS_MORE_QUALIFIED,
+    Qualification.CURRENT_MORE_QUALIFIED
+  })
+  private @interface Qualification {
+    /** Numbers are not duplicates (i.e. neither is more qualified than the other). */
+    int NUMBERS_ARE_NOT_DUPLICATES = 0;
+    /** Number are duplicates and new number is more qualified than the existing number. */
+    int NEW_NUMBER_IS_MORE_QUALIFIED = 1;
+    /** Numbers are duplicates but current/existing number is more qualified than new number. */
+    int CURRENT_MORE_QUALIFIED = 2;
+  }
+
+  /**
+   * @param cursor with projection {@link Projections#PHONE_PROJECTION}.
+   * @param query to filter cursor results.
+   */
+  public SearchContactCursor(Cursor cursor, @Nullable String query) {
+    // TODO investigate copying this into a MatrixCursor and holding in memory
+    this.cursor = cursor;
+    filter(query);
+  }
+
+  /**
+   * Filters out contacts that do not match the query.
+   *
+   * <p>The query can have at least 1 of 3 forms:
+   *
+   * <ul>
+   *   <li>A phone number
+   *   <li>A T9 representation of a name (matches {@link QueryFilteringUtil#T9_PATTERN}).
+   *   <li>A name
+   * </ul>
+   *
+   * <p>A contact is considered a match if:
+   *
+   * <ul>
+   *   <li>Its phone number contains the phone number query
+   *   <li>Its name represented in T9 contains the T9 query
+   *   <li>Its name contains the query
+   * </ul>
+   */
+  public void filter(@Nullable String query) {
+    if (query == null) {
+      query = "";
+    }
+    queryFilteredPositions.clear();
+
+    // On some devices, contacts have multiple rows with identical phone numbers. These numbers are
+    // considered duplicates. Since the order might not be guaranteed, we compare all of the numbers
+    // and hold onto the most qualified one as the one we want to display to the user.
+    // See #getQualification for details on how qualification is determined.
+    int previousMostQualifiedPosition = 0;
+    String previousName = "";
+    String previousMostQualifiedNumber = "";
+
+    query = query.toLowerCase();
+    cursor.moveToPosition(-1);
+
+    while (cursor.moveToNext()) {
+      int position = cursor.getPosition();
+      String currentNumber = cursor.getString(Projections.PHONE_NUMBER);
+      String currentName = cursor.getString(Projections.PHONE_DISPLAY_NAME);
+
+      if (!previousName.equals(currentName)) {
+        previousName = currentName;
+        previousMostQualifiedNumber = currentNumber;
+        previousMostQualifiedPosition = position;
+      } else {
+        // Since the contact name is the same, check if this number is a duplicate
+        switch (getQualification(currentNumber, previousMostQualifiedNumber)) {
+          case Qualification.CURRENT_MORE_QUALIFIED:
+            // Number is a less qualified duplicate, ignore it.
+            continue;
+          case Qualification.NEW_NUMBER_IS_MORE_QUALIFIED:
+            // If number wasn't filtered out before, remove it and add it's more qualified version.
+            if (queryFilteredPositions.contains(previousMostQualifiedPosition)) {
+              queryFilteredPositions.remove(previousMostQualifiedPosition);
+              queryFilteredPositions.add(position);
+            }
+            previousMostQualifiedNumber = currentNumber;
+            previousMostQualifiedPosition = position;
+            continue;
+          case Qualification.NUMBERS_ARE_NOT_DUPLICATES:
+          default:
+            previousMostQualifiedNumber = currentNumber;
+            previousMostQualifiedPosition = position;
+        }
+      }
+
+      if (TextUtils.isEmpty(query)
+          || QueryFilteringUtil.nameMatchesT9Query(query, previousName)
+          || QueryFilteringUtil.numberMatchesNumberQuery(query, previousMostQualifiedNumber)
+          || previousName.contains(query)) {
+        queryFilteredPositions.add(previousMostQualifiedPosition);
+      }
+    }
+    currentPosition = 0;
+    cursor.moveToFirst();
+  }
+
+  /**
+   * @param number that may or may not be more qualified than the existing most qualified number
+   * @param mostQualifiedNumber currently most qualified number associated with same contact
+   * @return {@link Qualification} where the more qualified number is the number with the most
+   *     digits. If the digits are the same, the number with the most formatting is more qualified.
+   */
+  private @Qualification int getQualification(String number, String mostQualifiedNumber) {
+    // Ignore formatting
+    String numberDigits = QueryFilteringUtil.digitsOnly(number);
+    String qualifiedNumberDigits = QueryFilteringUtil.digitsOnly(mostQualifiedNumber);
+
+    // If the numbers are identical, return version with more formatting
+    if (qualifiedNumberDigits.equals(numberDigits)) {
+      if (mostQualifiedNumber.length() >= number.length()) {
+        return Qualification.CURRENT_MORE_QUALIFIED;
+      } else {
+        return Qualification.NEW_NUMBER_IS_MORE_QUALIFIED;
+      }
+    }
+
+    // If one number is a suffix of another, then return the longer one.
+    // If they are equal, then return the current most qualified number.
+    if (qualifiedNumberDigits.endsWith(numberDigits)) {
+      return Qualification.CURRENT_MORE_QUALIFIED;
+    }
+    if (numberDigits.endsWith(qualifiedNumberDigits)) {
+      return Qualification.NEW_NUMBER_IS_MORE_QUALIFIED;
+    }
+    return Qualification.NUMBERS_ARE_NOT_DUPLICATES;
+  }
+
+  @Override
+  public boolean moveToPosition(int position) {
+    currentPosition = position;
+    return currentPosition < getCount()
+        && cursor.moveToPosition(queryFilteredPositions.get(currentPosition));
+  }
+
+  @Override
+  public boolean move(int offset) {
+    currentPosition += offset;
+    return moveToPosition(currentPosition);
+  }
+
+  @Override
+  public int getCount() {
+    return queryFilteredPositions.size();
+  }
+
+  @Override
+  public boolean isFirst() {
+    return currentPosition == 0;
+  }
+
+  @Override
+  public boolean isLast() {
+    return currentPosition == getCount() - 1;
+  }
+
+  @Override
+  public int getPosition() {
+    return currentPosition;
+  }
+
+  @Override
+  public boolean moveToFirst() {
+    return moveToPosition(0);
+  }
+
+  @Override
+  public boolean moveToLast() {
+    return moveToPosition(getCount() - 1);
+  }
+
+  @Override
+  public boolean moveToNext() {
+    return moveToPosition(++currentPosition);
+  }
+
+  @Override
+  public boolean moveToPrevious() {
+    return moveToPosition(--currentPosition);
+  }
+
+  // Methods below simply call the corresponding method in cursor.
+  @Override
+  public boolean isBeforeFirst() {
+    return cursor.isBeforeFirst();
+  }
+
+  @Override
+  public boolean isAfterLast() {
+    return cursor.isAfterLast();
+  }
+
+  @Override
+  public int getColumnIndex(String columnName) {
+    return cursor.getColumnIndex(columnName);
+  }
+
+  @Override
+  public int getColumnIndexOrThrow(String columnName) {
+    return cursor.getColumnIndexOrThrow(columnName);
+  }
+
+  @Override
+  public String getColumnName(int columnIndex) {
+    return cursor.getColumnName(columnIndex);
+  }
+
+  @Override
+  public String[] getColumnNames() {
+    return cursor.getColumnNames();
+  }
+
+  @Override
+  public int getColumnCount() {
+    return cursor.getColumnCount();
+  }
+
+  @Override
+  public byte[] getBlob(int columnIndex) {
+    return cursor.getBlob(columnIndex);
+  }
+
+  @Override
+  public String getString(int columnIndex) {
+    return cursor.getString(columnIndex);
+  }
+
+  @Override
+  public void copyStringToBuffer(int columnIndex, CharArrayBuffer buffer) {
+    cursor.copyStringToBuffer(columnIndex, buffer);
+  }
+
+  @Override
+  public short getShort(int columnIndex) {
+    return cursor.getShort(columnIndex);
+  }
+
+  @Override
+  public int getInt(int columnIndex) {
+    return cursor.getInt(columnIndex);
+  }
+
+  @Override
+  public long getLong(int columnIndex) {
+    return cursor.getLong(columnIndex);
+  }
+
+  @Override
+  public float getFloat(int columnIndex) {
+    return cursor.getFloat(columnIndex);
+  }
+
+  @Override
+  public double getDouble(int columnIndex) {
+    return cursor.getDouble(columnIndex);
+  }
+
+  @Override
+  public int getType(int columnIndex) {
+    return cursor.getType(columnIndex);
+  }
+
+  @Override
+  public boolean isNull(int columnIndex) {
+    return cursor.isNull(columnIndex);
+  }
+
+  @Override
+  public void deactivate() {
+    cursor.deactivate();
+  }
+
+  @Override
+  public boolean requery() {
+    return cursor.requery();
+  }
+
+  @Override
+  public void close() {
+    cursor.close();
+  }
+
+  @Override
+  public boolean isClosed() {
+    return cursor.isClosed();
+  }
+
+  @Override
+  public void registerContentObserver(ContentObserver observer) {
+    cursor.registerContentObserver(observer);
+  }
+
+  @Override
+  public void unregisterContentObserver(ContentObserver observer) {
+    cursor.unregisterContentObserver(observer);
+  }
+
+  @Override
+  public void registerDataSetObserver(DataSetObserver observer) {
+    cursor.registerDataSetObserver(observer);
+  }
+
+  @Override
+  public void unregisterDataSetObserver(DataSetObserver observer) {
+    cursor.unregisterDataSetObserver(observer);
+  }
+
+  @Override
+  public void setNotificationUri(ContentResolver cr, Uri uri) {
+    cursor.setNotificationUri(cr, uri);
+  }
+
+  @Override
+  public Uri getNotificationUri() {
+    return cursor.getNotificationUri();
+  }
+
+  @Override
+  public boolean getWantsAllOnMoveCalls() {
+    return cursor.getWantsAllOnMoveCalls();
+  }
+
+  @Override
+  public void setExtras(Bundle extras) {
+    cursor.setExtras(extras);
+  }
+
+  @Override
+  public Bundle getExtras() {
+    return cursor.getExtras();
+  }
+
+  @Override
+  public Bundle respond(Bundle extras) {
+    return cursor.respond(extras);
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/cp2/SearchContactViewHolder.java b/java/com/android/dialer/searchfragment/cp2/SearchContactViewHolder.java
new file mode 100644
index 0000000..5f06b59
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/cp2/SearchContactViewHolder.java
@@ -0,0 +1,204 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.searchfragment.cp2;
+
+import android.content.Context;
+import android.content.res.Resources;
+import android.database.Cursor;
+import android.net.Uri;
+import android.provider.ContactsContract.CommonDataKinds.Phone;
+import android.provider.ContactsContract.Contacts;
+import android.support.annotation.IntDef;
+import android.support.v7.widget.RecyclerView.ViewHolder;
+import android.text.TextUtils;
+import android.view.View;
+import android.view.View.OnClickListener;
+import android.widget.ImageView;
+import android.widget.QuickContactBadge;
+import android.widget.TextView;
+import com.android.contacts.common.ContactPhotoManager;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
+import com.android.dialer.callintent.CallInitiationType.Type;
+import com.android.dialer.callintent.CallIntentBuilder;
+import com.android.dialer.common.Assert;
+import com.android.dialer.searchfragment.common.Projections;
+import com.android.dialer.searchfragment.common.QueryBoldingUtil;
+import com.android.dialer.searchfragment.common.R;
+import com.android.dialer.telecom.TelecomUtil;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/** ViewHolder for a contact row. */
+public final class SearchContactViewHolder extends ViewHolder implements OnClickListener {
+
+  /** IntDef for the different types of actions that can be shown. */
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({CallToAction.NONE, CallToAction.VIDEO_CALL, CallToAction.SHARE_AND_CALL})
+  @interface CallToAction {
+    int NONE = 0;
+    int VIDEO_CALL = 1;
+    int SHARE_AND_CALL = 2;
+  }
+
+  private final QuickContactBadge photo;
+  private final TextView nameOrNumberView;
+  private final TextView numberView;
+  private final ImageView callToActionView;
+  private final Context context;
+
+  private String number;
+  private @CallToAction int currentAction;
+
+  public SearchContactViewHolder(View view) {
+    super(view);
+    view.setOnClickListener(this);
+    photo = view.findViewById(R.id.photo);
+    nameOrNumberView = view.findViewById(R.id.primary);
+    numberView = view.findViewById(R.id.secondary);
+    callToActionView = view.findViewById(R.id.call_to_action);
+    context = view.getContext();
+  }
+
+  /**
+   * Binds the ViewHolder with a cursor from {@link SearchContactsCursorLoader} with the data found
+   * at the cursors set position.
+   */
+  public void bind(Cursor cursor, String query) {
+    number = cursor.getString(Projections.PHONE_NUMBER);
+    String name = cursor.getString(Projections.PHONE_DISPLAY_NAME);
+    String label = getLabel(context.getResources(), cursor);
+    String secondaryInfo =
+        TextUtils.isEmpty(label)
+            ? number
+            : context.getString(
+                com.android.contacts.common.R.string.call_subject_type_and_number, label, number);
+
+    nameOrNumberView.setText(QueryBoldingUtil.getNameWithQueryBolded(query, name));
+    numberView.setText(QueryBoldingUtil.getNumberWithQueryBolded(query, secondaryInfo));
+    setCallToAction(cursor);
+
+    if (shouldShowPhoto(cursor, name)) {
+      nameOrNumberView.setVisibility(View.VISIBLE);
+      photo.setVisibility(View.VISIBLE);
+      String photoUri = cursor.getString(Projections.PHONE_PHOTO_URI);
+      ContactPhotoManager.getInstance(context)
+          .loadDialerThumbnailOrPhoto(
+              photo,
+              getContactUri(cursor),
+              cursor.getLong(Projections.PHONE_PHOTO_ID),
+              photoUri == null ? null : Uri.parse(photoUri),
+              name,
+              LetterTileDrawable.TYPE_DEFAULT);
+    } else {
+      nameOrNumberView.setVisibility(View.GONE);
+      photo.setVisibility(View.INVISIBLE);
+    }
+  }
+
+  private boolean shouldShowPhoto(Cursor cursor, String currentName) {
+    int currentPosition = cursor.getPosition();
+    if (currentPosition == 0) {
+      return true;
+    } else {
+      cursor.moveToPosition(currentPosition - 1);
+      String previousName = cursor.getString(Projections.PHONE_DISPLAY_NAME);
+      cursor.moveToPosition(currentPosition);
+      return !currentName.equals(previousName);
+    }
+  }
+
+  private static Uri getContactUri(Cursor cursor) {
+    long contactId = cursor.getLong(Projections.PHONE_ID);
+    String lookupKey = cursor.getString(Projections.PHONE_LOOKUP_KEY);
+    return Contacts.getLookupUri(contactId, lookupKey);
+  }
+
+  // TODO: handle CNAP and cequint types.
+  // TODO: unify this into a utility method with CallLogAdapter#getNumberType
+  private static String getLabel(Resources resources, Cursor cursor) {
+    int numberType = cursor.getInt(Projections.PHONE_TYPE);
+    String numberLabel = cursor.getString(Projections.PHONE_LABEL);
+
+    // Returns empty label instead of "custom" if the custom label is empty.
+    if (numberType == Phone.TYPE_CUSTOM && TextUtils.isEmpty(numberLabel)) {
+      return "";
+    }
+    return (String) Phone.getTypeLabel(resources, numberType, numberLabel);
+  }
+
+  private void setCallToAction(Cursor cursor) {
+    currentAction = getCallToAction(cursor);
+    switch (currentAction) {
+      case CallToAction.NONE:
+        callToActionView.setVisibility(View.GONE);
+        callToActionView.setOnClickListener(null);
+        break;
+      case CallToAction.SHARE_AND_CALL:
+        callToActionView.setVisibility(View.VISIBLE);
+        callToActionView.setImageDrawable(
+            context.getDrawable(com.android.contacts.common.R.drawable.ic_phone_attach));
+        callToActionView.setOnClickListener(this);
+        break;
+      case CallToAction.VIDEO_CALL:
+        callToActionView.setVisibility(View.VISIBLE);
+        callToActionView.setImageDrawable(
+            context.getDrawable(R.drawable.quantum_ic_videocam_white_24));
+        callToActionView.setOnClickListener(this);
+        break;
+      default:
+        throw Assert.createIllegalStateFailException(
+            "Invalid Call to action type: " + currentAction);
+    }
+  }
+
+  private static @CallToAction int getCallToAction(Cursor cursor) {
+    int carrierPresence = cursor.getInt(Projections.PHONE_CARRIER_PRESENCE);
+    if ((carrierPresence & Phone.CARRIER_PRESENCE_VT_CAPABLE) == 1) {
+      return CallToAction.VIDEO_CALL;
+    }
+
+    // TODO: enriched calling
+    return CallToAction.NONE;
+  }
+
+  @Override
+  public void onClick(View view) {
+    if (view == callToActionView) {
+      switch (currentAction) {
+        case CallToAction.SHARE_AND_CALL:
+          callToActionView.setVisibility(View.VISIBLE);
+          callToActionView.setImageDrawable(
+              context.getDrawable(com.android.contacts.common.R.drawable.ic_phone_attach));
+          // TODO: open call composer.
+          break;
+        case CallToAction.VIDEO_CALL:
+          callToActionView.setVisibility(View.VISIBLE);
+          callToActionView.setImageDrawable(
+              context.getDrawable(R.drawable.quantum_ic_videocam_white_24));
+          // TODO: place a video call
+          break;
+        case CallToAction.NONE:
+        default:
+          throw Assert.createIllegalStateFailException(
+              "Invalid Call to action type: " + currentAction);
+      }
+    } else {
+      // TODO: set the correct call initiation type.
+      TelecomUtil.placeCall(context, new CallIntentBuilder(number, Type.REGULAR_SEARCH).build());
+    }
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java b/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java
new file mode 100644
index 0000000..c72f28b
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/cp2/SearchContactsCursorLoader.java
@@ -0,0 +1,42 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.searchfragment.cp2;
+
+import android.content.Context;
+import android.content.CursorLoader;
+import android.database.Cursor;
+import android.provider.ContactsContract.CommonDataKinds.Phone;
+import com.android.dialer.searchfragment.common.Projections;
+
+/** Cursor Loader for CP2 contacts. */
+public final class SearchContactsCursorLoader extends CursorLoader {
+
+  public SearchContactsCursorLoader(Context context) {
+    super(
+        context,
+        Phone.CONTENT_URI,
+        Projections.PHONE_PROJECTION,
+        null,
+        null,
+        Phone.SORT_KEY_PRIMARY + " ASC");
+  }
+
+  @Override
+  public Cursor loadInBackground() {
+    return new SearchContactCursor(super.loadInBackground(), null);
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/list/AndroidManifest.xml b/java/com/android/dialer/searchfragment/list/AndroidManifest.xml
new file mode 100644
index 0000000..e0890cc
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/AndroidManifest.xml
@@ -0,0 +1,16 @@
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<manifest  package="com.android.dialer.searchfragment.list"/>
\ No newline at end of file
diff --git a/java/com/android/dialer/searchfragment/list/HeaderViewHolder.java b/java/com/android/dialer/searchfragment/list/HeaderViewHolder.java
new file mode 100644
index 0000000..dd35b13
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/HeaderViewHolder.java
@@ -0,0 +1,36 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.searchfragment.list;
+
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+import android.widget.TextView;
+
+/** ViewHolder for header rows in {@link NewSearchFragment}. */
+final class HeaderViewHolder extends RecyclerView.ViewHolder {
+
+  private final TextView header;
+
+  HeaderViewHolder(View view) {
+    super(view);
+    header = view.findViewById(R.id.header);
+  }
+
+  public void setHeader(String header) {
+    this.header.setText(header);
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/list/NewSearchFragment.java b/java/com/android/dialer/searchfragment/list/NewSearchFragment.java
new file mode 100644
index 0000000..fcc87c3
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/NewSearchFragment.java
@@ -0,0 +1,125 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.searchfragment.list;
+
+import android.app.Fragment;
+import android.app.LoaderManager.LoaderCallbacks;
+import android.content.Loader;
+import android.database.Cursor;
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v7.widget.LinearLayoutManager;
+import android.support.v7.widget.RecyclerView;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import com.android.contacts.common.extensions.PhoneDirectoryExtenderAccessor;
+import com.android.dialer.common.concurrent.ThreadUtil;
+import com.android.dialer.searchfragment.cp2.SearchContactsCursorLoader;
+import com.android.dialer.searchfragment.nearbyplaces.NearbyPlacesCursorLoader;
+
+/** Fragment used for searching contacts. */
+public final class NewSearchFragment extends Fragment implements LoaderCallbacks<Cursor> {
+
+  // Since some of our queries can generate network requests, we should delay them until the user
+  // stops typing to prevent generating too much network traffic.
+  private static final int NETWORK_SEARCH_DELAY_MILLIS = 300;
+
+  private static final int CONTACTS_LOADER_ID = 0;
+  private static final int NEARBY_PLACES_ID = 1;
+
+  private RecyclerView recyclerView;
+  private SearchAdapter adapter;
+  private String query;
+
+  private final Runnable loadNearbyPlacesRunnable =
+      () -> getLoaderManager().restartLoader(NEARBY_PLACES_ID, null, this);
+
+  @Nullable
+  @Override
+  public View onCreateView(
+      LayoutInflater inflater, @Nullable ViewGroup parent, @Nullable Bundle bundle) {
+    getLoaderManager().initLoader(0, null, this);
+    View view = inflater.inflate(R.layout.fragment_search, parent, false);
+    adapter = new SearchAdapter(getContext());
+    recyclerView = view.findViewById(R.id.recycler_view);
+    recyclerView.setLayoutManager(new LinearLayoutManager(getContext()));
+    recyclerView.setAdapter(adapter);
+
+    getLoaderManager().initLoader(CONTACTS_LOADER_ID, null, this);
+    loadNearbyPlacesCursor();
+    return view;
+  }
+
+  @Override
+  public Loader<Cursor> onCreateLoader(int id, Bundle bundle) {
+    // TODO add enterprise loader
+    if (id == CONTACTS_LOADER_ID) {
+      return new SearchContactsCursorLoader(getContext());
+    } else if (id == NEARBY_PLACES_ID) {
+      return new NearbyPlacesCursorLoader(getContext(), query);
+    } else {
+      throw new IllegalStateException("Invalid loader id: " + id);
+    }
+  }
+
+  @Override
+  public void onLoadFinished(Loader<Cursor> loader, Cursor cursor) {
+    if (loader instanceof SearchContactsCursorLoader) {
+      adapter.setContactsCursor(cursor);
+    } else if (loader instanceof NearbyPlacesCursorLoader) {
+      adapter.setNearbyPlacesCursor(cursor);
+    } else {
+      throw new IllegalStateException("Invalid loader: " + loader);
+    }
+  }
+
+  @Override
+  public void onLoaderReset(Loader<Cursor> loader) {
+    adapter.clear();
+    recyclerView.setAdapter(null);
+  }
+
+  public void setQuery(String query) {
+    this.query = query;
+    if (adapter != null) {
+      adapter.setQuery(query);
+      loadNearbyPlacesCursor();
+    }
+  }
+
+  @Override
+  public void onDestroy() {
+    super.onDestroy();
+    // close adapters
+    adapter.setNearbyPlacesCursor(null);
+    adapter.setContactsCursor(null);
+    ThreadUtil.getUiThreadHandler().removeCallbacks(loadNearbyPlacesRunnable);
+  }
+
+  private void loadNearbyPlacesCursor() {
+    // Cancel existing load if one exists.
+    ThreadUtil.getUiThreadHandler().removeCallbacks(loadNearbyPlacesRunnable);
+
+    // If nearby places is not enabled, do not try to load them.
+    if (!PhoneDirectoryExtenderAccessor.get(getContext()).isEnabled(getContext())) {
+      return;
+    }
+    ThreadUtil.getUiThreadHandler()
+        .postDelayed(loadNearbyPlacesRunnable, NETWORK_SEARCH_DELAY_MILLIS);
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/list/SearchAdapter.java b/java/com/android/dialer/searchfragment/list/SearchAdapter.java
new file mode 100644
index 0000000..023513e
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/SearchAdapter.java
@@ -0,0 +1,108 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.searchfragment.list;
+
+import android.content.Context;
+import android.database.Cursor;
+import android.support.v7.widget.RecyclerView;
+import android.support.v7.widget.RecyclerView.ViewHolder;
+import android.view.LayoutInflater;
+import android.view.ViewGroup;
+import com.android.dialer.common.Assert;
+import com.android.dialer.searchfragment.cp2.SearchContactViewHolder;
+import com.android.dialer.searchfragment.list.SearchCursorManager.RowType;
+import com.android.dialer.searchfragment.nearbyplaces.NearbyPlaceViewHolder;
+
+/** RecyclerView adapter for {@link NewSearchFragment}. */
+class SearchAdapter extends RecyclerView.Adapter<ViewHolder> {
+
+  private final SearchCursorManager searchCursorManager;
+  private final Context context;
+
+  private String query;
+
+  SearchAdapter(Context context) {
+    searchCursorManager = new SearchCursorManager();
+    this.context = context;
+  }
+
+  @Override
+  public ViewHolder onCreateViewHolder(ViewGroup root, @RowType int rowType) {
+    switch (rowType) {
+      case RowType.CONTACT_ROW:
+        return new SearchContactViewHolder(
+            LayoutInflater.from(context).inflate(R.layout.search_contact_row, root, false));
+      case RowType.NEARBY_PLACES_ROW:
+        return new NearbyPlaceViewHolder(
+            LayoutInflater.from(context).inflate(R.layout.search_contact_row, root, false));
+      case RowType.DIRECTORY_HEADER:
+      case RowType.NEARBY_PLACES_HEADER:
+        return new HeaderViewHolder(
+            LayoutInflater.from(context).inflate(R.layout.header_layout, root, false));
+      case RowType.DIRECTORY_ROW: // TODO: add directory rows to search
+      case RowType.INVALID:
+      default:
+        throw Assert.createIllegalStateFailException("Invalid RowType: " + rowType);
+    }
+  }
+
+  @Override
+  public @RowType int getItemViewType(int position) {
+    return searchCursorManager.getRowType(position);
+  }
+
+  @Override
+  public void onBindViewHolder(ViewHolder holder, int position) {
+    if (holder instanceof SearchContactViewHolder) {
+      Cursor cursor = searchCursorManager.getCursor(position);
+      ((SearchContactViewHolder) holder).bind(cursor, query);
+    } else if (holder instanceof NearbyPlaceViewHolder) {
+      Cursor cursor = searchCursorManager.getCursor(position);
+      ((NearbyPlaceViewHolder) holder).bind(cursor, query);
+    } else if (holder instanceof HeaderViewHolder) {
+      String header = context.getString(searchCursorManager.getHeaderText(position));
+      ((HeaderViewHolder) holder).setHeader(header);
+    } else {
+      throw Assert.createIllegalStateFailException("Invalid ViewHolder: " + holder);
+    }
+  }
+
+  void setContactsCursor(Cursor cursor) {
+    searchCursorManager.setContactsCursor(cursor);
+    notifyDataSetChanged();
+  }
+
+  void clear() {
+    searchCursorManager.clear();
+  }
+
+  @Override
+  public int getItemCount() {
+    return searchCursorManager.getCount();
+  }
+
+  public void setQuery(String query) {
+    this.query = query;
+    searchCursorManager.setQuery(query);
+    notifyDataSetChanged();
+  }
+
+  public void setNearbyPlacesCursor(Cursor nearbyPlacesCursor) {
+    searchCursorManager.setNearbyPlacesCursor(nearbyPlacesCursor);
+    notifyDataSetChanged();
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/list/SearchCursorManager.java b/java/com/android/dialer/searchfragment/list/SearchCursorManager.java
new file mode 100644
index 0000000..216a9ad
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/list/SearchCursorManager.java
@@ -0,0 +1,273 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.searchfragment.list;
+
+import android.database.Cursor;
+import android.support.annotation.IntDef;
+import android.support.annotation.StringRes;
+import com.android.dialer.common.Assert;
+import com.android.dialer.searchfragment.cp2.SearchContactCursor;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/**
+ * Manages all of the cursors needed for {@link SearchAdapter}.
+ *
+ * <p>This class accepts three cursors:
+ *
+ * <ul>
+ *   <li>A contacts cursor {@link #setContactsCursor(Cursor)}
+ *   <li>A google search results cursor {@link #setNearbyPlacesCursor(Cursor)}
+ *   <li>A work directory cursor {@link #setCorpDirectoryCursor(Cursor)}
+ * </ul>
+ *
+ * <p>The key purpose of this class is to compose three aforementioned cursors together to function
+ * as one cursor. The key methods needed to utilize this class as a cursor are:
+ *
+ * <ul>
+ *   <li>{@link #getCursor(int)}
+ *   <li>{@link #getCount()}
+ *   <li>{@link #getRowType(int)}
+ * </ul>
+ */
+final class SearchCursorManager {
+
+  /** IntDef for the different types of rows that can be shown when searching. */
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({
+    SearchCursorManager.RowType.INVALID,
+    SearchCursorManager.RowType.CONTACT_ROW,
+    SearchCursorManager.RowType.NEARBY_PLACES_HEADER,
+    SearchCursorManager.RowType.NEARBY_PLACES_ROW,
+    SearchCursorManager.RowType.DIRECTORY_HEADER,
+    SearchCursorManager.RowType.DIRECTORY_ROW
+  })
+  @interface RowType {
+    int INVALID = 0;
+    /** A row containing contact information for contacts stored locally on device. */
+    int CONTACT_ROW = 1;
+    /** Header to mark the end of contact rows and start of nearby places rows. */
+    int NEARBY_PLACES_HEADER = 2;
+    /** A row containing nearby places information/search results. */
+    int NEARBY_PLACES_ROW = 3;
+    /** Header to mark the end of the previous row set and start of directory rows. */
+    int DIRECTORY_HEADER = 4;
+    /** A row containing contact information for contacts stored externally in corp directories. */
+    int DIRECTORY_ROW = 5;
+  }
+
+  private Cursor contactsCursor = null;
+  private Cursor nearbyPlacesCursor = null;
+  private Cursor corpDirectoryCursor = null;
+
+  void setContactsCursor(Cursor cursor) {
+    if (cursor == contactsCursor) {
+      return;
+    }
+
+    if (contactsCursor != null && !contactsCursor.isClosed()) {
+      contactsCursor.close();
+    }
+
+    if (cursor != null && cursor.getCount() > 0) {
+      contactsCursor = cursor;
+    } else {
+      contactsCursor = null;
+    }
+  }
+
+  void setNearbyPlacesCursor(Cursor cursor) {
+    if (cursor == nearbyPlacesCursor) {
+      return;
+    }
+
+    if (nearbyPlacesCursor != null && !nearbyPlacesCursor.isClosed()) {
+      nearbyPlacesCursor.close();
+    }
+
+    if (cursor != null && cursor.getCount() > 0) {
+      nearbyPlacesCursor = cursor;
+    } else {
+      nearbyPlacesCursor = null;
+    }
+  }
+
+  void setCorpDirectoryCursor(Cursor cursor) {
+    if (cursor == corpDirectoryCursor) {
+      return;
+    }
+
+    if (corpDirectoryCursor != null && !corpDirectoryCursor.isClosed()) {
+      corpDirectoryCursor.close();
+    }
+
+    if (cursor != null && cursor.getCount() > 0) {
+      corpDirectoryCursor = cursor;
+    } else {
+      corpDirectoryCursor = null;
+    }
+  }
+
+  void setQuery(String query) {
+    if (contactsCursor != null) {
+      // TODO: abstract this
+      ((SearchContactCursor) contactsCursor).filter(query);
+    }
+  }
+
+  /** @return the sum of counts of all cursors, including headers. */
+  int getCount() {
+    int count = 0;
+    if (contactsCursor != null) {
+      count += contactsCursor.getCount();
+    }
+
+    if (nearbyPlacesCursor != null) {
+      count++; // header
+      count += nearbyPlacesCursor.getCount();
+    }
+
+    if (corpDirectoryCursor != null) {
+      count++; // header
+      count += corpDirectoryCursor.getCount();
+    }
+
+    return count;
+  }
+
+  @RowType
+  int getRowType(int position) {
+    if (contactsCursor != null) {
+      position -= contactsCursor.getCount();
+
+      if (position < 0) {
+        return SearchCursorManager.RowType.CONTACT_ROW;
+      }
+    }
+
+    if (nearbyPlacesCursor != null) {
+      if (position == 0) {
+        return SearchCursorManager.RowType.NEARBY_PLACES_HEADER;
+      } else {
+        position--; // header
+      }
+
+      position -= nearbyPlacesCursor.getCount();
+
+      if (position < 0) {
+        return SearchCursorManager.RowType.NEARBY_PLACES_ROW;
+      }
+    }
+
+    if (corpDirectoryCursor != null) {
+      if (position == 0) {
+        return SearchCursorManager.RowType.DIRECTORY_HEADER;
+      } else {
+        position--; // header
+      }
+
+      position -= corpDirectoryCursor.getCount();
+
+      if (position < 0) {
+        return SearchCursorManager.RowType.DIRECTORY_ROW;
+      }
+    }
+
+    throw Assert.createIllegalStateFailException("No valid row type.");
+  }
+
+  /**
+   * Gets cursor corresponding to position in coelesced list of search cursors. Callers should
+   * ensure that {@link #getRowType(int)} doesn't correspond to header position, otherwise an
+   * exception will be thrown.
+   *
+   * @param position in coalecsed list of search cursors
+   * @return Cursor moved to position specific to passed in position.
+   */
+  Cursor getCursor(int position) {
+    if (contactsCursor != null) {
+      int count = contactsCursor.getCount();
+
+      if (position - count < 0) {
+        contactsCursor.moveToPosition(position);
+        return contactsCursor;
+      }
+      position -= count;
+    }
+
+    if (nearbyPlacesCursor != null) {
+      Assert.checkArgument(position != 0, "No valid cursor, position is nearby places header.");
+      position--; // header
+      int count = nearbyPlacesCursor.getCount();
+
+      if (position - count < 0) {
+        nearbyPlacesCursor.moveToPosition(position);
+        return nearbyPlacesCursor;
+      }
+      position -= count;
+    }
+
+    if (corpDirectoryCursor != null) {
+      Assert.checkArgument(position != 0, "No valid cursor, position is directory search header.");
+      position--; // header
+      int count = corpDirectoryCursor.getCount();
+
+      if (position - count < 0) {
+        corpDirectoryCursor.moveToPosition(position);
+        return corpDirectoryCursor;
+      }
+      position -= count;
+    }
+
+    throw Assert.createIllegalStateFailException("No valid cursor.");
+  }
+
+  @StringRes
+  int getHeaderText(int position) {
+    @RowType int rowType = getRowType(position);
+    switch (rowType) {
+      case RowType.NEARBY_PLACES_HEADER:
+        return R.string.nearby_places;
+      case RowType.DIRECTORY_HEADER: // TODO
+      case RowType.DIRECTORY_ROW:
+      case RowType.CONTACT_ROW:
+      case RowType.NEARBY_PLACES_ROW:
+      case RowType.INVALID:
+      default:
+        throw Assert.createIllegalStateFailException(
+            "Invalid row type, position " + position + " is rowtype " + rowType);
+    }
+  }
+
+  /** removes all cursors. */
+  void clear() {
+    if (contactsCursor != null) {
+      contactsCursor.close();
+      contactsCursor = null;
+    }
+
+    if (nearbyPlacesCursor != null) {
+      nearbyPlacesCursor.close();
+      nearbyPlacesCursor = null;
+    }
+
+    if (corpDirectoryCursor != null) {
+      corpDirectoryCursor.close();
+      corpDirectoryCursor = null;
+    }
+  }
+}
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/list/res/layout/fragment_search.xml
similarity index 68%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/list/res/layout/fragment_search.xml
index ecf704e..06f2348 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/list/res/layout/fragment_search.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +14,8 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+<android.support.v7.widget.RecyclerView
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/recycler_view"
+    android:layout_width="match_parent"
+    android:layout_height="match_parent"/>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/list/res/layout/header_layout.xml
similarity index 66%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/list/res/layout/header_layout.xml
index ecf704e..36af42e 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/list/res/layout/header_layout.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +14,9 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+<TextView xmlns:android="http://schemas.android.com/apk/res/android"
+    android:id="@+id/header"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:paddingStart="16dp"
+    style="@style/SecondaryText"/>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/AndroidManifest.xml b/java/com/android/dialer/searchfragment/nearbyplaces/AndroidManifest.xml
new file mode 100644
index 0000000..178cd83
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/AndroidManifest.xml
@@ -0,0 +1,16 @@
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~      http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<manifest  package="com.android.dialer.searchfragment.common"/>
\ No newline at end of file
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlaceViewHolder.java b/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlaceViewHolder.java
new file mode 100644
index 0000000..b6e5a90
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlaceViewHolder.java
@@ -0,0 +1,90 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialer.searchfragment.nearbyplaces;
+
+import android.content.Context;
+import android.database.Cursor;
+import android.net.Uri;
+import android.provider.ContactsContract;
+import android.support.v7.widget.RecyclerView;
+import android.view.View;
+import android.widget.QuickContactBadge;
+import android.widget.TextView;
+import com.android.contacts.common.ContactPhotoManager;
+import com.android.contacts.common.lettertiles.LetterTileDrawable;
+import com.android.dialer.callintent.CallInitiationType;
+import com.android.dialer.callintent.CallIntentBuilder;
+import com.android.dialer.searchfragment.common.Projections;
+import com.android.dialer.searchfragment.common.QueryBoldingUtil;
+import com.android.dialer.searchfragment.common.R;
+import com.android.dialer.telecom.TelecomUtil;
+
+/** ViewHolder for a nearby place row. */
+public final class NearbyPlaceViewHolder extends RecyclerView.ViewHolder
+    implements View.OnClickListener {
+
+  private final Context context;
+  private final TextView placeName;
+  private final TextView placeAddress;
+  private final QuickContactBadge photo;
+
+  private String number;
+
+  public NearbyPlaceViewHolder(View view) {
+    super(view);
+    view.setOnClickListener(this);
+    photo = view.findViewById(R.id.photo);
+    placeName = view.findViewById(R.id.primary);
+    placeAddress = view.findViewById(R.id.secondary);
+    context = view.getContext();
+  }
+
+  /**
+   * Binds the ViewHolder with a cursor from {@link NearbyPlacesCursorLoader} with the data found at
+   * the cursors set position.
+   */
+  public void bind(Cursor cursor, String query) {
+    number = cursor.getString(Projections.PHONE_NUMBER);
+    String name = cursor.getString(Projections.PHONE_DISPLAY_NAME);
+    String address = cursor.getString(Projections.PHONE_LABEL);
+
+    placeName.setText(QueryBoldingUtil.getNameWithQueryBolded(query, name));
+    placeAddress.setText(QueryBoldingUtil.getNameWithQueryBolded(query, address));
+
+    String photoUri = cursor.getString(Projections.PHONE_PHOTO_URI);
+    ContactPhotoManager.getInstance(context)
+        .loadDialerThumbnailOrPhoto(
+            photo,
+            getContactUri(cursor),
+            cursor.getLong(Projections.PHONE_PHOTO_ID),
+            photoUri == null ? null : Uri.parse(photoUri),
+            name,
+            LetterTileDrawable.TYPE_DEFAULT);
+  }
+
+  private static Uri getContactUri(Cursor cursor) {
+    long contactId = cursor.getLong(Projections.PHONE_ID);
+    String lookupKey = cursor.getString(Projections.PHONE_LOOKUP_KEY);
+    return ContactsContract.Contacts.getLookupUri(contactId, lookupKey);
+  }
+
+  @Override
+  public void onClick(View v) {
+    TelecomUtil.placeCall(
+        context, new CallIntentBuilder(number, CallInitiationType.Type.REGULAR_SEARCH).build());
+  }
+}
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlacesCursorLoader.java b/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlacesCursorLoader.java
new file mode 100644
index 0000000..9f3193e
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/NearbyPlacesCursorLoader.java
@@ -0,0 +1,43 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.dialer.searchfragment.nearbyplaces;
+
+import android.content.Context;
+import android.content.CursorLoader;
+import android.net.Uri;
+import android.provider.ContactsContract;
+import com.android.contacts.common.extensions.PhoneDirectoryExtenderAccessor;
+import com.android.dialer.searchfragment.common.Projections;
+
+/** Cursor loader for nearby places search results. */
+public final class NearbyPlacesCursorLoader extends CursorLoader {
+
+  private static final String MAX_RESULTS = "3";
+
+  public NearbyPlacesCursorLoader(Context context, String query) {
+    super(context, getContentUri(context, query), Projections.PHONE_PROJECTION, null, null, null);
+  }
+
+  private static Uri getContentUri(Context context, String query) {
+    return PhoneDirectoryExtenderAccessor.get(context)
+        .getContentUri()
+        .buildUpon()
+        .appendPath(query)
+        .appendQueryParameter(ContactsContract.LIMIT_PARAM_KEY, MAX_RESULTS)
+        .build();
+  }
+}
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-af/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-af/strings.xml
index ecf704e..21eb4b1 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-af/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Nabygeleë plekke"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-am/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-am/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-am/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ar/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ar/strings.xml
index ecf704e..d68b4d1 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ar/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"الأماكن المجاورة"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-az/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-az/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-az/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-b+sr+Latn/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-b+sr+Latn/strings.xml
index ecf704e..bb9f06f 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-b+sr+Latn/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Obližnja mesta"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-be/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-be/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-be/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bg/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-bg/strings.xml
index ecf704e..e883953 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bg/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Места в района"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bn/strings.xml
similarity index 60%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-bn/strings.xml
index ecf704e..4bc3fed 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bn/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"আশপাশের জায়গাগুলি"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bs/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-bs/strings.xml
index ecf704e..f3fb921 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-bs/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Mjesta u blizini"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ca/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ca/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ca/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-cs/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-cs/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-cs/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-da/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-da/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-da/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-de/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-de/strings.xml
index ecf704e..9e2db4a 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-de/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Orte in der Nähe"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-el/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-el/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-el/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rAU/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rAU/strings.xml
index ecf704e..0778273 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rAU/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Places nearby"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rGB/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rGB/strings.xml
index ecf704e..0778273 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rGB/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Places nearby"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rIN/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rIN/strings.xml
index ecf704e..0778273 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-en-rIN/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Places nearby"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-es-rUS/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-es-rUS/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-es-rUS/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-es/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-es/strings.xml
index ecf704e..fada6bc 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-es/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Sitios cercanos"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-et/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-et/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-et/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-eu/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-eu/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-eu/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fa/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-fa/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fa/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fi/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-fi/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fi/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr-rCA/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr-rCA/strings.xml
index ecf704e..d65e7bd 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr-rCA/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Adresses à proximité"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr/strings.xml
index ecf704e..d65e7bd 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-fr/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Adresses à proximité"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-gl/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-gl/strings.xml
index ecf704e..5a4cce7 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-gl/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Lugares próximos"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-gu/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-gu/strings.xml
index ecf704e..ee32e46 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-gu/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"નજીકના સ્થળો"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hi/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-hi/strings.xml
index ecf704e..079c03e 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hi/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"आस-पास के स्थल"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hr/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-hr/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hr/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hu/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-hu/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hu/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hy/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-hy/strings.xml
index ecf704e..3a2ba39 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-hy/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Մոտակա վայրեր"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-in/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-in/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-in/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-is/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-is/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-is/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-it/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-it/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-it/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-iw/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-iw/strings.xml
index ecf704e..0f07995 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-iw/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"מקומות קרובים"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ja/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ja/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ja/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ka/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ka/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ka/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-kk/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-kk/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-kk/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-km/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-km/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-km/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-kn/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-kn/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-kn/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ko/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ko/strings.xml
index ecf704e..f05a332 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ko/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"주변 장소"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ky/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ky/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ky/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lo/strings.xml
similarity index 60%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-lo/strings.xml
index ecf704e..2ff0e85 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lo/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"ສະຖານທີ່ໃກ້ຄຽງ"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lt/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-lt/strings.xml
index ecf704e..9baf540 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lt/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Netoliese esančios vietos"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lv/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-lv/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-lv/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mk/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-mk/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mk/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ml/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ml/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ml/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mn/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-mn/strings.xml
index ecf704e..707a6c9 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mn/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Ойролцоох газрууд"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mr/strings.xml
similarity index 60%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-mr/strings.xml
index ecf704e..862cd04 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-mr/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"जवळपासची ठिकाणे"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ms/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ms/strings.xml
index ecf704e..aed0bbb 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ms/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Tempat berdekatan"</string>
+</resources>
diff --git a/java/com/android/dialer/searchfragment/nearbyplaces/res/values-my/strings.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-my/strings.xml
new file mode 100644
index 0000000..74e60a0
--- /dev/null
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-my/strings.xml
@@ -0,0 +1,21 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"အနီးတဝိုက်ရှိ နေရာများ"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-nb/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-nb/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-nb/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ne/strings.xml
similarity index 60%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ne/strings.xml
index ecf704e..29b6854 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ne/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"नजिकका स्थानहरू"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-nl/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-nl/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-nl/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-no/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-no/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-no/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pa/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-pa/strings.xml
index ecf704e..1d4d472 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pa/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"ਨਜ਼ਦੀਕੀ ਸਥਾਨ"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pl/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-pl/strings.xml
index ecf704e..c00b608 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pl/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Miejsca w pobliżu"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rBR/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rBR/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rBR/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rPT/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rPT/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt-rPT/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-pt/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ro/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ro/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ro/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ru/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ru/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ru/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-si/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-si/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-si/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sk/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-sk/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sk/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sl/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-sl/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sl/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sq/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-sq/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sq/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sr/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-sr/strings.xml
index ecf704e..21af043 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sr/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Оближња места"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sv/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-sv/strings.xml
index ecf704e..c309b8d 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sv/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Platser i närheten"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sw/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-sw/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-sw/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ta/strings.xml
similarity index 60%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ta/strings.xml
index ecf704e..ce7496e 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ta/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"அருகிலுள்ள இடங்கள்"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-te/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-te/strings.xml
index ecf704e..c8229fb 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-te/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"సమీప స్థలాలు"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-th/strings.xml
similarity index 60%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-th/strings.xml
index ecf704e..1167d2f 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-th/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"สถานที่ใกล้เคียง"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-tl/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-tl/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-tl/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-tr/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-tr/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-tr/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-uk/strings.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-uk/strings.xml
index ecf704e..a3936be 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-uk/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"Місця поблизу"</string>
+</resources>
diff --git a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ur/strings.xml
similarity index 62%
copy from java/com/android/incallui/res/drawable/img_conference_automirrored.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-ur/strings.xml
index 78b2876..1a220b3 100644
--- a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-ur/strings.xml
@@ -1,7 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
+   -->
 
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/img_conference"/>
\ No newline at end of file
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"قریبی مقامات"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-uz/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-uz/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-uz/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-vi/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-vi/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-vi/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rCN/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rCN/strings.xml
index ecf704e..e060cb5 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rCN/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"附近的地点"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rHK/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rHK/strings.xml
index ecf704e..5cdf5b9 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rHK/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,9 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <string name="nearby_places" msgid="275117539511113867">"附近地點"</string>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rTW/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rTW/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zh-rTW/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zu/strings.xml
similarity index 62%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values-zu/strings.xml
index ecf704e..8039ea0 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values-zu/strings.xml
@@ -1,6 +1,6 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -13,8 +13,10 @@
   ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
-  -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+   -->
+
+<resources xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+    <!-- no translation found for nearby_places (275117539511113867) -->
+    <skip />
+</resources>
diff --git a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml b/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml
similarity index 74%
copy from java/com/android/incallui/res/drawable/img_conference_automirrored.xml
copy to java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml
index 78b2876..ed80680 100644
--- a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml
+++ b/java/com/android/dialer/searchfragment/nearbyplaces/res/values/strings.xml
@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -15,7 +14,7 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/img_conference"/>
\ No newline at end of file
+<resources>
+  <!-- Label for a list of local search results [CHAR LIMIT=30]-->
+  <string name="nearby_places">Nearby places</string>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/shortcuts/AndroidManifest.xml b/java/com/android/dialer/shortcuts/AndroidManifest.xml
index 7132051..15f7794 100644
--- a/java/com/android/dialer/shortcuts/AndroidManifest.xml
+++ b/java/com/android/dialer/shortcuts/AndroidManifest.xml
@@ -20,7 +20,7 @@
     android:minSdkVersion="23"
     android:targetSdkVersion="26"/>
 
-  <application>
+  <application android:theme="@style/Theme.AppCompat">
 
     <service
       android:exported="false"
diff --git a/java/com/android/dialer/shortcuts/Shortcuts.java b/java/com/android/dialer/shortcuts/Shortcuts.java
index b6a7fa8..c2bbb4d 100644
--- a/java/com/android/dialer/shortcuts/Shortcuts.java
+++ b/java/com/android/dialer/shortcuts/Shortcuts.java
@@ -18,7 +18,7 @@
 
 import android.content.Context;
 import android.support.annotation.NonNull;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 
 /** Checks if dynamic shortcuts should be enabled. */
 public class Shortcuts {
diff --git a/java/com/android/dialer/simulator/impl/SimulatorContacts.java b/java/com/android/dialer/simulator/impl/SimulatorContacts.java
index c5e25b3..e77788f 100644
--- a/java/com/android/dialer/simulator/impl/SimulatorContacts.java
+++ b/java/com/android/dialer/simulator/impl/SimulatorContacts.java
@@ -134,7 +134,7 @@
         ContentProviderOperation.newInsert(ContactsContract.RawContacts.CONTENT_URI)
             .withValue(ContactsContract.RawContacts.ACCOUNT_TYPE, contact.getAccountType())
             .withValue(ContactsContract.RawContacts.ACCOUNT_NAME, contact.getAccountName())
-            .withValue(ContactsContract.RawContacts.STARRED, contact.getIsStarred())
+            .withValue(ContactsContract.RawContacts.STARRED, contact.getIsStarred() ? 1 : 0)
             .withYieldAllowed(true)
             .build());
 
diff --git a/java/com/android/dialer/telecom/TelecomUtil.java b/java/com/android/dialer/telecom/TelecomUtil.java
index 87ddda5..573bfe2 100644
--- a/java/com/android/dialer/telecom/TelecomUtil.java
+++ b/java/com/android/dialer/telecom/TelecomUtil.java
@@ -29,21 +29,37 @@
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
 import android.text.TextUtils;
+import android.util.Pair;
 import com.android.dialer.common.LogUtil;
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
+import java.util.concurrent.ConcurrentHashMap;
 
 /**
  * Performs permission checks before calling into TelecomManager. Each method is self-explanatory -
  * perform the required check and return the fallback default if the permission is missing,
  * otherwise return the value from TelecomManager.
  */
-public class TelecomUtil {
+public abstract class TelecomUtil {
 
   private static final String TAG = "TelecomUtil";
   private static boolean sWarningLogged = false;
-  private static Boolean isDefaultDialerForTesting;
-  private static Boolean hasPermissionForTesting;
+
+  private static TelecomUtilImpl instance = new TelecomUtilImpl();
+
+  /**
+   * Cache for {@link #isVoicemailNumber(Context, PhoneAccountHandle, String)}. Both
+   * PhoneAccountHandle and number are cached because multiple numbers might be mapped to true, and
+   * comparing with {@link #getVoicemailNumber(Context, PhoneAccountHandle)} will not suffice.
+   */
+  private static final Map<Pair<PhoneAccountHandle, String>, Boolean> isVoicemailNumberCache =
+      new ConcurrentHashMap<>();
+
+  @VisibleForTesting(otherwise = VisibleForTesting.NONE)
+  public static void setInstanceForTesting(TelecomUtilImpl instanceForTesting) {
+    instance = instanceForTesting;
+  }
 
   public static void showInCallScreen(Context context, boolean showDialpad) {
     if (hasReadPhoneStatePermission(context)) {
@@ -125,18 +141,30 @@
   }
 
   public static boolean isInCall(Context context) {
-    if (hasReadPhoneStatePermission(context)) {
-      return getTelecomManager(context).isInCall();
-    }
-    return false;
+    return instance.isInCall(context);
   }
 
+  /**
+   * {@link TelecomManager#isVoiceMailNumber(PhoneAccountHandle, String)} takes about 10ms, which is
+   * way too slow for regular purposes. This method will cache the result for the life time of the
+   * process. The cache will not be invalidated, for example, if the voicemail number is changed by
+   * setting up apps like Google Voicemail, the result will be wrong. These events are rare.
+   */
   public static boolean isVoicemailNumber(
       Context context, PhoneAccountHandle accountHandle, String number) {
-    if (hasReadPhoneStatePermission(context)) {
-      return getTelecomManager(context).isVoiceMailNumber(accountHandle, number);
+    if (TextUtils.isEmpty(number)) {
+      return false;
     }
-    return false;
+    Pair<PhoneAccountHandle, String> cacheKey = new Pair<>(accountHandle, number);
+    if (isVoicemailNumberCache.containsKey(cacheKey)) {
+      return isVoicemailNumberCache.get(cacheKey);
+    }
+    boolean result = false;
+    if (hasReadPhoneStatePermission(context)) {
+      result = getTelecomManager(context).isVoiceMailNumber(accountHandle, number);
+    }
+    isVoicemailNumberCache.put(cacheKey, result);
+    return result;
   }
 
   @Nullable
@@ -189,43 +217,47 @@
   }
 
   private static boolean hasPermission(Context context, String permission) {
-    if (hasPermissionForTesting != null) {
-      return hasPermissionForTesting;
-    }
-    return ContextCompat.checkSelfPermission(context, permission)
-        == PackageManager.PERMISSION_GRANTED;
-  }
-
-  public static boolean isDefaultDialer(Context context) {
-    if (isDefaultDialerForTesting != null) {
-      return isDefaultDialerForTesting;
-    }
-    final boolean result =
-        TextUtils.equals(
-            context.getPackageName(), getTelecomManager(context).getDefaultDialerPackage());
-    if (result) {
-      sWarningLogged = false;
-    } else {
-      if (!sWarningLogged) {
-        // Log only once to prevent spam.
-        LogUtil.w(TAG, "Dialer is not currently set to be default dialer");
-        sWarningLogged = true;
-      }
-    }
-    return result;
+    return instance.hasPermission(context, permission);
   }
 
   private static TelecomManager getTelecomManager(Context context) {
     return (TelecomManager) context.getSystemService(Context.TELECOM_SERVICE);
   }
 
-  @VisibleForTesting(otherwise = VisibleForTesting.NONE)
-  public static void setIsDefaultDialerForTesting(Boolean defaultDialer) {
-    isDefaultDialerForTesting = defaultDialer;
+  public static boolean isDefaultDialer(Context context) {
+    return instance.isDefaultDialer(context);
   }
 
-  @VisibleForTesting(otherwise = VisibleForTesting.NONE)
-  public static void setHasPermissionForTesting(Boolean hasPermission) {
-    hasPermissionForTesting = hasPermission;
+  /** Contains an implementation for {@link TelecomUtil} methods */
+  @VisibleForTesting()
+  public static class TelecomUtilImpl {
+
+    public boolean isInCall(Context context) {
+      if (hasReadPhoneStatePermission(context)) {
+        return getTelecomManager(context).isInCall();
+      }
+      return false;
+    }
+
+    public boolean hasPermission(Context context, String permission) {
+      return ContextCompat.checkSelfPermission(context, permission)
+          == PackageManager.PERMISSION_GRANTED;
+    }
+
+    public boolean isDefaultDialer(Context context) {
+      final boolean result =
+          TextUtils.equals(
+              context.getPackageName(), getTelecomManager(context).getDefaultDialerPackage());
+      if (result) {
+        sWarningLogged = false;
+      } else {
+        if (!sWarningLogged) {
+          // Log only once to prevent spam.
+          LogUtil.w(TAG, "Dialer is not currently set to be default dialer");
+          sWarningLogged = true;
+        }
+      }
+      return result;
+    }
   }
 }
diff --git a/java/com/android/dialer/theme/res/values-af/strings.xml b/java/com/android/dialer/theme/res/values-af/strings.xml
index f263a81..17e6cea 100644
--- a/java/com/android/dialer/theme/res/values-af/strings.xml
+++ b/java/com/android/dialer/theme/res/values-af/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefoonhokkie"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Foon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameratoestemming is geaktiveer"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video-oproep"</string>
     <string name="call" msgid="3699617769606114168">"Bel"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-am/strings.xml b/java/com/android/dialer/theme/res/values-am/strings.xml
index 4f36244..5b0b2fd 100644
--- a/java/com/android/dialer/theme/res/values-am/strings.xml
+++ b/java/com/android/dialer/theme/res/values-am/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"የሕዝብ ስልክ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ስልክ"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"የካሜራ ፈቃድ ነቅቷል"</string>
+    <string name="video_call" msgid="8914878391104612532">"የቪዲዮ ጥሪ"</string>
     <string name="call" msgid="3699617769606114168">"ደውል"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ar/strings.xml b/java/com/android/dialer/theme/res/values-ar/strings.xml
index 951bde2..ea3468e 100644
--- a/java/com/android/dialer/theme/res/values-ar/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ar/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"هاتف يعمل بالعملة"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"الهاتف"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"تم تمكين إذن الكاميرا"</string>
+    <string name="video_call" msgid="8914878391104612532">"مكالمة فيديو"</string>
     <string name="call" msgid="3699617769606114168">"اتصال"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-az/strings.xml b/java/com/android/dialer/theme/res/values-az/strings.xml
index 08eaf33..91ead1b 100644
--- a/java/com/android/dialer/theme/res/values-az/strings.xml
+++ b/java/com/android/dialer/theme/res/values-az/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Taksofon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kamera icazəsi aktiv edildi"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video zəng"</string>
     <string name="call" msgid="3699617769606114168">"Zəng edin"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/theme/res/values-b+sr+Latn/strings.xml
index 01cdb47..a1e5965 100644
--- a/java/com/android/dialer/theme/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/theme/res/values-b+sr+Latn/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonska govornica"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Omogućena je dozvola za kameru"</string>
+    <string name="video_call" msgid="8914878391104612532">"Uputi video poziv"</string>
     <string name="call" msgid="3699617769606114168">"Pozovi"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-be/strings.xml b/java/com/android/dialer/theme/res/values-be/strings.xml
index 49be019..881aa7f 100644
--- a/java/com/android/dialer/theme/res/values-be/strings.xml
+++ b/java/com/android/dialer/theme/res/values-be/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Таксафон"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Тэлефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Уключаны дазвол на выкарыстанне камеры"</string>
+    <string name="video_call" msgid="8914878391104612532">"Відэавыклік"</string>
     <string name="call" msgid="3699617769606114168">"Выклікаць"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-bg/strings.xml b/java/com/android/dialer/theme/res/values-bg/strings.xml
index 87af9f0..debc238 100644
--- a/java/com/android/dialer/theme/res/values-bg/strings.xml
+++ b/java/com/android/dialer/theme/res/values-bg/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Обществен телефон"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Активирано бе разрешението за камерата"</string>
+    <string name="video_call" msgid="8914878391104612532">"Видеообаждане"</string>
     <string name="call" msgid="3699617769606114168">"Обаждане"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-bn/strings.xml b/java/com/android/dialer/theme/res/values-bn/strings.xml
index ab1c65b..806ee8e 100644
--- a/java/com/android/dialer/theme/res/values-bn/strings.xml
+++ b/java/com/android/dialer/theme/res/values-bn/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"পে ফোন"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ফোন"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ক্যামেরার অনুমতি সক্ষম করা হয়েছে"</string>
+    <string name="video_call" msgid="8914878391104612532">"ভিডিও কল"</string>
     <string name="call" msgid="3699617769606114168">"কল করুন"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-bs/strings.xml b/java/com/android/dialer/theme/res/values-bs/strings.xml
index 01cdb47..bed71a2 100644
--- a/java/com/android/dialer/theme/res/values-bs/strings.xml
+++ b/java/com/android/dialer/theme/res/values-bs/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonska govornica"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Dozvola za kameru je omogućena"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videopoziv"</string>
     <string name="call" msgid="3699617769606114168">"Pozovi"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ca/strings.xml b/java/com/android/dialer/theme/res/values-ca/strings.xml
index 1e21a1f..5140ca5 100644
--- a/java/com/android/dialer/theme/res/values-ca/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ca/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telèfon públic"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telèfon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"S\'ha activat el permís d\'accés a la càmera"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videotrucada"</string>
     <string name="call" msgid="3699617769606114168">"Truca"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-cs/strings.xml b/java/com/android/dialer/theme/res/values-cs/strings.xml
index ca7bad9..a951fe7 100644
--- a/java/com/android/dialer/theme/res/values-cs/strings.xml
+++ b/java/com/android/dialer/theme/res/values-cs/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonní automat"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Byl povolen přístup k fotoaparátu"</string>
+    <string name="video_call" msgid="8914878391104612532">"Zahájit videohovor"</string>
     <string name="call" msgid="3699617769606114168">"Volat"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-da/strings.xml b/java/com/android/dialer/theme/res/values-da/strings.xml
index c606b28..54f1850 100644
--- a/java/com/android/dialer/theme/res/values-da/strings.xml
+++ b/java/com/android/dialer/theme/res/values-da/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Mønttelefon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Opkald"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameratilladelse er aktiveret"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videoopkald"</string>
     <string name="call" msgid="3699617769606114168">"Ring op"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-de/strings.xml b/java/com/android/dialer/theme/res/values-de/strings.xml
index d214287..0c97581 100644
--- a/java/com/android/dialer/theme/res/values-de/strings.xml
+++ b/java/com/android/dialer/theme/res/values-de/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Münztelefon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Berechtigung für Kamera aktiviert"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videoanruf"</string>
     <string name="call" msgid="3699617769606114168">"Anrufen"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-el/strings.xml b/java/com/android/dialer/theme/res/values-el/strings.xml
index abe1d3f..1c34a69 100644
--- a/java/com/android/dialer/theme/res/values-el/strings.xml
+++ b/java/com/android/dialer/theme/res/values-el/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Τηλέφωνο με χρέωση"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Τηλέφωνο"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Το δικαίωμα χρήσης της κάμερας έχει ενεργοποιηθεί"</string>
+    <string name="video_call" msgid="8914878391104612532">"Βιντεοκλήση"</string>
     <string name="call" msgid="3699617769606114168">"Κλήση"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-en-rAU/strings.xml b/java/com/android/dialer/theme/res/values-en-rAU/strings.xml
index b086b4c..136d7df 100644
--- a/java/com/android/dialer/theme/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/theme/res/values-en-rAU/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Payphone"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Phone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Camera permission enabled"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video call"</string>
     <string name="call" msgid="3699617769606114168">"Call"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-en-rGB/strings.xml b/java/com/android/dialer/theme/res/values-en-rGB/strings.xml
index b086b4c..136d7df 100644
--- a/java/com/android/dialer/theme/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/theme/res/values-en-rGB/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Payphone"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Phone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Camera permission enabled"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video call"</string>
     <string name="call" msgid="3699617769606114168">"Call"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-en-rIN/strings.xml b/java/com/android/dialer/theme/res/values-en-rIN/strings.xml
index b086b4c..136d7df 100644
--- a/java/com/android/dialer/theme/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/theme/res/values-en-rIN/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Payphone"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Phone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Camera permission enabled"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video call"</string>
     <string name="call" msgid="3699617769606114168">"Call"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-es-rUS/strings.xml b/java/com/android/dialer/theme/res/values-es-rUS/strings.xml
index aee2d0a..90837b7 100644
--- a/java/com/android/dialer/theme/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/theme/res/values-es-rUS/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Teléfono público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Teléfono"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Se activó el permiso de la cámara"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videollamada"</string>
     <string name="call" msgid="3699617769606114168">"Llamar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-es/strings.xml b/java/com/android/dialer/theme/res/values-es/strings.xml
index 343ac21..c2d3ee3 100644
--- a/java/com/android/dialer/theme/res/values-es/strings.xml
+++ b/java/com/android/dialer/theme/res/values-es/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Teléfono público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Teléfono"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Se ha habilitado el acceso a la cámara"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videollamada"</string>
     <string name="call" msgid="3699617769606114168">"Llamar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-et/strings.xml b/java/com/android/dialer/theme/res/values-et/strings.xml
index 5b1e6c0..269fa64 100644
--- a/java/com/android/dialer/theme/res/values-et/strings.xml
+++ b/java/com/android/dialer/theme/res/values-et/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefoniautomaat"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kaameraluba on antud"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videokõne"</string>
     <string name="call" msgid="3699617769606114168">"Helista"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-eu/strings.xml b/java/com/android/dialer/theme/res/values-eu/strings.xml
index dbb4f70..14345f0 100644
--- a/java/com/android/dialer/theme/res/values-eu/strings.xml
+++ b/java/com/android/dialer/theme/res/values-eu/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefono publikoa"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefonoa"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kamera atzitzeko baimena eman da"</string>
+    <string name="video_call" msgid="8914878391104612532">"Bideo-deia"</string>
     <string name="call" msgid="3699617769606114168">"Deitu"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-fa/strings.xml b/java/com/android/dialer/theme/res/values-fa/strings.xml
index 99bed5f..f751f34 100644
--- a/java/com/android/dialer/theme/res/values-fa/strings.xml
+++ b/java/com/android/dialer/theme/res/values-fa/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="ID">%d</xliff:g> <xliff:g id="UNKNOWN">%s</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"تلفن عمومی"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"تلفن"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"مجوز دوربین فعال شد"</string>
+    <string name="video_call" msgid="8914878391104612532">"تماس ویدیویی"</string>
     <string name="call" msgid="3699617769606114168">"تماس"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-fi/strings.xml b/java/com/android/dialer/theme/res/values-fi/strings.xml
index a180be5..0c09d7f 100644
--- a/java/com/android/dialer/theme/res/values-fi/strings.xml
+++ b/java/com/android/dialer/theme/res/values-fi/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Maksupuhelin"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Puhelin"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameran käyttöoikeus myönnettiin"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videopuhelu"</string>
     <string name="call" msgid="3699617769606114168">"Soita"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-fr-rCA/strings.xml b/java/com/android/dialer/theme/res/values-fr-rCA/strings.xml
index 18a70bb..7d901ca 100644
--- a/java/com/android/dialer/theme/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/theme/res/values-fr-rCA/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Cabine téléphonique"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Téléphone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Autorisation d\'accès à l\'appareil photo activée"</string>
+    <string name="video_call" msgid="8914878391104612532">"Appel vidéo"</string>
     <string name="call" msgid="3699617769606114168">"Appeler"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-fr/strings.xml b/java/com/android/dialer/theme/res/values-fr/strings.xml
index 18a70bb..1c30ef1 100644
--- a/java/com/android/dialer/theme/res/values-fr/strings.xml
+++ b/java/com/android/dialer/theme/res/values-fr/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Cabine téléphonique"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Téléphone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Autorisation d\'accès à l\'appareil photo accordée"</string>
+    <string name="video_call" msgid="8914878391104612532">"Appel vidéo"</string>
     <string name="call" msgid="3699617769606114168">"Appeler"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-gl/strings.xml b/java/com/android/dialer/theme/res/values-gl/strings.xml
index fbbad6c..083d395 100644
--- a/java/com/android/dialer/theme/res/values-gl/strings.xml
+++ b/java/com/android/dialer/theme/res/values-gl/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Teléfono público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Teléfono"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Activouse o permiso de acceso á cámara"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videochamada"</string>
     <string name="call" msgid="3699617769606114168">"Chamar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-gu/strings.xml b/java/com/android/dialer/theme/res/values-gu/strings.xml
index 9b38dcd..4baba69 100644
--- a/java/com/android/dialer/theme/res/values-gu/strings.xml
+++ b/java/com/android/dialer/theme/res/values-gu/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"પેફોન"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ફોન"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"કૅમેરાની પરવાનગી સક્ષમ કરી"</string>
+    <string name="video_call" msgid="8914878391104612532">"વિડિઓ કૉલ"</string>
     <string name="call" msgid="3699617769606114168">"કૉલ કરો"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-hi/strings.xml b/java/com/android/dialer/theme/res/values-hi/strings.xml
index ee360b4..758be5d 100644
--- a/java/com/android/dialer/theme/res/values-hi/strings.xml
+++ b/java/com/android/dialer/theme/res/values-hi/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"पे-फ़ोन"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"फ़ोन"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"कैमरे की अनुमति सक्षम की गई"</string>
+    <string name="video_call" msgid="8914878391104612532">"वीडियो कॉल"</string>
     <string name="call" msgid="3699617769606114168">"कॉल करें"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-hr/strings.xml b/java/com/android/dialer/theme/res/values-hr/strings.xml
index 92e1956..89a5aee 100644
--- a/java/com/android/dialer/theme/res/values-hr/strings.xml
+++ b/java/com/android/dialer/theme/res/values-hr/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Javna telefonska govornica"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Omogućen je pristup kameri"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videopoziv"</string>
     <string name="call" msgid="3699617769606114168">"Pozovi"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-hu/strings.xml b/java/com/android/dialer/theme/res/values-hu/strings.xml
index dfcc876..30051d4 100644
--- a/java/com/android/dialer/theme/res/values-hu/strings.xml
+++ b/java/com/android/dialer/theme/res/values-hu/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Nyilvános telefon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameraengedély megadva"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videohívás"</string>
     <string name="call" msgid="3699617769606114168">"Hívás"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-hy/strings.xml b/java/com/android/dialer/theme/res/values-hy/strings.xml
index 3b4e862..6577dab 100644
--- a/java/com/android/dialer/theme/res/values-hy/strings.xml
+++ b/java/com/android/dialer/theme/res/values-hy/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Բջջային տերմինալ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Հեռախոս"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Տեսախցիկից օգտվելու թույլտվությունը տրամադրված է"</string>
+    <string name="video_call" msgid="8914878391104612532">"Տեսազանգ"</string>
     <string name="call" msgid="3699617769606114168">"Զանգել"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-in/strings.xml b/java/com/android/dialer/theme/res/values-in/strings.xml
index eda15a2..d2d72b8 100644
--- a/java/com/android/dialer/theme/res/values-in/strings.xml
+++ b/java/com/android/dialer/theme/res/values-in/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telepon Umum"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telepon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Izin kamera diaktifkan"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video call"</string>
     <string name="call" msgid="3699617769606114168">"Telepon"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-is/strings.xml b/java/com/android/dialer/theme/res/values-is/strings.xml
index cda7fc8..ff3faf8 100644
--- a/java/com/android/dialer/theme/res/values-is/strings.xml
+++ b/java/com/android/dialer/theme/res/values-is/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Símasjálfsali"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Sími"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Myndavélarheimild virk"</string>
+    <string name="video_call" msgid="8914878391104612532">"Hringja myndsímtal"</string>
     <string name="call" msgid="3699617769606114168">"Hringja"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-it/strings.xml b/java/com/android/dialer/theme/res/values-it/strings.xml
index fa2caa6..4b26288 100644
--- a/java/com/android/dialer/theme/res/values-it/strings.xml
+++ b/java/com/android/dialer/theme/res/values-it/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Cabina telefonica"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefono"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Autorizzazioni della fotocamera attivate"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videochiamata"</string>
     <string name="call" msgid="3699617769606114168">"Chiama"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-iw/strings.xml b/java/com/android/dialer/theme/res/values-iw/strings.xml
index 18d87ea..09abf2e 100644
--- a/java/com/android/dialer/theme/res/values-iw/strings.xml
+++ b/java/com/android/dialer/theme/res/values-iw/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"טלפון ציבורי"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"טלפון"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"הרשאת הגישה למצלמה הופעלה"</string>
+    <string name="video_call" msgid="8914878391104612532">"שיחת וידאו"</string>
     <string name="call" msgid="3699617769606114168">"התקשר"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ja/strings.xml b/java/com/android/dialer/theme/res/values-ja/strings.xml
index 3921559..551d679 100644
--- a/java/com/android/dialer/theme/res/values-ja/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ja/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g>（<xliff:g id="ID">%d</xliff:g>）"</string>
     <string name="payphone" msgid="7106361320283710387">"公衆電話"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"電話"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"カメラへのアクセスを自動で許可しました"</string>
+    <string name="video_call" msgid="8914878391104612532">"ビデオハングアウト"</string>
     <string name="call" msgid="3699617769606114168">"発信"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ka/strings.xml b/java/com/android/dialer/theme/res/values-ka/strings.xml
index 18e7cb3..ab22595 100644
--- a/java/com/android/dialer/theme/res/values-ka/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ka/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"გადახდის ტელეფონი"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ტელეფონი"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"კამერაზე წვდომის ნებართვა ჩართულია"</string>
+    <string name="video_call" msgid="8914878391104612532">"ვიდეოზარი"</string>
     <string name="call" msgid="3699617769606114168">"დარეკვა"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-kk/strings.xml b/java/com/android/dialer/theme/res/values-kk/strings.xml
index f9c62d3..d3a1b7b 100644
--- a/java/com/android/dialer/theme/res/values-kk/strings.xml
+++ b/java/com/android/dialer/theme/res/values-kk/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Автомат-телефон"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Камера рұқсаты қосылды"</string>
+    <string name="video_call" msgid="8914878391104612532">"Бейне қоңырау"</string>
     <string name="call" msgid="3699617769606114168">"Қоңырау шалу"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-km/strings.xml b/java/com/android/dialer/theme/res/values-km/strings.xml
index 7e375cf..900f1d6 100644
--- a/java/com/android/dialer/theme/res/values-km/strings.xml
+++ b/java/com/android/dialer/theme/res/values-km/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"ទូរស័ព្ទសាធារណៈ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ទូរស័ព្ទ"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"បានបើក​ការអនុញ្ញាត​កាមេរ៉ា"</string>
+    <string name="video_call" msgid="8914878391104612532">"ការ​ហៅវីដេអូ"</string>
     <string name="call" msgid="3699617769606114168">"ហៅ​ទូរសព្ទ"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-kn/strings.xml b/java/com/android/dialer/theme/res/values-kn/strings.xml
index 718fea0..ab9f816 100644
--- a/java/com/android/dialer/theme/res/values-kn/strings.xml
+++ b/java/com/android/dialer/theme/res/values-kn/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"ಪೇಫೋನ್"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ಫೋನ್"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ಕ್ಯಾಮರಾ ಅನುಮತಿಯನ್ನು ಸಕ್ರಿಯಗೊಳಿಸಲಾಗಿದೆ"</string>
+    <string name="video_call" msgid="8914878391104612532">"ವೀಡಿಯೊ ಕರೆ"</string>
     <string name="call" msgid="3699617769606114168">"ಕರೆಮಾಡಿ"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ko/strings.xml b/java/com/android/dialer/theme/res/values-ko/strings.xml
index 29f608c..b5ac556 100644
--- a/java/com/android/dialer/theme/res/values-ko/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ko/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"공중전화"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"휴대전화"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"카메라 권한 사용 가능"</string>
+    <string name="video_call" msgid="8914878391104612532">"화상 통화"</string>
     <string name="call" msgid="3699617769606114168">"전화"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ky/strings.xml b/java/com/android/dialer/theme/res/values-ky/strings.xml
index 905b8c5..0a9bec2 100644
--- a/java/com/android/dialer/theme/res/values-ky/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ky/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Таксофон"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Камеранын уруксаты иштетилди"</string>
+    <string name="video_call" msgid="8914878391104612532">"Видео чалуу"</string>
     <string name="call" msgid="3699617769606114168">"Чалуу"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-lo/strings.xml b/java/com/android/dialer/theme/res/values-lo/strings.xml
index 6826a75..d33d43e 100644
--- a/java/com/android/dialer/theme/res/values-lo/strings.xml
+++ b/java/com/android/dialer/theme/res/values-lo/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"ຕູ້​ໂທ​ລະ​ສັບ​ສາ​ທາ​ລະ​ນະ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ໂທລະສັບ"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ເປີດໃຊ້ສິດອະນຸຍາດກ້ອງຖ່າຍຮູບແລ້ວ"</string>
+    <string name="video_call" msgid="8914878391104612532">"ໂທວິດີໂອ"</string>
     <string name="call" msgid="3699617769606114168">"ໂທ"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-lt/strings.xml b/java/com/android/dialer/theme/res/values-lt/strings.xml
index 43469a1..fdf31e2 100644
--- a/java/com/android/dialer/theme/res/values-lt/strings.xml
+++ b/java/com/android/dialer/theme/res/values-lt/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="ID">%d</xliff:g> <xliff:g id="UNKNOWN">%s</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Taksofonas"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefonas"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Fotoaparato leidimas įgalintas"</string>
+    <string name="video_call" msgid="8914878391104612532">"Vaizdo skambutis"</string>
     <string name="call" msgid="3699617769606114168">"Skambinti"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-lv/strings.xml b/java/com/android/dialer/theme/res/values-lv/strings.xml
index f9a6dec..031c5bd 100644
--- a/java/com/android/dialer/theme/res/values-lv/strings.xml
+++ b/java/com/android/dialer/theme/res/values-lv/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Maksas tālrunis"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Tālrunis"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameras atļauja iespējota"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videozvans"</string>
     <string name="call" msgid="3699617769606114168">"Zvanīt"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-mk/strings.xml b/java/com/android/dialer/theme/res/values-mk/strings.xml
index 1328edb..d89d12e 100644
--- a/java/com/android/dialer/theme/res/values-mk/strings.xml
+++ b/java/com/android/dialer/theme/res/values-mk/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Говорница"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Дозволата за камера е овозможена"</string>
+    <string name="video_call" msgid="8914878391104612532">"Воспоставете видеоповик"</string>
     <string name="call" msgid="3699617769606114168">"Повикајте"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ml/strings.xml b/java/com/android/dialer/theme/res/values-ml/strings.xml
index 03f9533..f02ceeb 100644
--- a/java/com/android/dialer/theme/res/values-ml/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ml/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"പണം നൽകി ഉപയോഗിക്കുന്ന ഫോൺ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ഫോണ്‍"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ക്യാമറ അനുമതി നൽകി"</string>
+    <string name="video_call" msgid="8914878391104612532">"വീഡിയോ കോള്‍"</string>
     <string name="call" msgid="3699617769606114168">"വിളിക്കുക"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-mn/strings.xml b/java/com/android/dialer/theme/res/values-mn/strings.xml
index c47f083..7a07e5d 100644
--- a/java/com/android/dialer/theme/res/values-mn/strings.xml
+++ b/java/com/android/dialer/theme/res/values-mn/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Payphone"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Утас"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Камерын зөвшөөрөл идэвхжсэн"</string>
+    <string name="video_call" msgid="8914878391104612532">"Видео дуудлага"</string>
     <string name="call" msgid="3699617769606114168">"Залгах"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-mr/strings.xml b/java/com/android/dialer/theme/res/values-mr/strings.xml
index 41a9c96..eeb9afa 100644
--- a/java/com/android/dialer/theme/res/values-mr/strings.xml
+++ b/java/com/android/dialer/theme/res/values-mr/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"सार्वजनिक फोन"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"फोन"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"कॅमेरा परवानगी सक्षम केली"</string>
+    <string name="video_call" msgid="8914878391104612532">"व्हिडिओ कॉल"</string>
     <string name="call" msgid="3699617769606114168">"कॉल करा"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ms/strings.xml b/java/com/android/dialer/theme/res/values-ms/strings.xml
index b28fe26..2e424fd 100644
--- a/java/com/android/dialer/theme/res/values-ms/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ms/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefon Awam"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kebenaran kamera didayakan"</string>
+    <string name="video_call" msgid="8914878391104612532">"Panggilan video"</string>
     <string name="call" msgid="3699617769606114168">"Panggil"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-my/strings.xml b/java/com/android/dialer/theme/res/values-my/strings.xml
index eb21b6e..97b871b 100644
--- a/java/com/android/dialer/theme/res/values-my/strings.xml
+++ b/java/com/android/dialer/theme/res/values-my/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"ငွေပေးရသည့်ဖုန်း"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ဖုန်း"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ကင်မရာအသုံးပြုခွင့် ဖွင့်ထားပါသည်"</string>
+    <string name="video_call" msgid="8914878391104612532">"ဗီဒီယိုခေါ်ဆိုမှု"</string>
     <string name="call" msgid="3699617769606114168">"ခေါ်ဆိုရန်"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-nb/strings.xml b/java/com/android/dialer/theme/res/values-nb/strings.xml
index dcd9b17..7587b7e 100644
--- a/java/com/android/dialer/theme/res/values-nb/strings.xml
+++ b/java/com/android/dialer/theme/res/values-nb/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonkiosk"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameratillatelsen er aktivert"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videosamtale"</string>
     <string name="call" msgid="3699617769606114168">"Ring"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ne/strings.xml b/java/com/android/dialer/theme/res/values-ne/strings.xml
index 383ac2c..af1ad5e 100644
--- a/java/com/android/dialer/theme/res/values-ne/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ne/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"पेफोन"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"फोन"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"क्यामेरा सम्बन्धी अनुमतिहरूलाई सक्षम पारियो"</string>
+    <string name="video_call" msgid="8914878391104612532">"भिडियो कल"</string>
     <string name="call" msgid="3699617769606114168">"कल गर्नुहोस्"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-nl/strings.xml b/java/com/android/dialer/theme/res/values-nl/strings.xml
index 9635708..ab51c97 100644
--- a/java/com/android/dialer/theme/res/values-nl/strings.xml
+++ b/java/com/android/dialer/theme/res/values-nl/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefooncel"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefoon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Camerarechten ingeschakeld"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videogesprek"</string>
     <string name="call" msgid="3699617769606114168">"Bellen"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-no/strings.xml b/java/com/android/dialer/theme/res/values-no/strings.xml
index dcd9b17..7587b7e 100644
--- a/java/com/android/dialer/theme/res/values-no/strings.xml
+++ b/java/com/android/dialer/theme/res/values-no/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonkiosk"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameratillatelsen er aktivert"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videosamtale"</string>
     <string name="call" msgid="3699617769606114168">"Ring"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-pa/strings.xml b/java/com/android/dialer/theme/res/values-pa/strings.xml
index dc23b7a..8784bca 100644
--- a/java/com/android/dialer/theme/res/values-pa/strings.xml
+++ b/java/com/android/dialer/theme/res/values-pa/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"ਪੇਫੋਨ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ਫੋਨ"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ਕੈਮਰਾ ਇਜਾਜ਼ਤ ਨੂੰ ਯੋਗ ਬਣਾਇਆ ਗਿਆ ਹੈ"</string>
+    <string name="video_call" msgid="8914878391104612532">"ਵੀਡੀਓ ਕਾਲ"</string>
     <string name="call" msgid="3699617769606114168">"ਕਾਲ ਕਰੋ"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-pl/strings.xml b/java/com/android/dialer/theme/res/values-pl/strings.xml
index 1ebaad2..246261e 100644
--- a/java/com/android/dialer/theme/res/values-pl/strings.xml
+++ b/java/com/android/dialer/theme/res/values-pl/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Automat telefoniczny"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Uprawnienia do korzystania z aparatu zostały włączone"</string>
+    <string name="video_call" msgid="8914878391104612532">"Rozmowa wideo"</string>
     <string name="call" msgid="3699617769606114168">"Zadzwoń"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-pt-rBR/strings.xml b/java/com/android/dialer/theme/res/values-pt-rBR/strings.xml
index 6caf87c..c1356d9 100644
--- a/java/com/android/dialer/theme/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/theme/res/values-pt-rBR/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefone público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Permissão de câmera ativada"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videochamada"</string>
     <string name="call" msgid="3699617769606114168">"Ligar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-pt-rPT/strings.xml b/java/com/android/dialer/theme/res/values-pt-rPT/strings.xml
index ef7c7d6..2b46e44 100644
--- a/java/com/android/dialer/theme/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/theme/res/values-pt-rPT/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefone público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Autorização da câmara ativada"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videochamada"</string>
     <string name="call" msgid="3699617769606114168">"Telefonar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-pt/strings.xml b/java/com/android/dialer/theme/res/values-pt/strings.xml
index 6caf87c..c1356d9 100644
--- a/java/com/android/dialer/theme/res/values-pt/strings.xml
+++ b/java/com/android/dialer/theme/res/values-pt/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefone público"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefone"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Permissão de câmera ativada"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videochamada"</string>
     <string name="call" msgid="3699617769606114168">"Ligar"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ro/strings.xml b/java/com/android/dialer/theme/res/values-ro/strings.xml
index 4d0c09b..8978e92 100644
--- a/java/com/android/dialer/theme/res/values-ro/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ro/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefon public"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Permisiunea pentru cameră a fost activată."</string>
+    <string name="video_call" msgid="8914878391104612532">"Apel video"</string>
     <string name="call" msgid="3699617769606114168">"Apelați"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ru/strings.xml b/java/com/android/dialer/theme/res/values-ru/strings.xml
index aeab136..a155052 100644
--- a/java/com/android/dialer/theme/res/values-ru/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ru/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Телефон-автомат"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Доступ к камере разрешен"</string>
+    <string name="video_call" msgid="8914878391104612532">"Видеовызов"</string>
     <string name="call" msgid="3699617769606114168">"Позвонить"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-si/strings.xml b/java/com/android/dialer/theme/res/values-si/strings.xml
index ba3bb05..424a112 100644
--- a/java/com/android/dialer/theme/res/values-si/strings.xml
+++ b/java/com/android/dialer/theme/res/values-si/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"පේෆෝනය"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"දුරකථනය"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"කැමරා අවසර සබල කර ඇත"</string>
+    <string name="video_call" msgid="8914878391104612532">"වීඩියෝ ඇමතුම"</string>
     <string name="call" msgid="3699617769606114168">"ඇමතුම"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sk/strings.xml b/java/com/android/dialer/theme/res/values-sk/strings.xml
index 6863463..411b85e 100644
--- a/java/com/android/dialer/theme/res/values-sk/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sk/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefónny automat"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefón"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Povolenie pre fotoaparát je aktivované"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videohovor"</string>
     <string name="call" msgid="3699617769606114168">"Volať"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sl/strings.xml b/java/com/android/dialer/theme/res/values-sl/strings.xml
index 1b1776a..85a3e2b 100644
--- a/java/com/android/dialer/theme/res/values-sl/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sl/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonska govorilnica"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Dovoljenje za dostop do fotoaparata je omogočeno"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videoklic"</string>
     <string name="call" msgid="3699617769606114168">"Pokliči"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sq/strings.xml b/java/com/android/dialer/theme/res/values-sq/strings.xml
index 0d7084a..5cbd587 100644
--- a/java/com/android/dialer/theme/res/values-sq/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sq/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefon me pagesë"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefoni"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Leja e kamerës është aktivizuar"</string>
+    <string name="video_call" msgid="8914878391104612532">"Telefonatë me video"</string>
     <string name="call" msgid="3699617769606114168">"Telefono"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sr/strings.xml b/java/com/android/dialer/theme/res/values-sr/strings.xml
index a744e95..310da73 100644
--- a/java/com/android/dialer/theme/res/values-sr/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sr/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Телефонска говорница"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Омогућена је дозвола за камеру"</string>
+    <string name="video_call" msgid="8914878391104612532">"Упути видео позив"</string>
     <string name="call" msgid="3699617769606114168">"Позови"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sv/strings.xml b/java/com/android/dialer/theme/res/values-sv/strings.xml
index f409807..af8e5f7 100644
--- a/java/com/android/dialer/theme/res/values-sv/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sv/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Telefonautomat"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kamerabehörighet har aktiverats"</string>
+    <string name="video_call" msgid="8914878391104612532">"Videosamtal"</string>
     <string name="call" msgid="3699617769606114168">"Ring"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-sw/strings.xml b/java/com/android/dialer/theme/res/values-sw/strings.xml
index a2f9888..31615fe 100644
--- a/java/com/android/dialer/theme/res/values-sw/strings.xml
+++ b/java/com/android/dialer/theme/res/values-sw/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Simu ya kulipia"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Simu"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Imewasha ruhusa ya kamera"</string>
+    <string name="video_call" msgid="8914878391104612532">"Simu ya video"</string>
     <string name="call" msgid="3699617769606114168">"Piga simu"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ta/strings.xml b/java/com/android/dialer/theme/res/values-ta/strings.xml
index a4f55f5..ab15f0b 100644
--- a/java/com/android/dialer/theme/res/values-ta/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ta/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"கட்டணத் தொலைபேசி"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"மொபைல்"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"கேமராவிற்கான அனுமதி இயக்கப்பட்டது"</string>
+    <string name="video_call" msgid="8914878391104612532">"வீடியோ அழைப்பு"</string>
     <string name="call" msgid="3699617769606114168">"அழை"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-te/strings.xml b/java/com/android/dialer/theme/res/values-te/strings.xml
index 59f00ca..4a6fca1 100644
--- a/java/com/android/dialer/theme/res/values-te/strings.xml
+++ b/java/com/android/dialer/theme/res/values-te/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"పే ఫోన్"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"ఫోన్"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"కెమెరా అనుమతిని ప్రారంభించాము"</string>
+    <string name="video_call" msgid="8914878391104612532">"వీడియో కాల్"</string>
     <string name="call" msgid="3699617769606114168">"కాల్ చేయి"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-th/strings.xml b/java/com/android/dialer/theme/res/values-th/strings.xml
index 3870b4d..51db053 100644
--- a/java/com/android/dialer/theme/res/values-th/strings.xml
+++ b/java/com/android/dialer/theme/res/values-th/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"โทรศัพท์สาธารณะ"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"โทรศัพท์"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"ให้สิทธิ์เข้าถึงกล้องถ่ายรูปแล้ว"</string>
+    <string name="video_call" msgid="8914878391104612532">"แฮงเอาท์วิดีโอ"</string>
     <string name="call" msgid="3699617769606114168">"โทร"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-tl/strings.xml b/java/com/android/dialer/theme/res/values-tl/strings.xml
index 8169278..97f69ec 100644
--- a/java/com/android/dialer/theme/res/values-tl/strings.xml
+++ b/java/com/android/dialer/theme/res/values-tl/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Payphone"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telepono"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Na-enable ang pahintulot sa camera"</string>
+    <string name="video_call" msgid="8914878391104612532">"Mag-video call"</string>
     <string name="call" msgid="3699617769606114168">"Tawag"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-tr/strings.xml b/java/com/android/dialer/theme/res/values-tr/strings.xml
index c11cd13..b38f067 100644
--- a/java/com/android/dialer/theme/res/values-tr/strings.xml
+++ b/java/com/android/dialer/theme/res/values-tr/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Ankesörlü telefon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kamera izni etkinleştirildi"</string>
+    <string name="video_call" msgid="8914878391104612532">"Görüntülü görüşme"</string>
     <string name="call" msgid="3699617769606114168">"Telefon et"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-uk/strings.xml b/java/com/android/dialer/theme/res/values-uk/strings.xml
index c87fe89..f070277 100644
--- a/java/com/android/dialer/theme/res/values-uk/strings.xml
+++ b/java/com/android/dialer/theme/res/values-uk/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Таксофон"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Телефон"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Камері надано дозвіл"</string>
+    <string name="video_call" msgid="8914878391104612532">"Відеодзвінок"</string>
     <string name="call" msgid="3699617769606114168">"Виклик"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-ur/strings.xml b/java/com/android/dialer/theme/res/values-ur/strings.xml
index abc0d6d..e9a4b44 100644
--- a/java/com/android/dialer/theme/res/values-ur/strings.xml
+++ b/java/com/android/dialer/theme/res/values-ur/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"پے فون"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"فون"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"کیمرا کی اجازت فعال ہے"</string>
+    <string name="video_call" msgid="8914878391104612532">"ویڈیو کال"</string>
     <string name="call" msgid="3699617769606114168">"کال کریں"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-uz/strings.xml b/java/com/android/dialer/theme/res/values-uz/strings.xml
index 2889f3f..2bbaf20 100644
--- a/java/com/android/dialer/theme/res/values-uz/strings.xml
+++ b/java/com/android/dialer/theme/res/values-uz/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Taksofon"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Telefon"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Kameraga kirishga ruxsat berildi"</string>
+    <string name="video_call" msgid="8914878391104612532">"Video suhbat"</string>
     <string name="call" msgid="3699617769606114168">"Chaqirish"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-vi/strings.xml b/java/com/android/dialer/theme/res/values-vi/strings.xml
index b014516..fae3180 100644
--- a/java/com/android/dialer/theme/res/values-vi/strings.xml
+++ b/java/com/android/dialer/theme/res/values-vi/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Điện thoại công cộng"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Điện thoại"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Đã bật quyền sử dụng máy ảnh"</string>
+    <string name="video_call" msgid="8914878391104612532">"Gọi điện video"</string>
     <string name="call" msgid="3699617769606114168">"Gọi"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-zh-rCN/strings.xml b/java/com/android/dialer/theme/res/values-zh-rCN/strings.xml
index baff752..2e60962 100644
--- a/java/com/android/dialer/theme/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/theme/res/values-zh-rCN/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"公用电话"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"电话"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"已启用相机使用权限"</string>
+    <string name="video_call" msgid="8914878391104612532">"视频通话"</string>
     <string name="call" msgid="3699617769606114168">"拨打电话"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-zh-rHK/strings.xml b/java/com/android/dialer/theme/res/values-zh-rHK/strings.xml
index 8b26663..7b08024 100644
--- a/java/com/android/dialer/theme/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/theme/res/values-zh-rHK/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"公共電話"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"電話"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"已啟用相機權限"</string>
+    <string name="video_call" msgid="8914878391104612532">"視像通話"</string>
     <string name="call" msgid="3699617769606114168">"通話"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-zh-rTW/strings.xml b/java/com/android/dialer/theme/res/values-zh-rTW/strings.xml
index 24a5c10..57d7fe2 100644
--- a/java/com/android/dialer/theme/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/theme/res/values-zh-rTW/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"公用電話"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"電話"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"已啟用相機權限"</string>
+    <string name="video_call" msgid="8914878391104612532">"視訊通話"</string>
     <string name="call" msgid="3699617769606114168">"撥號"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values-zu/strings.xml b/java/com/android/dialer/theme/res/values-zu/strings.xml
index 96cd798..d0dd728 100644
--- a/java/com/android/dialer/theme/res/values-zu/strings.xml
+++ b/java/com/android/dialer/theme/res/values-zu/strings.xml
@@ -21,5 +21,7 @@
     <string name="unknown_counter" msgid="7452889151953704159">"<xliff:g id="UNKNOWN">%s</xliff:g> <xliff:g id="ID">%d</xliff:g>"</string>
     <string name="payphone" msgid="7106361320283710387">"Ucingo olufakwa imali"</string>
     <string name="launcherActivityLabel" msgid="9034868428899993166">"Ifoni"</string>
+    <string name="camera_privacy_text" msgid="1318954032109938588">"Imvume yekhamera inikwe amandla"</string>
+    <string name="video_call" msgid="8914878391104612532">"Ikholi yevidiyo"</string>
     <string name="call" msgid="3699617769606114168">"Shaya"</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values/strings.xml b/java/com/android/dialer/theme/res/values/strings.xml
index a14693f..af61d35 100644
--- a/java/com/android/dialer/theme/res/values/strings.xml
+++ b/java/com/android/dialer/theme/res/values/strings.xml
@@ -30,6 +30,12 @@
        used in the Launcher icon. -->
   <string name="launcherActivityLabel">Phone</string>
 
+  <!-- Text presented to the user explaining that we have enabled the camera permission automatically -->
+  <string name="camera_privacy_text">Camera permission enabled</string>
+
+  <!-- text on a button, Video call, as in to place a video call. -->
+  <string name="video_call">Video call</string>
+
   <!-- Label shown on the 'positive' button for the dialog. Indicates that the call will proceed -->
   <string name="call">Call</string>
 </resources>
diff --git a/java/com/android/dialer/theme/res/values/themes.xml b/java/com/android/dialer/theme/res/values/themes.xml
index 0d0c45f..1246826 100644
--- a/java/com/android/dialer/theme/res/values/themes.xml
+++ b/java/com/android/dialer/theme/res/values/themes.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
 <resources>
 
   <style name="DialerThemeBase" parent="@style/Theme.AppCompat.Light.DarkActionBar">
@@ -19,6 +34,20 @@
     <item name="actionBarSize">@dimen/action_bar_height</item>
   </style>
 
+  <!-- Should be kept in sync with the theme above (minus anything related to actionbars -->
+  <style name="DialerThemeBase.NoActionBar" parent="@style/Theme.AppCompat.Light.NoActionBar">
+    <item name="android:textColorPrimary">@color/dialer_primary_text_color</item>
+    <item name="android:textColorSecondary">@color/dialer_secondary_text_color</item>
+    <!-- This is used for title bar color in recents -->
+    <item name="android:colorPrimary">@color/titlebar_in_recents_background_color</item>
+    <item name="android:colorPrimaryDark">@color/dialer_theme_color_dark</item>
+    <item name="android:colorControlActivated">@color/dialer_theme_color</item>
+    <item name="android:colorButtonNormal">@color/dialer_theme_color</item>
+    <item name="android:colorAccent">@color/dialtacts_theme_color</item>
+    <item name="android:alertDialogTheme">@style/AlertDialogTheme</item>
+    <item name="android:textAppearanceButton">@style/DialerButtonTextStyle</item>
+  </style>
+
   <style name="Theme.AppCompat.Translucent" parent="Theme.AppCompat.NoActionBar">
     <item name="android:windowNoTitle">true</item>
     <item name="android:windowBackground">@android:color/transparent</item>
@@ -26,4 +55,18 @@
     <item name="android:windowIsTranslucent">true</item>
     <item name="android:windowAnimationStyle">@android:style/Animation</item>
   </style>
+
+  <style name="PrimaryText">
+    <item name="android:textColor">#DE000000</item>
+    <item name="android:textSize">16sp</item>
+    <item name="android:ellipsize">end</item>
+    <item name="android:maxLines">1</item>
+  </style>
+
+  <style name="SecondaryText">
+    <item name="android:textColor">#8A000000</item>
+    <item name="android:textSize">14sp</item>
+    <item name="android:ellipsize">end</item>
+    <item name="android:maxLines">1</item>
+  </style>
 </resources>
diff --git a/java/com/android/dialer/util/CallUtil.java b/java/com/android/dialer/util/CallUtil.java
index 81a4bb2..0afe930 100644
--- a/java/com/android/dialer/util/CallUtil.java
+++ b/java/com/android/dialer/util/CallUtil.java
@@ -21,6 +21,7 @@
 import android.telecom.PhoneAccount;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
 import com.android.dialer.phonenumberutil.PhoneNumberHelper;
 import java.util.List;
@@ -40,6 +41,9 @@
    */
   public static final int VIDEO_CALLING_PRESENCE = 2;
 
+  private static boolean hasInitializedIsVideoEnabledState;
+  private static boolean cachedIsVideoEnabledState;
+
   /** Return Uri with an appropriate scheme, accepting both SIP and usual phone call numbers. */
   public static Uri getCallUri(String number) {
     if (PhoneNumberHelper.isUriNumber(number)) {
@@ -102,7 +106,23 @@
    *     false} otherwise.
    */
   public static boolean isVideoEnabled(Context context) {
-    return (getVideoCallingAvailability(context) & VIDEO_CALLING_ENABLED) != 0;
+    boolean isVideoEnabled = (getVideoCallingAvailability(context) & VIDEO_CALLING_ENABLED) != 0;
+
+    // Log everytime the video enabled state changes.
+    if (!hasInitializedIsVideoEnabledState) {
+      LogUtil.i("CallUtil.isVideoEnabled", "isVideoEnabled: " + isVideoEnabled);
+      hasInitializedIsVideoEnabledState = true;
+      cachedIsVideoEnabledState = isVideoEnabled;
+    } else if (cachedIsVideoEnabledState != isVideoEnabled) {
+      LogUtil.i(
+          "CallUtil.isVideoEnabled",
+          "isVideoEnabled changed from %b to %b",
+          cachedIsVideoEnabledState,
+          isVideoEnabled);
+      cachedIsVideoEnabledState = isVideoEnabled;
+    }
+
+    return isVideoEnabled;
   }
 
   /**
diff --git a/java/com/android/dialer/util/PermissionsUtil.java b/java/com/android/dialer/util/PermissionsUtil.java
index 466e862..3482831 100644
--- a/java/com/android/dialer/util/PermissionsUtil.java
+++ b/java/com/android/dialer/util/PermissionsUtil.java
@@ -16,15 +16,33 @@
 
 package com.android.dialer.util;
 
+import static android.Manifest.permission.ACCESS_COARSE_LOCATION;
+import static android.Manifest.permission.ACCESS_FINE_LOCATION;
+import static android.Manifest.permission.ADD_VOICEMAIL;
+import static android.Manifest.permission.CALL_PHONE;
+import static android.Manifest.permission.MODIFY_PHONE_STATE;
+import static android.Manifest.permission.READ_CALL_LOG;
+import static android.Manifest.permission.READ_CONTACTS;
+import static android.Manifest.permission.READ_PHONE_STATE;
+import static android.Manifest.permission.READ_VOICEMAIL;
+import static android.Manifest.permission.WRITE_CALL_LOG;
+import static android.Manifest.permission.WRITE_CONTACTS;
+import static android.Manifest.permission.WRITE_VOICEMAIL;
+
 import android.Manifest.permission;
 import android.content.BroadcastReceiver;
 import android.content.Context;
 import android.content.Intent;
 import android.content.IntentFilter;
 import android.content.pm.PackageManager;
+import android.support.annotation.NonNull;
 import android.support.v4.content.ContextCompat;
 import android.support.v4.content.LocalBroadcastManager;
 import com.android.dialer.common.LogUtil;
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.Collections;
+import java.util.List;
 
 /** Utility class to help with runtime permissions. */
 public class PermissionsUtil {
@@ -32,6 +50,27 @@
   private static final String PERMISSION_PREFERENCE = "dialer_permissions";
   private static final String CEQUINT_PERMISSION = "com.cequint.ecid.CALLER_ID_LOOKUP";
 
+  // Permissions list retrieved from application manifest.
+  // Starting in Android O Permissions must be explicitly enumerated:
+  // https://developer.android.com/preview/behavior-changes.html#rmp
+  public static final List<String> allPhoneGroupPermissionsUsedInDialer =
+      Collections.unmodifiableList(
+          Arrays.asList(
+              READ_CALL_LOG,
+              WRITE_CALL_LOG,
+              READ_PHONE_STATE,
+              MODIFY_PHONE_STATE,
+              CALL_PHONE,
+              ADD_VOICEMAIL,
+              WRITE_VOICEMAIL,
+              READ_VOICEMAIL));
+
+  public static final List<String> allContactsGroupPermissionsUsedInDialer =
+      Collections.unmodifiableList(Arrays.asList(READ_CONTACTS, WRITE_CONTACTS));
+
+  public static final List<String> allLocationGroupPermissionsUsedInDialer =
+      Collections.unmodifiableList(Arrays.asList(ACCESS_FINE_LOCATION, ACCESS_COARSE_LOCATION));
+
   public static boolean hasPhonePermissions(Context context) {
     return hasPermission(context, permission.CALL_PHONE);
   }
@@ -147,4 +186,25 @@
     final Intent intent = new Intent(permission);
     LocalBroadcastManager.getInstance(context).sendBroadcast(intent);
   }
+
+  /**
+   * Returns a list of permissions currently not granted to the application from the supplied list.
+   *
+   * @param context - The Application context.
+   * @param permissionsList - A list of permissions to check if the current application has been
+   *     granted.
+   * @return An array of permissions that are currently DENIED to the application; a subset of
+   *     permissionsList.
+   */
+  @NonNull
+  public static String[] getPermissionsCurrentlyDenied(
+      @NonNull Context context, @NonNull List<String> permissionsList) {
+    List<String> permissionsCurrentlyDenied = new ArrayList<>();
+    for (String permission : permissionsList) {
+      if (!hasPermission(context, permission)) {
+        permissionsCurrentlyDenied.add(permission);
+      }
+    }
+    return permissionsCurrentlyDenied.toArray(new String[permissionsCurrentlyDenied.size()]);
+  }
 }
diff --git a/java/com/android/dialer/widget/DialerToolbar.java b/java/com/android/dialer/widget/DialerToolbar.java
index 9e10583..fe0e861 100644
--- a/java/com/android/dialer/widget/DialerToolbar.java
+++ b/java/com/android/dialer/widget/DialerToolbar.java
@@ -41,6 +41,11 @@
     setNavigationIcon(R.drawable.quantum_ic_close_white_24);
     setNavigationContentDescription(R.string.toolbar_close);
     setNavigationOnClickListener(v -> ((Activity) context).finish());
+    setPaddingRelative(
+        getPaddingStart(),
+        getPaddingTop(),
+        getResources().getDimensionPixelSize(R.dimen.toolbar_end_padding),
+        getPaddingBottom());
   }
 
   @Override
diff --git a/java/com/android/dialer/app/widget/EmptyContentView.java b/java/com/android/dialer/widget/EmptyContentView.java
similarity index 87%
rename from java/com/android/dialer/app/widget/EmptyContentView.java
rename to java/com/android/dialer/widget/EmptyContentView.java
index cfc8665..a76ab98 100644
--- a/java/com/android/dialer/app/widget/EmptyContentView.java
+++ b/java/com/android/dialer/widget/EmptyContentView.java
@@ -14,16 +14,16 @@
  * limitations under the License.
  */
 
-package com.android.dialer.app.widget;
+package com.android.dialer.widget;
 
 import android.content.Context;
+import android.support.annotation.StringRes;
 import android.util.AttributeSet;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.widget.ImageView;
 import android.widget.LinearLayout;
 import android.widget.TextView;
-import com.android.dialer.app.R;
 
 public class EmptyContentView extends LinearLayout implements View.OnClickListener {
 
@@ -40,6 +40,8 @@
   private TextView mActionView;
   private OnEmptyViewActionButtonClickedListener mOnActionButtonClickedListener;
 
+  private @StringRes int actionLabel;
+
   public EmptyContentView(Context context) {
     this(context, null);
   }
@@ -58,9 +60,9 @@
 
     // Don't let touches fall through the empty view.
     setClickable(true);
-    mImageView = (ImageView) findViewById(R.id.emptyListViewImage);
-    mDescriptionView = (TextView) findViewById(R.id.emptyListViewMessage);
-    mActionView = (TextView) findViewById(R.id.emptyListViewAction);
+    mImageView = (ImageView) findViewById(R.id.empty_list_view_image);
+    mDescriptionView = (TextView) findViewById(R.id.empty_list_view_message);
+    mActionView = (TextView) findViewById(R.id.empty_list_view_action);
     mActionView.setOnClickListener(this);
   }
 
@@ -84,7 +86,8 @@
     }
   }
 
-  public void setActionLabel(int resourceId) {
+  public void setActionLabel(@StringRes int resourceId) {
+    actionLabel = resourceId;
     if (resourceId == NO_LABEL) {
       mActionView.setText(null);
       mActionView.setVisibility(View.GONE);
@@ -94,6 +97,10 @@
     }
   }
 
+  public @StringRes int getActionLabel() {
+    return actionLabel;
+  }
+
   public boolean isShowingContent() {
     return mImageView.getVisibility() == View.VISIBLE
         || mDescriptionView.getVisibility() == View.VISIBLE
@@ -117,5 +124,4 @@
         (LayoutInflater) getContext().getSystemService(Context.LAYOUT_INFLATER_SERVICE);
     inflater.inflate(R.layout.empty_content_view, this);
   }
-
 }
diff --git a/java/com/android/incallui/incall/impl/LockableViewPager.java b/java/com/android/dialer/widget/LockableViewPager.java
similarity index 92%
rename from java/com/android/incallui/incall/impl/LockableViewPager.java
rename to java/com/android/dialer/widget/LockableViewPager.java
index 5b8b126..b5d4022 100644
--- a/java/com/android/incallui/incall/impl/LockableViewPager.java
+++ b/java/com/android/dialer/widget/LockableViewPager.java
@@ -14,7 +14,7 @@
  * limitations under the License.
  */
 
-package com.android.incallui.incall.impl;
+package com.android.dialer.widget;
 
 import android.content.Context;
 import android.support.v4.view.ViewPager;
@@ -34,6 +34,10 @@
     this.swipingLocked = swipingLocked;
   }
 
+  public boolean isSwipingLocked() {
+    return swipingLocked;
+  }
+
   @Override
   public boolean onInterceptTouchEvent(MotionEvent motionEvent) {
     return !swipingLocked && super.onInterceptTouchEvent(motionEvent);
diff --git a/java/com/android/dialer/widget/MessageFragment.java b/java/com/android/dialer/widget/MessageFragment.java
index b136f47..615ad3b 100644
--- a/java/com/android/dialer/widget/MessageFragment.java
+++ b/java/com/android/dialer/widget/MessageFragment.java
@@ -23,6 +23,7 @@
 import android.text.InputFilter;
 import android.text.TextUtils;
 import android.text.TextWatcher;
+import android.view.KeyEvent;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.View.OnClickListener;
@@ -31,11 +32,13 @@
 import android.widget.ImageView;
 import android.widget.LinearLayout;
 import android.widget.TextView;
+import android.widget.TextView.OnEditorActionListener;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.FragmentUtils;
 
 /** Fragment used to compose call with message fragment. */
-public class MessageFragment extends Fragment implements OnClickListener, TextWatcher {
+public class MessageFragment extends Fragment
+    implements OnClickListener, TextWatcher, OnEditorActionListener {
   private static final String CHAR_LIMIT_KEY = "char_limit";
   private static final String SHOW_SEND_ICON_KEY = "show_send_icon";
   private static final String MESSAGE_LIST_KEY = "message_list";
@@ -69,7 +72,7 @@
       LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
     View view = inflater.inflate(R.layout.fragment_message, container, false);
 
-    sendMessage = (ImageView) view.findViewById(R.id.send_message);
+    sendMessage = view.findViewById(R.id.send_message);
     sendMessageContainer = view.findViewById(R.id.count_and_send_container);
     if (getArguments().getBoolean(SHOW_SEND_ICON_KEY, false)) {
       sendMessage.setVisibility(View.VISIBLE);
@@ -77,18 +80,19 @@
       sendMessageContainer.setOnClickListener(this);
     }
 
-    customMessage = (EditText) view.findViewById(R.id.custom_message);
+    customMessage = view.findViewById(R.id.custom_message);
     customMessage.addTextChangedListener(this);
+    customMessage.setOnEditorActionListener(this);
     charLimit = getArguments().getInt(CHAR_LIMIT_KEY, NO_CHAR_LIMIT);
     if (charLimit != NO_CHAR_LIMIT) {
-      remainingChar = (TextView) view.findViewById(R.id.remaining_characters);
+      remainingChar = view.findViewById(R.id.remaining_characters);
       remainingChar.setVisibility(View.VISIBLE);
-      remainingChar = (TextView) view.findViewById(R.id.remaining_characters);
-      remainingChar.setText("" + charLimit);
+      remainingChar = view.findViewById(R.id.remaining_characters);
+      remainingChar.setText(Integer.toString(charLimit));
       customMessage.setFilters(new InputFilter[] {new InputFilter.LengthFilter(charLimit)});
     }
 
-    LinearLayout messageContainer = (LinearLayout) view.findViewById(R.id.message_container);
+    LinearLayout messageContainer = view.findViewById(R.id.message_container);
     for (String message : getArguments().getStringArray(MESSAGE_LIST_KEY)) {
       TextView textView = (TextView) inflater.inflate(R.layout.selectable_text_view, null);
       textView.setOnClickListener(this);
@@ -123,11 +127,20 @@
   @Override
   public void afterTextChanged(Editable s) {
     if (charLimit != NO_CHAR_LIMIT) {
-      remainingChar.setText("" + (charLimit - s.length()));
+      remainingChar.setText(Integer.toString(charLimit - s.length()));
     }
     getListener().onMessageFragmentAfterTextChange(s.toString());
   }
 
+  @Override
+  public boolean onEditorAction(TextView v, int actionId, KeyEvent event) {
+    if (getMessage() == null) {
+      return false;
+    }
+    getListener().onMessageFragmentSendMessage(getMessage());
+    return true;
+  }
+
   private Listener getListener() {
     return FragmentUtils.getParentUnsafe(this, Listener.class);
   }
diff --git a/java/com/android/dialer/app/res/drawable-hdpi/empty_contacts.png b/java/com/android/dialer/widget/res/drawable-hdpi/empty_contacts.png
similarity index 100%
rename from java/com/android/dialer/app/res/drawable-hdpi/empty_contacts.png
rename to java/com/android/dialer/widget/res/drawable-hdpi/empty_contacts.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-mdpi/empty_contacts.png b/java/com/android/dialer/widget/res/drawable-mdpi/empty_contacts.png
similarity index 100%
rename from java/com/android/dialer/app/res/drawable-mdpi/empty_contacts.png
rename to java/com/android/dialer/widget/res/drawable-mdpi/empty_contacts.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xhdpi/empty_contacts.png b/java/com/android/dialer/widget/res/drawable-xhdpi/empty_contacts.png
similarity index 100%
rename from java/com/android/dialer/app/res/drawable-xhdpi/empty_contacts.png
rename to java/com/android/dialer/widget/res/drawable-xhdpi/empty_contacts.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxhdpi/empty_contacts.png b/java/com/android/dialer/widget/res/drawable-xxhdpi/empty_contacts.png
similarity index 100%
rename from java/com/android/dialer/app/res/drawable-xxhdpi/empty_contacts.png
rename to java/com/android/dialer/widget/res/drawable-xxhdpi/empty_contacts.png
Binary files differ
diff --git a/java/com/android/dialer/app/res/drawable-xxxhdpi/empty_contacts.png b/java/com/android/dialer/widget/res/drawable-xxxhdpi/empty_contacts.png
similarity index 100%
rename from java/com/android/dialer/app/res/drawable-xxxhdpi/empty_contacts.png
rename to java/com/android/dialer/widget/res/drawable-xxxhdpi/empty_contacts.png
Binary files differ
diff --git a/java/com/android/dialer/widget/res/layout-land/empty_content_view.xml b/java/com/android/dialer/widget/res/layout-land/empty_content_view.xml
new file mode 100644
index 0000000..00344bf
--- /dev/null
+++ b/java/com/android/dialer/widget/res/layout-land/empty_content_view.xml
@@ -0,0 +1,56 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2015 The Android Open Source Project
+
+     Licensed under the Apache License, Version 2.0 (the "License");
+     you may not use this file except in compliance with the License.
+     You may obtain a copy of the License at
+
+          http://www.apache.org/licenses/LICENSE-2.0
+
+     Unless required by applicable law or agreed to in writing, software
+     distributed under the License is distributed on an "AS IS" BASIS,
+     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+     See the License for the specific language governing permissions and
+     limitations under the License.
+-->
+
+<merge xmlns:android="http://schemas.android.com/apk/res/android">
+  <ImageView
+      android:id="@+id/empty_list_view_image"
+      android:layout_width="match_parent"
+      android:layout_height="0dp"
+      android:layout_weight="1"
+      android:maxHeight="126dp"
+      android:gravity="center_horizontal"/>
+
+  <TextView
+      android:id="@+id/empty_list_view_message"
+      android:layout_width="match_parent"
+      android:layout_height="wrap_content"
+      android:paddingTop="8dp"
+      android:paddingBottom="8dp"
+      android:paddingLeft="16dp"
+      android:paddingRight="16dp"
+      android:gravity="center_horizontal|top"
+      android:textColor="@color/empty_list_text_color"
+      android:textSize="@dimen/empty_list_message_text_size"/>
+
+  <TextView
+      android:id="@+id/empty_list_view_action"
+      style="@style/TextActionStyle"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_gravity="center_horizontal"
+      android:paddingTop="8dp"
+      android:paddingBottom="8dp"
+      android:paddingLeft="16dp"
+      android:paddingRight="16dp"
+      android:background="?android:attr/selectableItemBackground"
+      android:clickable="true"
+      android:gravity="center_horizontal"/>
+
+  <Space
+      android:layout_width="match_parent"
+      android:layout_height="40dp"/>
+
+</merge>
diff --git a/java/com/android/dialer/widget/res/layout/dialer_toolbar.xml b/java/com/android/dialer/widget/res/layout/dialer_toolbar.xml
index c4aac65..023b0ff 100644
--- a/java/com/android/dialer/widget/res/layout/dialer_toolbar.xml
+++ b/java/com/android/dialer/widget/res/layout/dialer_toolbar.xml
@@ -29,7 +29,9 @@
         android:gravity="top"
         android:textSize="@dimen/toolbar_title_text_size"
         android:textColor="@color/background_dialer_white"
-        android:fontFamily="sans-serif-medium"/>
+        android:fontFamily="sans-serif-medium"
+        android:maxLines="1"
+        android:ellipsize="end"/>
 
     <TextView
         android:id="@+id/subtitle"
@@ -37,6 +39,8 @@
         android:layout_height="wrap_content"
         android:textSize="@dimen/toolbar_subtitle_text_size"
         android:textColor="@color/background_dialer_white"
-        android:visibility="gone"/>
+        android:visibility="gone"
+        android:maxLines="1"
+        android:ellipsize="end"/>
   </LinearLayout>
 </merge>
\ No newline at end of file
diff --git a/java/com/android/dialer/app/res/layout/empty_content_view.xml b/java/com/android/dialer/widget/res/layout/empty_content_view.xml
similarity index 92%
rename from java/com/android/dialer/app/res/layout/empty_content_view.xml
rename to java/com/android/dialer/widget/res/layout/empty_content_view.xml
index 96a6a02..1777443 100644
--- a/java/com/android/dialer/app/res/layout/empty_content_view.xml
+++ b/java/com/android/dialer/widget/res/layout/empty_content_view.xml
@@ -16,13 +16,13 @@
 
 <merge xmlns:android="http://schemas.android.com/apk/res/android">
   <ImageView
-    android:id="@+id/emptyListViewImage"
+    android:id="@+id/empty_list_view_image"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:gravity="center_horizontal"/>
 
   <TextView
-    android:id="@+id/emptyListViewMessage"
+    android:id="@+id/empty_list_view_message"
     android:layout_width="match_parent"
     android:layout_height="wrap_content"
     android:paddingTop="8dp"
@@ -34,7 +34,7 @@
     android:textSize="@dimen/empty_list_message_text_size"/>
 
   <TextView
-    android:id="@+id/emptyListViewAction"
+    android:id="@+id/empty_list_view_action"
     style="@style/TextActionStyle"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
diff --git a/java/com/android/dialer/widget/res/layout/fragment_message.xml b/java/com/android/dialer/widget/res/layout/fragment_message.xml
index e39e03a..5b0bab5 100644
--- a/java/com/android/dialer/widget/res/layout/fragment_message.xml
+++ b/java/com/android/dialer/widget/res/layout/fragment_message.xml
@@ -48,7 +48,9 @@
       android:textColorHint="@color/dialer_edit_text_hint_color"
       android:background="@color/background_dialer_white"
       android:textCursorDrawable="@drawable/searchedittext_custom_cursor"
-      android:layout_toStartOf="@+id/count_and_send_container"/>
+      android:layout_toStartOf="@+id/count_and_send_container"
+      android:inputType="textShortMessage|textCapSentences"
+      android:imeOptions="actionSend"/>
 
     <LinearLayout
       android:id="@+id/count_and_send_container"
diff --git a/java/com/android/dialer/widget/res/values-af/strings.xml b/java/com/android/dialer/widget/res/values-af/strings.xml
index 7c5e83a..0c21ae9 100644
--- a/java/com/android/dialer/widget/res/values-af/strings.xml
+++ b/java/com/android/dialer/widget/res/values-af/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skryf \'n gepasmaakte boodskap"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Maak toe"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Jy het nog nie enige kontakte nie"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Skep nuwe kontak"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Skakel aan"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Skakel die kontaktetoestemming aan om jou kontakte te sien."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Geen kontakte-program beskikbaar nie"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-am/strings.xml b/java/com/android/dialer/widget/res/values-am/strings.xml
index f11b468..3952e83 100644
--- a/java/com/android/dialer/widget/res/values-am/strings.xml
+++ b/java/com/android/dialer/widget/res/values-am/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ብጁ መልዕክት ይጻፉ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ዝጋ"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ገና ምንም እውቂያዎች የሉዎትም"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"አብራ"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"የእርስዎን እውቂያዎች ለማየት፣ የእውቂያዎች ፍቃዱን ያብሩ።"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"ምንም የእውቂያዎች መተግበሪያ አይገኝም"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ar/strings.xml b/java/com/android/dialer/widget/res/values-ar/strings.xml
index cb2e733..26ed748 100644
--- a/java/com/android/dialer/widget/res/values-ar/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ar/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"كتابة رسالة مخصصة"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"إغلاق"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ليست لديك أية جهات اتصال حتى الآن"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"إنشاء جهة اتصال"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"تشغيل"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"للاطلاع على جهات الاتصال، شغِّل إذن جهات الاتصال."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"لا يتوفر تطبيق لجهات الاتصال"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-az/strings.xml b/java/com/android/dialer/widget/res/values-az/strings.xml
index 3860a58..cb40af6 100644
--- a/java/com/android/dialer/widget/res/values-az/strings.xml
+++ b/java/com/android/dialer/widget/res/values-az/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Fərdi mesaj yazın"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Bağlayın"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Hələ heç bir kontakt yoxdur"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktiv edin"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kontaktları görmək üçün Kontakt icazəsini aktiv edin."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Kontakt tətbiqi əlçatan deyil"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-b+sr+Latn/strings.xml b/java/com/android/dialer/widget/res/values-b+sr+Latn/strings.xml
index daefd90..fea3cb0 100644
--- a/java/com/android/dialer/widget/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/dialer/widget/res/values-b+sr+Latn/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napišite prilagođenu poruku"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zatvorite"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Još uvek nemate nijedan kontakt"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Napravi novi kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Uključi"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Da biste videli kontakte, uključite dozvolu za Kontakte."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nema dostupne aplikacije za kontakte"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-be/strings.xml b/java/com/android/dialer/widget/res/values-be/strings.xml
index 8786132..6805984 100644
--- a/java/com/android/dialer/widget/res/values-be/strings.xml
+++ b/java/com/android/dialer/widget/res/values-be/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Напісаць карыстальніцкае паведамленне"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Закрыць"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"У вас пакуль няма ніякіх кантактаў"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Уключыць"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Каб бачыць свае кантакты, уключыце дазвол для Кантактаў."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Праграмы для аперацый з кантактамі няма"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-bg/strings.xml b/java/com/android/dialer/widget/res/values-bg/strings.xml
index 35e980c..fbb87d0 100644
--- a/java/com/android/dialer/widget/res/values-bg/strings.xml
+++ b/java/com/android/dialer/widget/res/values-bg/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Напишете свое съобщение"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Затваряне"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Още нямате контакти"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Създаване на нов контакт"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Включване"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"За да видите контактите си, включете разрешението за Контакти."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Няма налично приложение за контакти"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-bn/strings.xml b/java/com/android/dialer/widget/res/values-bn/strings.xml
index 9e17071..58bf44c 100644
--- a/java/com/android/dialer/widget/res/values-bn/strings.xml
+++ b/java/com/android/dialer/widget/res/values-bn/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"একটি কাস্টম বার্তা লিখুন"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"বন্ধ করুন"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"আপনার এখনও পর্যন্ত কোনো পরিচিতি নেই"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"নতুন পরিচিতি তৈরি করুন"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"চালু করুন"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"আপনার পরিচিতিগুলি দেখতে, পরিচিতিগুলির অনুমতি চালু করুন।"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"কোনো পরিচিতি অ্যাপ্লিকেশান উপলব্ধ নয়"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-bs/strings.xml b/java/com/android/dialer/widget/res/values-bs/strings.xml
index 0bc1a9c..239c074 100644
--- a/java/com/android/dialer/widget/res/values-bs/strings.xml
+++ b/java/com/android/dialer/widget/res/values-bs/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napišite prilagođenu poruku"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zatvori"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Još nemate nijedan kontakt"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Kreirajte novi kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Uključi"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Da vidite kontakte, uključite dozvolu za Kontakte."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nije dostupna nijedna aplikacija za kontakte"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ca/strings.xml b/java/com/android/dialer/widget/res/values-ca/strings.xml
index 8639300..8f01cb5 100644
--- a/java/com/android/dialer/widget/res/values-ca/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ca/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escriu un miss. personalitzat"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Tanca"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Encara no tens cap contacte"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activa"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Activa el permís Contactes per veure els teus contactes."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No hi ha cap contacte disponible"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-cs/strings.xml b/java/com/android/dialer/widget/res/values-cs/strings.xml
index 829aab8..ee8d140 100644
--- a/java/com/android/dialer/widget/res/values-cs/strings.xml
+++ b/java/com/android/dialer/widget/res/values-cs/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napište vlastní zprávu"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zavřít"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Zatím nemáte žádné kontakty"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Povolit"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Pokud chcete zobrazit kontakty, povolte aplikaci přístup ke Kontaktům."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Není k dispozici žádná aplikace pro práci s kontakty"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-da/strings.xml b/java/com/android/dialer/widget/res/values-da/strings.xml
index 9381f36..0e44948 100644
--- a/java/com/android/dialer/widget/res/values-da/strings.xml
+++ b/java/com/android/dialer/widget/res/values-da/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skriv en tilpasset besked"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Luk"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Du har endnu ikke nogen kontaktpersoner"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Slå til"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Slå tilladelsen Kontaktpersoner til for at se dine kontaktpersoner."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Der er ingen tilgængelig app til kontaktpersoner"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-de/strings.xml b/java/com/android/dialer/widget/res/values-de/strings.xml
index 949fe9e..f650df9 100644
--- a/java/com/android/dialer/widget/res/values-de/strings.xml
+++ b/java/com/android/dialer/widget/res/values-de/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Eigene Nachricht schreiben"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Schließen"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Du hast noch keine Kontakte"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Neuen Kontakt erstellen"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktivieren"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Aktiviere die Berechtigung \"Kontakte\", um deine Kontakte abzurufen."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Keine Kontakte-App verfügbar"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-el/strings.xml b/java/com/android/dialer/widget/res/values-el/strings.xml
index 21e049b..849fd6a 100644
--- a/java/com/android/dialer/widget/res/values-el/strings.xml
+++ b/java/com/android/dialer/widget/res/values-el/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Γράψτε ένα προσαρμ. μήνυμα"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Κλείσιμο"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Δεν έχετε επαφές ακόμη"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ενεργοποίηση"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Για να δείτε τις επαφές σας, ενεργοποιήστε την άδεια πρόσβασης στις Επαφές."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Δεν υπάρχει διαθέσιμη εφαρμογή επαφών"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-en-rAU/strings.xml b/java/com/android/dialer/widget/res/values-en-rAU/strings.xml
index 7f22b46..33cba33 100644
--- a/java/com/android/dialer/widget/res/values-en-rAU/strings.xml
+++ b/java/com/android/dialer/widget/res/values-en-rAU/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Write a custom message"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Close"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"You don\'t have any contacts yet"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Create new contact"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Turn on"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"To see your contacts, turn on the Contacts permission."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No contacts app available"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-en-rGB/strings.xml b/java/com/android/dialer/widget/res/values-en-rGB/strings.xml
index 7f22b46..33cba33 100644
--- a/java/com/android/dialer/widget/res/values-en-rGB/strings.xml
+++ b/java/com/android/dialer/widget/res/values-en-rGB/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Write a custom message"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Close"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"You don\'t have any contacts yet"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Create new contact"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Turn on"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"To see your contacts, turn on the Contacts permission."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No contacts app available"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-en-rIN/strings.xml b/java/com/android/dialer/widget/res/values-en-rIN/strings.xml
index 7f22b46..33cba33 100644
--- a/java/com/android/dialer/widget/res/values-en-rIN/strings.xml
+++ b/java/com/android/dialer/widget/res/values-en-rIN/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Write a custom message"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Close"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"You don\'t have any contacts yet"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Create new contact"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Turn on"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"To see your contacts, turn on the Contacts permission."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No contacts app available"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-es-rUS/strings.xml b/java/com/android/dialer/widget/res/values-es-rUS/strings.xml
index c7fbdaa..8c257b2 100644
--- a/java/com/android/dialer/widget/res/values-es-rUS/strings.xml
+++ b/java/com/android/dialer/widget/res/values-es-rUS/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escribe tu propio mensaje"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Cerrar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Aún no tienes contactos"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver los contactos, activa el permiso Contactos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No hay ninguna app de contactos disponible"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-es/strings.xml b/java/com/android/dialer/widget/res/values-es/strings.xml
index 507e8af..dcb695e 100644
--- a/java/com/android/dialer/widget/res/values-es/strings.xml
+++ b/java/com/android/dialer/widget/res/values-es/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Mensaje personalizado"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Cerrar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Aún no tienes contactos"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Crear un contacto"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver tus contactos, activa el permiso de Contactos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"No hay aplicaciones de contactos disponibles"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-et/strings.xml b/java/com/android/dialer/widget/res/values-et/strings.xml
index 71dab42..f7357c2 100644
--- a/java/com/android/dialer/widget/res/values-et/strings.xml
+++ b/java/com/android/dialer/widget/res/values-et/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Kirjutage kohandatud sõnum"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Sule"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Teil pole veel kontakte"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Lülita sisse"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kontaktide vaatamiseks lülitage sisse kontaktide luba."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Kontaktide rakendus pole saadaval"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-eu/strings.xml b/java/com/android/dialer/widget/res/values-eu/strings.xml
index b8e4085..f4d0d1d 100644
--- a/java/com/android/dialer/widget/res/values-eu/strings.xml
+++ b/java/com/android/dialer/widget/res/values-eu/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Idatzi mezu bat"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Itxi"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Oraindik ez duzu kontakturik"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktibatu"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kontaktuak ikusteko, aktibatu Kontaktuak atzitzeko baimena."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Ez dago kontaktu-aplikaziorik erabilgarri"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-fa/strings.xml b/java/com/android/dialer/widget/res/values-fa/strings.xml
index 0c3b1d4..9168ac2 100644
--- a/java/com/android/dialer/widget/res/values-fa/strings.xml
+++ b/java/com/android/dialer/widget/res/values-fa/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"پیام سفارشی بنویسید"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"بستن"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"هنوز هیچ مخاطبی ندارید"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"فعال‌سازی"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"برای دیدن مخاطبینتان، مجوز «مخاطبین» را روشن کنید."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"هیچ برنامه مخاطبی در دسترس نیست"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-fi/strings.xml b/java/com/android/dialer/widget/res/values-fi/strings.xml
index e0e971c..80f1902 100644
--- a/java/com/android/dialer/widget/res/values-fi/strings.xml
+++ b/java/com/android/dialer/widget/res/values-fi/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Kirjoita oma viesti"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Sulje"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Sinulla ei ole vielä yhteystietoja."</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ota käyttöön"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Jos haluat katsella yhteystietojasi, ota Yhteystiedot-käyttöoikeus käyttöön."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Yhteystietosovellusta ei ole käytettävissä."</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-fr-rCA/strings.xml b/java/com/android/dialer/widget/res/values-fr-rCA/strings.xml
index 9776385..7785509 100644
--- a/java/com/android/dialer/widget/res/values-fr-rCA/strings.xml
+++ b/java/com/android/dialer/widget/res/values-fr-rCA/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Rédiger message personnalisé"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Fermer"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Vous n\'avez pas encore de contacts"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Créer un contact"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activer"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Pour consulter vos contacts, activez l\'autorisation Contacts."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Aucune application Contacts n\'est disponible"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-fr/strings.xml b/java/com/android/dialer/widget/res/values-fr/strings.xml
index fececd8..be8810f 100644
--- a/java/com/android/dialer/widget/res/values-fr/strings.xml
+++ b/java/com/android/dialer/widget/res/values-fr/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Écrire mon propre message"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Fermer"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Vous n\'avez pas encore de contacts."</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Créer un contact"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activer"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Pour consulter vos contacts, activez l\'autorisation Contacts."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Aucune application de gestion des contacts n\'est disponible"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-gl/strings.xml b/java/com/android/dialer/widget/res/values-gl/strings.xml
index 6a75681..a519e68 100644
--- a/java/com/android/dialer/widget/res/values-gl/strings.xml
+++ b/java/com/android/dialer/widget/res/values-gl/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escribe unha mensaxe personalizada"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Pechar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Aínda non tes ningún contacto"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Crear novo contacto"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver os teus contactos, activa o permiso de Contactos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Non hai ningunha aplicación de contactos dispoñible"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-gu/strings.xml b/java/com/android/dialer/widget/res/values-gu/strings.xml
index c2f8cf0..81e6f10 100644
--- a/java/com/android/dialer/widget/res/values-gu/strings.xml
+++ b/java/com/android/dialer/widget/res/values-gu/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"એક કસ્ટમ સંદેશ લખો"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"બંધ કરો"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"તમે હજી સુધી કોઇપણ સંપર્કો ધરાવતાં નથી"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"નવો સંપર્ક બનાવો"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ચાલુ કરો"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"તમારા સંપર્કો જોવા માટે, સંપર્કોની પરવાનગી ચાલુ કરો."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"કોઈ સંપર્કો ઍપ્લિકેશન ઉપલબ્ધ નથી"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-hi/strings.xml b/java/com/android/dialer/widget/res/values-hi/strings.xml
index 63c94e7..622cdca 100644
--- a/java/com/android/dialer/widget/res/values-hi/strings.xml
+++ b/java/com/android/dialer/widget/res/values-hi/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"कोई कस्टम संदेश लिखें"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"बंद करें"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"आपके पास अभी कोई भी संपर्क नहीं है"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"नया संपर्क बनाएं"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"चालू करें"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"अपने संपर्क देखने के लिए, संपर्क अनुमति चालू करें."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"कोई भी संपर्क ऐप उपलब्‍ध नहीं है"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-hr/strings.xml b/java/com/android/dialer/widget/res/values-hr/strings.xml
index 28a58d4..7254bc0 100644
--- a/java/com/android/dialer/widget/res/values-hr/strings.xml
+++ b/java/com/android/dialer/widget/res/values-hr/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napišite prilagođenu poruku"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zatvaranje"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Još nemate nijedan kontakt"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Uključi"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Da biste vidjeli svoje kontakte, uključite dopuštenje za kontakte."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nije dostupna nijedna aplikacija za kontakte"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-hu/strings.xml b/java/com/android/dialer/widget/res/values-hu/strings.xml
index dcd2b36..5301d69 100644
--- a/java/com/android/dialer/widget/res/values-hu/strings.xml
+++ b/java/com/android/dialer/widget/res/values-hu/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Egyéni üzenet írása"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Bezárás"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Még nem rendelkezik egyetlen névjeggyel sem"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Bekapcsolás"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"A névjegyek megtekintéséhez kapcsolja be a Névjegyek engedélyt."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nincs elérhető névjegykezelő alkalmazás"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-hy/strings.xml b/java/com/android/dialer/widget/res/values-hy/strings.xml
index 7b78bb2..95d0b73 100644
--- a/java/com/android/dialer/widget/res/values-hy/strings.xml
+++ b/java/com/android/dialer/widget/res/values-hy/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Գրել տեքստն ինքնուրույն"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Փակել"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Դեռ կոնտակտներ չունեք"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Ստեղծել նոր կոնտակտ"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Միացնել"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Ձեր կոնտակտները տեսնելու համար միացրեք Կոնտակտների թույլտվությունը:"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Կոնտակտների հավելված չկա"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-in/strings.xml b/java/com/android/dialer/widget/res/values-in/strings.xml
index b4b6550..98dfe7b 100644
--- a/java/com/android/dialer/widget/res/values-in/strings.xml
+++ b/java/com/android/dialer/widget/res/values-in/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Tulis pesan khusus"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Tutup"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Anda belum memiliki kontak"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktifkan"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Untuk melihat kontak, aktifkan izin Kontak."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Aplikasi kontak tidak tersedia"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-is/strings.xml b/java/com/android/dialer/widget/res/values-is/strings.xml
index fd84419..22485aa 100644
--- a/java/com/android/dialer/widget/res/values-is/strings.xml
+++ b/java/com/android/dialer/widget/res/values-is/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skrifa sérsniðin skilaboð"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Loka"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Þú ert ekki með neina tengiliði enn sem komið er"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Kveikja"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kveiktu á tengiliðaheimildinni til að sjá tengiliðina þína."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Ekkert tengiliðaforrit í boði"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-it/strings.xml b/java/com/android/dialer/widget/res/values-it/strings.xml
index 0af3fd2..059a7d6 100644
--- a/java/com/android/dialer/widget/res/values-it/strings.xml
+++ b/java/com/android/dialer/widget/res/values-it/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Scrivi un messaggio personalizzato"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Chiudi"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Nessun contatto disponibile"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Attiva"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Per accedere ai tuoi contatti, attiva l\'autorizzazione Contatti."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nessuna app di contatti disponibile"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-iw/strings.xml b/java/com/android/dialer/widget/res/values-iw/strings.xml
index a485888..48bf219 100644
--- a/java/com/android/dialer/widget/res/values-iw/strings.xml
+++ b/java/com/android/dialer/widget/res/values-iw/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"כתוב הודעה מותאמת אישית"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"סגירה"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"עדיין אין לך אנשי קשר"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"איש קשר חדש"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"הפעלה"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"עליך להפעיל את ההרשאה \'אנשי קשר\' כדי להציג את אנשי הקשר שלך."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"אין אף אפליקציה לניהול אנשי קשר"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ja/strings.xml b/java/com/android/dialer/widget/res/values-ja/strings.xml
index 9fd65a8..969ffba 100644
--- a/java/com/android/dialer/widget/res/values-ja/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ja/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"カスタム メッセージを入力"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"閉じる"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"連絡先はまだありません"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ON にする"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"連絡先を表示するには、連絡先へのアクセスを許可する設定を ON にしてください。"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"利用できる連絡先アプリがありません"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ka/strings.xml b/java/com/android/dialer/widget/res/values-ka/strings.xml
index 6dde044..fcd4543 100644
--- a/java/com/android/dialer/widget/res/values-ka/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ka/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"დაწერეთ მორგებ. შეტყობინება"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"დახურვა"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"კონტაქტები ჯერ არ გაქვთ"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ჩართვა"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"კონტაქტების სანახავად ჩართეთ კონტაქტების ნებართვა."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"კონტაქტების აპი მიუწვდომელია"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-kk/strings.xml b/java/com/android/dialer/widget/res/values-kk/strings.xml
index 334d915..cab8271 100644
--- a/java/com/android/dialer/widget/res/values-kk/strings.xml
+++ b/java/com/android/dialer/widget/res/values-kk/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Арнаулы хабар жазу"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Жабу"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Әлі ешқандай контактілер жоқ"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Қосу"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Контактілерді көру үшін \"Контактілер\" рұқсатын қосыңыз."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Контактілер қолданбасы қолжетімді емес"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-km/strings.xml b/java/com/android/dialer/widget/res/values-km/strings.xml
index d0f5633..2d6f2f2 100644
--- a/java/com/android/dialer/widget/res/values-km/strings.xml
+++ b/java/com/android/dialer/widget/res/values-km/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"សរសេរ​សារ​ផ្ទាល់ខ្លួន"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"បិទ"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"អ្នកមិនទាន់មានទំនាក់ទំនងនៅឡើយទេ"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"បើក"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"ដើម្បីមើលទំនាក់ទំនងរបស់អ្នក សូមបើកការ​អនុញ្ញាតកម្មវិធីទំនាក់ទំនង។"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"មិនមានកម្មវិធីទំនាក់ទំនងទេ"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-kn/strings.xml b/java/com/android/dialer/widget/res/values-kn/strings.xml
index 3535bfc..d449cb8 100644
--- a/java/com/android/dialer/widget/res/values-kn/strings.xml
+++ b/java/com/android/dialer/widget/res/values-kn/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ಕಸ್ಟಮ್ ಸಂದೇಶವನ್ನು ಬರೆಯಿರಿ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ಮುಚ್ಚಿ"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ನಿಮ್ಮ ಬಳಿ ಇನ್ನೂ ಯಾವುದೇ ಸಂಪರ್ಕಗಳಿಲ್ಲ"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ಆನ್ ಮಾಡಿ"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"ನಿಮ್ಮ ಸಂಪರ್ಕಗಳನ್ನು ವೀಕ್ಷಿಸಲು, ಸಂಪರ್ಕಗಳ ಅನುಮತಿಯನ್ನು ಆನ್ ಮಾಡಿ."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"ಯಾವುದೇ ಸಂಪರ್ಕಗಳ ಅಪ್ಲಿಕೇಶನ್‌ ಲಭ್ಯವಿಲ್ಲ"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ko/strings.xml b/java/com/android/dialer/widget/res/values-ko/strings.xml
index 8c00cea..0827d36 100644
--- a/java/com/android/dialer/widget/res/values-ko/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ko/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"맞춤 메시지를 작성하세요."</string>
     <string name="toolbar_close" msgid="1081308076149879833">"닫기"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"아직 연락처가 없습니다."</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"새 연락처 만들기"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"사용"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"연락처를 보려면 연락처에 액세스할 권한을 부여하세요."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"사용할 수 있는 연락처 앱이 없습니다."</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ky/strings.xml b/java/com/android/dialer/widget/res/values-ky/strings.xml
index 46ea851..62bd088 100644
--- a/java/com/android/dialer/widget/res/values-ky/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ky/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Башка билдирүүнү жазыңыз"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Жабуу"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Азырынча эч байланышыңыз жок"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Күйгүзүү"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Байланыштарыңызды көрүү үчүн, \"Байланыштар\" уруксатын күйгүзүңүз."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Жеткиликтүү байланыштар колдонмосу жок"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-lo/strings.xml b/java/com/android/dialer/widget/res/values-lo/strings.xml
index 0db64a7..8b7e476 100644
--- a/java/com/android/dialer/widget/res/values-lo/strings.xml
+++ b/java/com/android/dialer/widget/res/values-lo/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ຂຽນຂໍ້ຄວາມດ້ວຍຕົນເອງ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ປິດ"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ທ່ານຍັງບໍ່ມີລາຍຊື່ຜູ້ຕິດຕໍ່ເທື່ອ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"ສ້າງລາຍຊື່ຜູ້ຕິດຕໍ່ໃໝ່"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ເປີດໃຊ້"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"ເພື່ອເບິ່ງລາຍຊື່ຜູ້ຕິດຕໍ່ຂອງທ່ານ, ໃຫ້ເປີດການອະນຸຍາດລາຍຊື່ຜູ້ຕິດຕໍ່ກ່ອນ"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"ບໍ່ມີແອັບລາຍຊື່ຜູ້ຕິດຕໍ່ທີ່ສາມາດໃຊ້ໄດ້"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-lt/strings.xml b/java/com/android/dialer/widget/res/values-lt/strings.xml
index a10b91e..30cc0ad 100644
--- a/java/com/android/dialer/widget/res/values-lt/strings.xml
+++ b/java/com/android/dialer/widget/res/values-lt/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Parašykite tinkintą praneš."</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Uždaryti"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Dar neturite jokių kontaktų"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Sukurti naują kontaktą"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Įjungti"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Jei norite peržiūrėti kontaktus, įjunkite Kontaktų leidimą."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nepasiekiama jokia kontaktų programa"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-lv/strings.xml b/java/com/android/dialer/widget/res/values-lv/strings.xml
index 8ff0793..87464c5 100644
--- a/java/com/android/dialer/widget/res/values-lv/strings.xml
+++ b/java/com/android/dialer/widget/res/values-lv/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Rakstīt pielāgotu ziņojumu"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Aizvērt"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Jums vēl nav nevienas kontaktpersonas."</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ieslēgt"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Lai skatītu savas kontaktpersonas, ieslēdziet atļauju Kontaktpersonas."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nav pieejama neviena kontaktpersonu lietotne."</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-mk/strings.xml b/java/com/android/dialer/widget/res/values-mk/strings.xml
index aa9be30..cd2f86b 100644
--- a/java/com/android/dialer/widget/res/values-mk/strings.xml
+++ b/java/com/android/dialer/widget/res/values-mk/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Напиши приспособена порака"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Затвори"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Сè уште немате контакти"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Вклучи"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"За да ги видите контактите, вклучете ја дозволата за контакти."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Нема достапна апликација за контакти"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ml/strings.xml b/java/com/android/dialer/widget/res/values-ml/strings.xml
index b52ee40..1799755 100644
--- a/java/com/android/dialer/widget/res/values-ml/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ml/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ഒരു ഇ‌ഷ്‌ടാനുസൃത സന്ദേശം രചിക്കൂ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"അടയ്‌ക്കുക"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"നിങ്ങൾക്ക് ഇതുവരെയും കോൺടാക്റ്റുകൾ ഒന്നുമില്ല."</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ഓൺ ചെയ്യുക"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"നിങ്ങളുടെ കോൺടാക്റ്റുകൾ കാണുന്നതിന്, \'കോൺടാക്റ്റുകൾ\' അനുമതി ഓണാക്കുക."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"കോൺടാക്റ്റ് അപ്ലിക്കേഷനൊന്നും ലഭ്യമല്ല"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-mn/strings.xml b/java/com/android/dialer/widget/res/values-mn/strings.xml
index 6bdad89..e5f5c21 100644
--- a/java/com/android/dialer/widget/res/values-mn/strings.xml
+++ b/java/com/android/dialer/widget/res/values-mn/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Тусгай зурвас бичих"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Хаах"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Танд одоогоор харилцагч байхгүй байна"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Шинэ харилцагч үүсгэх"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Асаах"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Харилцагчдаа харахын тулд Харилцагчдын зөвшөөрлийг идэвхжүүлнэ үү."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Ямар ч харилцагчдын апликейшн байхгүй байна"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-mr/strings.xml b/java/com/android/dialer/widget/res/values-mr/strings.xml
index 5661fa8..63239d2 100644
--- a/java/com/android/dialer/widget/res/values-mr/strings.xml
+++ b/java/com/android/dialer/widget/res/values-mr/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"एक सानुकूल संदेश लिहा"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"बंद करा"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"आपल्‍याकडे अद्याप कोणतेही संपर्क नाहीत"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"नवीन संपर्क तयार करा"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"चालू करा"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"आपले संपर्क पाहण्‍यासाठी, संपर्क परवानगी चालू करा."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"कोणताही संपर्क अॅप उपलब्ध नाही"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ms/strings.xml b/java/com/android/dialer/widget/res/values-ms/strings.xml
index 8889ccc..cf61fc1 100644
--- a/java/com/android/dialer/widget/res/values-ms/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ms/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Tulis mesej tersuai"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Tutup"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Anda belum mempunyai sebarang kenalan"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Buat kenalan baharu"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Hidupkan"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Untuk melihat kenalan anda, hidupkan kebenaran Kenalan."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Tiada apl kenalan yang tersedia"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-my/strings.xml b/java/com/android/dialer/widget/res/values-my/strings.xml
index 9a69f29..5d3d9eb 100644
--- a/java/com/android/dialer/widget/res/values-my/strings.xml
+++ b/java/com/android/dialer/widget/res/values-my/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"စိတ်ကြိုက် မက်ဆေ့ဂျ်တစ်ခု ရေးပါ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ပိတ်ရန်"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"သင့်တွင် မည်သည့်အဆက်အသွယ်မျှ မရှိသေးပါ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"အဆက်အသွယ်အသစ် ပြုလုပ်ရန်"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ဖွင့်ရန်"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"အဆက်အသွယ်များကိုကြည့်ရန်၊ အဆက်အသွယ်ခွင့်ပြုချက်ကို ဖွင့်ပါ။"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"အဆက်အသွယ်များ app မရှိပါ"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-nb/strings.xml b/java/com/android/dialer/widget/res/values-nb/strings.xml
index 100156b..4412182 100644
--- a/java/com/android/dialer/widget/res/values-nb/strings.xml
+++ b/java/com/android/dialer/widget/res/values-nb/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skriv egendefinert melding"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Lukk"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Du har ingen kontakter ennå"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Slå på"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"For å se kontaktene dine må du slå på Kontakter-tillatelsen."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Ingen kontaktapper er tilgjengelige"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ne/strings.xml b/java/com/android/dialer/widget/res/values-ne/strings.xml
index abb8bb0..e1f6e95 100644
--- a/java/com/android/dialer/widget/res/values-ne/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ne/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"आफू अनुकूल सन्देश लेख्‍ने"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"बन्द गर्नुहोस्"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"अहिलेसम्म तपाईंसँग कुनै सम्पर्कहरू छैनन्"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"नयाँ सम्पर्क सिर्जना गर्नुहोस्"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"सक्रिय गर्नुहोस्"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"आफ्ना सम्पर्कहरू हेर्न सम्पर्क सम्बन्धी अनुमतिलाई सक्रिय गर्नुहोस्।"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"सम्पर्क सम्बन्धी कुनै अनुप्रयोग उपलब्ध छैन"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-nl/strings.xml b/java/com/android/dialer/widget/res/values-nl/strings.xml
index 5560288..1fb5f5e 100644
--- a/java/com/android/dialer/widget/res/values-nl/strings.xml
+++ b/java/com/android/dialer/widget/res/values-nl/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Schrijf zelf een bericht"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Sluiten"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Je hebt nog geen contacten"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Inschakelen"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Als je je contacten wilt bekijken, schakel je de machtiging voor Contacten in."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Geen app voor contacten beschikbaar"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-no/strings.xml b/java/com/android/dialer/widget/res/values-no/strings.xml
index 100156b..4412182 100644
--- a/java/com/android/dialer/widget/res/values-no/strings.xml
+++ b/java/com/android/dialer/widget/res/values-no/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skriv egendefinert melding"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Lukk"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Du har ingen kontakter ennå"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Slå på"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"For å se kontaktene dine må du slå på Kontakter-tillatelsen."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Ingen kontaktapper er tilgjengelige"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-pa/strings.xml b/java/com/android/dialer/widget/res/values-pa/strings.xml
index 4c69c2c..14b7b41 100644
--- a/java/com/android/dialer/widget/res/values-pa/strings.xml
+++ b/java/com/android/dialer/widget/res/values-pa/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ਵਿਸ਼ੇਸ਼-ਵਿਉਂਤਬੱਧ ਸੰਦੇਸ਼ ਲਿਖੋ"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ਬੰਦ ਕਰੋ"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ਤੁਹਾਡੇ ਕੋਲ ਹਾਲੇ ਕੋਈ ਸੰਪਰਕ ਨਹੀਂ ਹਨ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"ਨਵਾਂ ਸੰਪਰਕ ਬਣਾਓ"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ਚਾਲੂ ਕਰੋ"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"ਆਪਣੇ ਸੰਪਰਕਾਂ ਨੂੰ ਵੇਖਣ ਲਈ, ਸੰਪਰਕ ਇਜਾਜ਼ਤ ਚਾਲੂ ਕਰੋ।"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"ਕੋਈ ਸੰਪਰਕ ਐਪ ਉਪਲਬਧ ਨਹੀਂ ਹੈ"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-pl/strings.xml b/java/com/android/dialer/widget/res/values-pl/strings.xml
index cec7a40..3f0668c 100644
--- a/java/com/android/dialer/widget/res/values-pl/strings.xml
+++ b/java/com/android/dialer/widget/res/values-pl/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Wpisz wiadomość"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zamknij"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Nie masz jeszcze żadnych kontaktów"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Utwórz nowy kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Włącz"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Aby zobaczyć swoje kontakty, włącz uprawnienia Kontakty."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nie jest dostępna żadna aplikacja do obsługi kontaktów"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-pt-rBR/strings.xml b/java/com/android/dialer/widget/res/values-pt-rBR/strings.xml
index b15bfac..7bc501e 100644
--- a/java/com/android/dialer/widget/res/values-pt-rBR/strings.xml
+++ b/java/com/android/dialer/widget/res/values-pt-rBR/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escreva sua mensagem"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Fechar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Você ainda não tem contatos"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ativar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver seus contatos, ative a permissão para o app Contatos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nenhum app de contatos disponível"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-pt-rPT/strings.xml b/java/com/android/dialer/widget/res/values-pt-rPT/strings.xml
index ece2ef2..459ba57 100644
--- a/java/com/android/dialer/widget/res/values-pt-rPT/strings.xml
+++ b/java/com/android/dialer/widget/res/values-pt-rPT/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escreva uma mensagem"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Fechar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Ainda não tem nenhum contacto"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ativar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver os seus contactos, ative a autorização Contactos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Não existe nenhuma aplicação de contactos disponível"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-pt/strings.xml b/java/com/android/dialer/widget/res/values-pt/strings.xml
index b15bfac..7bc501e 100644
--- a/java/com/android/dialer/widget/res/values-pt/strings.xml
+++ b/java/com/android/dialer/widget/res/values-pt/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Escreva sua mensagem"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Fechar"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Você ainda não tem contatos"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ativar"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Para ver seus contatos, ative a permissão para o app Contatos."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nenhum app de contatos disponível"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ro/strings.xml b/java/com/android/dialer/widget/res/values-ro/strings.xml
index 753b920..6138eb1 100644
--- a/java/com/android/dialer/widget/res/values-ro/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ro/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Scrieți mesaj personalizat"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Închideți"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Nu aveți încă persoane de contact."</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Activați"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Pentru a vedea persoanele de contact, activați permisiunea pentru Agendă."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nu este disponibilă nicio aplicație pentru agendă"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ru/strings.xml b/java/com/android/dialer/widget/res/values-ru/strings.xml
index bdebd3c..7eb9f1d 100644
--- a/java/com/android/dialer/widget/res/values-ru/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ru/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Добавьте свой текст"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Закрыть"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Контактов нет"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Предоставить разрешение"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Чтобы открыть список контактов, предоставьте приложению разрешение \"Контакты\"."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Нет приложения для работы с контактами"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-si/strings.xml b/java/com/android/dialer/widget/res/values-si/strings.xml
index 4988259..fb57425 100644
--- a/java/com/android/dialer/widget/res/values-si/strings.xml
+++ b/java/com/android/dialer/widget/res/values-si/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"අභිරුචි පණිවිඩයක් ලියන්න"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"වසන්න"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"ඔබට තවම කිසිදු සම්බන්ධතාවක් නැත"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ක්‍රියාත්මක කරන්න"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"ඔබේ සම්බන්ධතා බැලීමට, සම්බන්ධතා අවසරය ක්‍රියාත්මක කරන්න."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"සබඳතා යෙදුම ලබා ගැනීමට නොහැකිය"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sk/strings.xml b/java/com/android/dialer/widget/res/values-sk/strings.xml
index 5dc1bd5..5912b57 100644
--- a/java/com/android/dialer/widget/res/values-sk/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sk/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napíšte vlastnú správu"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zavrieť"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Zatiaľ nemáte žiadne kontakty"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Zapnúť"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Ak si chcete zobraziť kontakty, zapnite povolenie Kontakty."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nie je k dispozícii žiadna aplikácia na prácu s kontaktmi"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sl/strings.xml b/java/com/android/dialer/widget/res/values-sl/strings.xml
index 0ba965b..1ee87d1 100644
--- a/java/com/android/dialer/widget/res/values-sl/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sl/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Napišite sporočilo po meri"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Zapri"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Nimate še nobenega stika"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Vklopi"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Če si želite ogledati stike, vklopite dovoljenje za stike."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Na voljo ni nobene aplikacije za stike"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sq/strings.xml b/java/com/android/dialer/widget/res/values-sq/strings.xml
index 7f5e0f2..b55e47c 100644
--- a/java/com/android/dialer/widget/res/values-sq/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sq/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Shkruaj mesazh të person."</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Mbyll"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Nuk ke ende kontakte"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktivizo"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Për të parë kontaktet, aktivizo lejen e Kontakteve."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Nuk ka asnjë aplikacion për kontaktet"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sr/strings.xml b/java/com/android/dialer/widget/res/values-sr/strings.xml
index 446c273..c2f269d 100644
--- a/java/com/android/dialer/widget/res/values-sr/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sr/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Напишите прилагођену поруку"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Затворите"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Још увек немате ниједан контакт"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Направи нови контакт"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Укључи"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Да бисте видели контакте, укључите дозволу за Контакте."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Нема доступне апликације за контакте"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sv/strings.xml b/java/com/android/dialer/widget/res/values-sv/strings.xml
index 7d2f44c..75add78 100644
--- a/java/com/android/dialer/widget/res/values-sv/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sv/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Skriv anpassat meddelande"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Stäng"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Du har inga kontakter ännu"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Skapa ny kontakt"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Aktivera"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Du måste aktivera behörigheten Kontakter för att visa kontakterna."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Det finns inga appar för kontakter"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-sw/strings.xml b/java/com/android/dialer/widget/res/values-sw/strings.xml
index d2c2a97..a913980 100644
--- a/java/com/android/dialer/widget/res/values-sw/strings.xml
+++ b/java/com/android/dialer/widget/res/values-sw/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Andika ujumbe maalum"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Funga"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Bado huna anwani zozote"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Washa"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Ili uone anwani zako, washa ruhusa ya Anwani."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Hakuna programu ya anwani iliyopatikana"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ta/strings.xml b/java/com/android/dialer/widget/res/values-ta/strings.xml
index 4061c16..1733330 100644
--- a/java/com/android/dialer/widget/res/values-ta/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ta/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"தனிப்பயன் செய்தியை எழுதவும்"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"மூடு"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"இதுவரை தொடர்புகள் எதுவுமில்லை"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"புதிய தொடர்பை உருவாக்கு"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"இயக்கு"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"தொடர்புகளைப் பார்க்க, தொடர்புகள் அனுமதியை இயக்கவும்."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"தொடர்புகள் பயன்பாடு எதுவுமில்லை"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-te/strings.xml b/java/com/android/dialer/widget/res/values-te/strings.xml
index c2474b7..27e6b05 100644
--- a/java/com/android/dialer/widget/res/values-te/strings.xml
+++ b/java/com/android/dialer/widget/res/values-te/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"అనుకూల సందేశాన్ని వ్రాయండి"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"మూసివేయి"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"మీకు ఇప్పటికీ పరిచయాలేవీ లేవు"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"కొత్త పరిచయాన్ని సృష్టించండి"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"ఆన్ చేయి"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"మీ పరిచయాలను చూడటానికి, పరిచయాల అనుమతిని ఆన్ చేయండి."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"పరిచయాల అనువర్తనం ఏదీ అందుబాటులో లేదు"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-th/strings.xml b/java/com/android/dialer/widget/res/values-th/strings.xml
index d450b4b..40134c8 100644
--- a/java/com/android/dialer/widget/res/values-th/strings.xml
+++ b/java/com/android/dialer/widget/res/values-th/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"เขียนข้อความที่กำหนดเอง"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"ปิด"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"คุณยังไม่มีรายชื่อติดต่อ"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"สร้างรายชื่อติดต่อใหม่"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"เปิด"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"หากต้องการดูรายชื่อติดต่อ ให้เปิดสิทธิ์เข้าถึงรายชื่อติดต่อ"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"ไม่มีแอปรายชื่อติดต่อที่พร้อมใช้งาน"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-tl/strings.xml b/java/com/android/dialer/widget/res/values-tl/strings.xml
index ee7c52f..406f18b 100644
--- a/java/com/android/dialer/widget/res/values-tl/strings.xml
+++ b/java/com/android/dialer/widget/res/values-tl/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Sumulat ng custom na mensahe"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Isara"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Wala ka pang sinumang contact"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"I-on"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Upang makita ang iyong mga contact, i-on ang pahintulot ng Mga Contact."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Walang available na app ng mga contact"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-tr/strings.xml b/java/com/android/dialer/widget/res/values-tr/strings.xml
index 64e2ea5..e1dcabd 100644
--- a/java/com/android/dialer/widget/res/values-tr/strings.xml
+++ b/java/com/android/dialer/widget/res/values-tr/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Özel bir mesaj yazın"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Kapat"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Henüz hiç kişiniz yok"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Etkinleştir"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kişilerinizi görmek için Kişiler iznini etkinleştirin."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Kullanılabilir kişi uygulaması yok"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-uk/strings.xml b/java/com/android/dialer/widget/res/values-uk/strings.xml
index f8d9bb8..d1a281c 100644
--- a/java/com/android/dialer/widget/res/values-uk/strings.xml
+++ b/java/com/android/dialer/widget/res/values-uk/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Ваше власне повідомлення"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Закрити"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Ще немає контактів"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"Створити контакт"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Увімкнути"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Щоб переглянути контакти, увімкніть дозвіл \"Контакти\"."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Немає додатка з контактами"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-ur/strings.xml b/java/com/android/dialer/widget/res/values-ur/strings.xml
index 6edeb5c..d5dcad0 100644
--- a/java/com/android/dialer/widget/res/values-ur/strings.xml
+++ b/java/com/android/dialer/widget/res/values-ur/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"ایک حسب ضرورت پیغام لکھیں"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"بند کریں"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"آپ کے پاس ابھی تک کوئی رابطے نہیں ہیں"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"نیا رابطہ بنائیں"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"آن کریں"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"اپنے رابطے دیکھنے کیلئے رابطوں کی اجازت آن کریں۔"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"رابطوں کی کوئی ایپ دستیاب نہیں ہے"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-uz/strings.xml b/java/com/android/dialer/widget/res/values-uz/strings.xml
index 434464a..b3003be 100644
--- a/java/com/android/dialer/widget/res/values-uz/strings.xml
+++ b/java/com/android/dialer/widget/res/values-uz/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Boshqa xabar yozing"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Yopish"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Kontaktlar yo‘q"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Ruxsat berish"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Kontaktlar ro‘yxatini ko‘rish uchun ilovaga Kontaktlarga kirishga ruxsat bering."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Kontaktlarni ochadigan ilova yo‘q"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-vi/strings.xml b/java/com/android/dialer/widget/res/values-vi/strings.xml
index 1a30f7c..68669ec 100644
--- a/java/com/android/dialer/widget/res/values-vi/strings.xml
+++ b/java/com/android/dialer/widget/res/values-vi/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Viết tin nhắn tùy chỉnh"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Đóng"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Bạn chưa có bất kỳ liên hệ nào"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Bật"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Để xem danh bạ của bạn, bật quyền đối với Danh bạ."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Không có ứng dụng danh bạ"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-zh-rCN/strings.xml b/java/com/android/dialer/widget/res/values-zh-rCN/strings.xml
index 7999723..4a5e458 100644
--- a/java/com/android/dialer/widget/res/values-zh-rCN/strings.xml
+++ b/java/com/android/dialer/widget/res/values-zh-rCN/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"自行撰写信息"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"关闭"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"您还没有任何联系人"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"创建新联系人"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"开启"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"要查看您的联系人，请开启“通讯录”权限。"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"没有可用的通讯录应用"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-zh-rHK/strings.xml b/java/com/android/dialer/widget/res/values-zh-rHK/strings.xml
index b0bfcc8..3d5fe6e 100644
--- a/java/com/android/dialer/widget/res/values-zh-rHK/strings.xml
+++ b/java/com/android/dialer/widget/res/values-zh-rHK/strings.xml
@@ -1,6 +1,27 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"撰寫自訂訊息"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"關閉"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"您尚無任何聯絡人"</string>
+    <string name="all_contacts_empty_add_contact_action" msgid="7850060327481179533">"建立新聯絡人"</string>
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"開放"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"如要查看聯絡人，請開放「通訊錄」權限。"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"沒有可用的聯絡人應用程式"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-zh-rTW/strings.xml b/java/com/android/dialer/widget/res/values-zh-rTW/strings.xml
index b0bfcc8..0cb8d15 100644
--- a/java/com/android/dialer/widget/res/values-zh-rTW/strings.xml
+++ b/java/com/android/dialer/widget/res/values-zh-rTW/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"撰寫自訂訊息"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"關閉"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"你還沒有任何聯絡人"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"開啟"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"如要查看你的聯絡人，請開啟「聯絡人」存取權限。"</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"沒有可用的聯絡人應用程式"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values-zu/strings.xml b/java/com/android/dialer/widget/res/values-zu/strings.xml
index 074aa58..ca58983 100644
--- a/java/com/android/dialer/widget/res/values-zu/strings.xml
+++ b/java/com/android/dialer/widget/res/values-zu/strings.xml
@@ -1,6 +1,28 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="custom_message_hint" msgid="2179012696339457461">"Bhala umlayezo wangokwezifiso"</string>
     <string name="toolbar_close" msgid="1081308076149879833">"Vala"</string>
+    <string name="all_contacts_empty" msgid="4260556610403994011">"Awunabo oxhumana nabo okwamanje"</string>
+    <!-- no translation found for all_contacts_empty_add_contact_action (7850060327481179533) -->
+    <skip />
+    <string name="permission_single_turn_on" msgid="1306416016676232584">"Vula"</string>
+    <string name="permission_no_contacts" msgid="2388204904477299207">"Ukuze ubone oxhumana nabo, vula imvume yoxhumana nabo."</string>
+    <string name="add_contact_not_available" msgid="3083256438899321502">"Alukho uhlelo lokusebenza loxhumana nabo olutholakalayo"</string>
 </resources>
diff --git a/java/com/android/dialer/widget/res/values/colors.xml b/java/com/android/dialer/widget/res/values/colors.xml
new file mode 100644
index 0000000..c974609
--- /dev/null
+++ b/java/com/android/dialer/widget/res/values/colors.xml
@@ -0,0 +1,4 @@
+<?xml version="1.0" encoding="utf-8"?>
+<resources>
+  <color name="empty_list_text_color">#b2b2b2</color>
+</resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/widget/res/values/dimens.xml b/java/com/android/dialer/widget/res/values/dimens.xml
index 20393a8..537ad7b 100644
--- a/java/com/android/dialer/widget/res/values/dimens.xml
+++ b/java/com/android/dialer/widget/res/values/dimens.xml
@@ -26,4 +26,9 @@
   <dimen name="toolbar_title_small_text_size">14sp</dimen>
   <dimen name="toolbar_subtitle_text_size">12sp</dimen>
   <dimen name="toolbar_elevation">4dp</dimen>
+  <dimen name="toolbar_end_padding">4dp</dimen>
+
+  <!-- Empty List -->
+  <dimen name="empty_list_message_top_padding">20dp</dimen>
+  <dimen name="empty_list_message_text_size">16sp</dimen>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/dialer/widget/res/values/strings.xml b/java/com/android/dialer/widget/res/values/strings.xml
index a5829bb..74a5f0f 100644
--- a/java/com/android/dialer/widget/res/values/strings.xml
+++ b/java/com/android/dialer/widget/res/values/strings.xml
@@ -1,8 +1,38 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
 <resources>
   <!-- Hint in a text field to compose a custom message to send with a phone call [CHAR LIMIT=27] -->
   <string name="custom_message_hint">Write a custom message</string>
 
   <!-- Accessibility string for close/navigation icon in DialerToolbar -->
   <string name="toolbar_close">Close</string>
+
+  <!-- [CHAR LIMIT=NONE] Shown when there are no contacts in the all contacts list. -->
+  <string name="all_contacts_empty">You don\'t have any contacts yet</string>
+
+  <!-- [CHAR LIMIT=NONE] Shown as an action when the all contacts list is empty -->
+  <string name="all_contacts_empty_add_contact_action">Create new contact</string>
+
+  <!-- The label of the button used to turn on a single permission [CHAR LIMIT=30]-->
+  <string name="permission_single_turn_on">Turn on</string>
+
+  <!-- Shown as a prompt to turn on the contacts permission to show all contacts [CHAR LIMIT=NONE]-->
+  <string name="permission_no_contacts">To see your contacts, turn on the Contacts permission.</string>
+
+  <!-- Message displayed when there is no application available to handle the add contact menu option. [CHAR LIMIT=NONE] -->
+  <string name="add_contact_not_available">No contacts app available</string>
 </resources>
\ No newline at end of file
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialershared/bubble/AndroidManifest.xml
similarity index 65%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialershared/bubble/AndroidManifest.xml
index ecf704e..1a94aaf 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialershared/bubble/AndroidManifest.xml
@@ -1,6 +1,5 @@
-<?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +13,10 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+    package="com.android.dialershared.bubble">
+
+  <uses-sdk android:minSdkVersion="21"/>
+  <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
+</manifest>
diff --git a/java/com/android/dialershared/bubble/Bubble.java b/java/com/android/dialershared/bubble/Bubble.java
new file mode 100644
index 0000000..dbb5ea7
--- /dev/null
+++ b/java/com/android/dialershared/bubble/Bubble.java
@@ -0,0 +1,767 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialershared.bubble;
+
+import android.animation.Animator;
+import android.animation.AnimatorSet;
+import android.animation.ObjectAnimator;
+import android.animation.PropertyValuesHolder;
+import android.annotation.SuppressLint;
+import android.app.PendingIntent.CanceledException;
+import android.content.Context;
+import android.content.Intent;
+import android.content.res.ColorStateList;
+import android.graphics.PixelFormat;
+import android.graphics.drawable.Animatable;
+import android.graphics.drawable.Drawable;
+import android.graphics.drawable.RippleDrawable;
+import android.net.Uri;
+import android.os.Build.VERSION;
+import android.os.Build.VERSION_CODES;
+import android.os.Handler;
+import android.provider.Settings;
+import android.support.annotation.ColorInt;
+import android.support.annotation.IntDef;
+import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
+import android.support.annotation.VisibleForTesting;
+import android.support.v4.graphics.ColorUtils;
+import android.support.v4.os.BuildCompat;
+import android.support.v4.view.animation.FastOutLinearInInterpolator;
+import android.support.v4.view.animation.LinearOutSlowInInterpolator;
+import android.transition.TransitionManager;
+import android.transition.TransitionValues;
+import android.view.ContextThemeWrapper;
+import android.view.Gravity;
+import android.view.LayoutInflater;
+import android.view.MotionEvent;
+import android.view.View;
+import android.view.ViewGroup;
+import android.view.ViewGroup.MarginLayoutParams;
+import android.view.ViewPropertyAnimator;
+import android.view.ViewTreeObserver.OnPreDrawListener;
+import android.view.WindowManager;
+import android.view.WindowManager.LayoutParams;
+import android.view.animation.AnticipateInterpolator;
+import android.view.animation.OvershootInterpolator;
+import android.widget.FrameLayout;
+import android.widget.ImageView;
+import android.widget.TextView;
+import android.widget.ViewAnimator;
+import com.android.dialershared.bubble.BubbleInfo.Action;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+import java.util.List;
+
+/**
+ * Creates and manages a bubble window from information in a {@link BubbleInfo}. Before creating, be
+ * sure to check whether bubbles may be shown using {@link #canShowBubbles(Context)} and request
+ * permission if necessary ({@link #getRequestPermissionIntent(Context)} is provided for
+ * convenience)
+ */
+public class Bubble {
+  // This class has some odd behavior that is not immediately obvious in order to avoid jank when
+  // resizing. See http://go/bubble-resize for details.
+
+  // How long text should show after showText(CharSequence) is called
+  private static final int SHOW_TEXT_DURATION_MILLIS = 3000;
+  // How long the new window should show before destroying the old one during resize operations.
+  // This ensures the new window has had time to draw first.
+  private static final int WINDOW_REDRAW_DELAY_MILLIS = 50;
+
+  private static Boolean canShowBubblesForTesting = null;
+
+  private final Context context;
+  private final WindowManager windowManager;
+
+  private LayoutParams windowParams;
+
+  // Initialized in factory method
+  @SuppressWarnings("NullableProblems")
+  @NonNull
+  private BubbleInfo currentInfo;
+
+  private boolean isShowing;
+  private boolean expanded;
+  private boolean textShowing;
+  private boolean hideAfterText;
+
+  private final Handler handler = new Handler();
+
+  private ViewHolder viewHolder;
+  private ViewPropertyAnimator collapseAnimation;
+  private Integer overrideGravity;
+
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({CollapseEnd.NOTHING, CollapseEnd.HIDE})
+  private @interface CollapseEnd {
+    int NOTHING = 0;
+    int HIDE = 1;
+  }
+
+  /**
+   * Determines whether bubbles can be shown based on permissions obtained. This should be checked
+   * before attempting to create a Bubble.
+   *
+   * @return true iff bubbles are able to be shown.
+   * @see Settings#canDrawOverlays(Context)
+   */
+  public static boolean canShowBubbles(@NonNull Context context) {
+    return canShowBubblesForTesting != null
+        ? canShowBubblesForTesting
+        : VERSION.SDK_INT < VERSION_CODES.M || Settings.canDrawOverlays(context);
+  }
+
+  @VisibleForTesting(otherwise = VisibleForTesting.NONE)
+  public static void setCanShowBubblesForTesting(boolean canShowBubbles) {
+    canShowBubblesForTesting = canShowBubbles;
+  }
+
+  /** Returns an Intent to request permission to show overlays */
+  @NonNull
+  public static Intent getRequestPermissionIntent(@NonNull Context context) {
+    return new Intent(
+        Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
+        Uri.fromParts("package", context.getPackageName(), null));
+  }
+
+  /** Creates instances of Bubble. The default implementation just calls the constructor. */
+  @VisibleForTesting
+  public interface BubbleFactory {
+    Bubble createBubble(@NonNull Context context);
+  }
+
+  private static BubbleFactory bubbleFactory = Bubble::new;
+
+  public static Bubble createBubble(@NonNull Context context, @NonNull BubbleInfo info) {
+    Bubble bubble = bubbleFactory.createBubble(context);
+    bubble.setBubbleInfo(info);
+    return bubble;
+  }
+
+  @VisibleForTesting
+  public static void setBubbleFactory(@NonNull BubbleFactory bubbleFactory) {
+    Bubble.bubbleFactory = bubbleFactory;
+  }
+
+  @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+  Bubble(@NonNull Context context) {
+    context = new ContextThemeWrapper(context, R.style.Theme_AppCompat);
+    this.context = context;
+    windowManager = context.getSystemService(WindowManager.class);
+
+    viewHolder = new ViewHolder(context);
+  }
+
+  /**
+   * Make the bubble visible. Will show a short entrance animation as it enters. If the bubble is
+   * already showing this method does nothing.
+   */
+  public void show() {
+    if (isShowing) {
+      return;
+    }
+
+    hideAfterText = false;
+
+    if (windowParams == null) {
+      // Apps targeting O+ must use TYPE_APPLICATION_OVERLAY, which is not available prior to O.
+      @SuppressWarnings("deprecation")
+      @SuppressLint("InlinedApi")
+      int type =
+          BuildCompat.isAtLeastO()
+              ? LayoutParams.TYPE_APPLICATION_OVERLAY
+              : LayoutParams.TYPE_PHONE;
+
+      windowParams =
+          new LayoutParams(
+              type,
+              LayoutParams.FLAG_NOT_TOUCH_MODAL
+                  | LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH
+                  | LayoutParams.FLAG_NOT_FOCUSABLE
+                  | LayoutParams.FLAG_LAYOUT_NO_LIMITS,
+              PixelFormat.TRANSLUCENT);
+      windowParams.gravity = Gravity.TOP | Gravity.LEFT;
+      windowParams.x = context.getResources().getDimensionPixelOffset(R.dimen.bubble_safe_margin_x);
+      windowParams.y = currentInfo.getStartingYPosition();
+      windowParams.height = LayoutParams.WRAP_CONTENT;
+      windowParams.width = LayoutParams.WRAP_CONTENT;
+    }
+
+    windowManager.addView(viewHolder.getRoot(), windowParams);
+    ObjectAnimator showAnimator =
+        ObjectAnimator.ofPropertyValuesHolder(
+            viewHolder.getPrimaryButton(),
+            PropertyValuesHolder.ofFloat(View.SCALE_X, 0, 1),
+            PropertyValuesHolder.ofFloat(View.SCALE_Y, 0, 1));
+    showAnimator.setInterpolator(new OvershootInterpolator());
+    showAnimator.start();
+    isShowing = true;
+    updatePrimaryIconAnimation();
+  }
+
+  /**
+   * Hide the button if visible. Will run a short exit animation before hiding. If the bubble is
+   * currently showing text, will hide after the text is done displaying. If the bubble is not
+   * visible this method does nothing.
+   */
+  public void hide() {
+    if (!isShowing) {
+      return;
+    }
+
+    if (textShowing) {
+      hideAfterText = true;
+      return;
+    }
+
+    if (expanded) {
+      startCollapse(CollapseEnd.HIDE);
+      return;
+    }
+
+    viewHolder
+        .getPrimaryButton()
+        .animate()
+        .setInterpolator(new AnticipateInterpolator())
+        .scaleX(0)
+        .scaleY(0)
+        .withEndAction(
+            () -> {
+              windowManager.removeView(viewHolder.getRoot());
+              isShowing = false;
+              updatePrimaryIconAnimation();
+            })
+        .start();
+  }
+
+  /** Returns whether the bubble is currently visible */
+  public boolean isShowing() {
+    return isShowing;
+  }
+
+  /**
+   * Set the info for this Bubble to display
+   *
+   * @param bubbleInfo the BubbleInfo to display in this Bubble.
+   */
+  public void setBubbleInfo(@NonNull BubbleInfo bubbleInfo) {
+    currentInfo = bubbleInfo;
+    update();
+  }
+
+  /**
+   * Update the state and behavior of actions.
+   *
+   * @param actions the new state of the bubble's actions
+   */
+  public void updateActions(@NonNull List<Action> actions) {
+    currentInfo = BubbleInfo.from(currentInfo).setActions(actions).build();
+    updateButtonStates();
+  }
+
+  /** Returns the currently displayed BubbleInfo */
+  public BubbleInfo getBubbleInfo() {
+    return currentInfo;
+  }
+
+  /**
+   * Display text in the main bubble. The bubble's drawer is not expandable while text is showing,
+   * and the drawer will be closed if already open.
+   *
+   * @param text the text to display to the user
+   */
+  public void showText(@NonNull CharSequence text) {
+    textShowing = true;
+    if (expanded) {
+      startCollapse(CollapseEnd.NOTHING);
+      doShowText(text);
+    } else {
+      // Need to transition from old bounds to new bounds manually
+      ChangeOnScreenBounds transition = new ChangeOnScreenBounds();
+      // Prepare and capture start values
+      TransitionValues startValues = new TransitionValues();
+      startValues.view = viewHolder.getPrimaryButton();
+      transition.addTarget(startValues.view);
+      transition.captureStartValues(startValues);
+
+      doResize(
+          () -> {
+            doShowText(text);
+            // Hide the text so we can animate it in
+            viewHolder.getPrimaryText().setAlpha(0);
+
+            ViewAnimator primaryButton = viewHolder.getPrimaryButton();
+            // Cancel the automatic transition scheduled in doShowText
+            TransitionManager.endTransitions((ViewGroup) primaryButton.getParent());
+            primaryButton
+                .getViewTreeObserver()
+                .addOnPreDrawListener(
+                    new OnPreDrawListener() {
+                      @Override
+                      public boolean onPreDraw() {
+                        primaryButton.getViewTreeObserver().removeOnPreDrawListener(this);
+
+                        // Prepare and capture end values
+                        TransitionValues endValues = new TransitionValues();
+                        endValues.view = primaryButton;
+                        transition.addTarget(endValues.view);
+                        transition.captureEndValues(endValues);
+
+                        // animate the primary button bounds change
+                        Animator bounds =
+                            transition.createAnimator(primaryButton, startValues, endValues);
+
+                        // Animate the text in
+                        Animator alpha =
+                            ObjectAnimator.ofFloat(viewHolder.getPrimaryText(), View.ALPHA, 1f);
+
+                        AnimatorSet set = new AnimatorSet();
+                        set.play(bounds).before(alpha);
+                        set.start();
+                        return false;
+                      }
+                    });
+          });
+    }
+    handler.removeCallbacks(null);
+    handler.postDelayed(
+        () -> {
+          textShowing = false;
+          if (hideAfterText) {
+            hide();
+          } else {
+            doResize(
+                () -> viewHolder.getPrimaryButton().setDisplayedChild(ViewHolder.CHILD_INDEX_ICON));
+          }
+        },
+        SHOW_TEXT_DURATION_MILLIS);
+  }
+
+  @Nullable
+  Integer getGravityOverride() {
+    return overrideGravity;
+  }
+
+  void onMoveStart() {
+    startCollapse(CollapseEnd.NOTHING);
+    viewHolder
+        .getPrimaryButton()
+        .animate()
+        .translationZ(
+            context.getResources().getDimensionPixelOffset(R.dimen.bubble_move_elevation_change));
+  }
+
+  void onMoveFinish() {
+    viewHolder.getPrimaryButton().animate().translationZ(0);
+    // If it's GONE, no resize is necessary. If it's VISIBLE, it will get cleaned up when the
+    // collapse animation finishes
+    if (viewHolder.getExpandedView().getVisibility() == View.INVISIBLE) {
+      doResize(null);
+    }
+  }
+
+  void primaryButtonClick() {
+    if (expanded || textShowing || currentInfo.getActions().isEmpty()) {
+      try {
+        currentInfo.getPrimaryIntent().send();
+      } catch (CanceledException e) {
+        throw new RuntimeException(e);
+      }
+      return;
+    }
+
+    doResize(
+        () -> {
+          onLeftRightSwitch(isDrawingFromRight());
+          viewHolder.setDrawerVisibility(View.VISIBLE);
+        });
+    View expandedView = viewHolder.getExpandedView();
+    expandedView
+        .getViewTreeObserver()
+        .addOnPreDrawListener(
+            new OnPreDrawListener() {
+              @Override
+              public boolean onPreDraw() {
+                expandedView.getViewTreeObserver().removeOnPreDrawListener(this);
+                expandedView.setTranslationX(
+                    isDrawingFromRight() ? expandedView.getWidth() : -expandedView.getWidth());
+                expandedView
+                    .animate()
+                    .setInterpolator(new LinearOutSlowInInterpolator())
+                    .translationX(0);
+                return false;
+              }
+            });
+    setFocused(true);
+    expanded = true;
+  }
+
+  void onLeftRightSwitch(boolean onRight) {
+    if (viewHolder.isMoving()) {
+      if (viewHolder.getExpandedView().getVisibility() == View.GONE) {
+        // If the drawer is not part of the layout we don't need to do anything. Layout flips will
+        // happen if necessary when opening the drawer.
+        return;
+      }
+    }
+
+    viewHolder
+        .getRoot()
+        .setLayoutDirection(onRight ? View.LAYOUT_DIRECTION_RTL : View.LAYOUT_DIRECTION_LTR);
+    View primaryContainer = viewHolder.getRoot().findViewById(R.id.bubble_primary_container);
+    ViewGroup.LayoutParams layoutParams = primaryContainer.getLayoutParams();
+    ((FrameLayout.LayoutParams) layoutParams).gravity = onRight ? Gravity.RIGHT : Gravity.LEFT;
+    primaryContainer.setLayoutParams(layoutParams);
+
+    viewHolder
+        .getExpandedView()
+        .setBackgroundResource(
+            onRight
+                ? R.drawable.bubble_background_pill_rtl
+                : R.drawable.bubble_background_pill_ltr);
+  }
+
+  LayoutParams getWindowParams() {
+    return windowParams;
+  }
+
+  View getRootView() {
+    return viewHolder.getRoot();
+  }
+
+  private void update() {
+    RippleDrawable backgroundRipple =
+        (RippleDrawable)
+            context.getResources().getDrawable(R.drawable.bubble_ripple_circle, context.getTheme());
+    int primaryTint =
+        ColorUtils.compositeColors(
+            context.getColor(R.color.bubble_primary_background_darken),
+            currentInfo.getPrimaryColor());
+    backgroundRipple.getDrawable(0).setTint(primaryTint);
+    viewHolder.getPrimaryButton().setBackground(backgroundRipple);
+
+    setBackgroundDrawable(viewHolder.getFirstButton(), primaryTint);
+    setBackgroundDrawable(viewHolder.getSecondButton(), primaryTint);
+    setBackgroundDrawable(viewHolder.getThirdButton(), primaryTint);
+
+    int numButtons = currentInfo.getActions().size();
+    viewHolder.getThirdButton().setVisibility(numButtons < 3 ? View.GONE : View.VISIBLE);
+    viewHolder.getSecondButton().setVisibility(numButtons < 2 ? View.GONE : View.VISIBLE);
+
+    viewHolder.getPrimaryIcon().setImageIcon(currentInfo.getPrimaryIcon());
+    updatePrimaryIconAnimation();
+
+    viewHolder
+        .getExpandedView()
+        .setBackgroundTintList(ColorStateList.valueOf(currentInfo.getPrimaryColor()));
+
+    updateButtonStates();
+  }
+
+  private void updatePrimaryIconAnimation() {
+    Drawable drawable = viewHolder.getPrimaryIcon().getDrawable();
+    if (drawable instanceof Animatable) {
+      if (isShowing) {
+        ((Animatable) drawable).start();
+      } else {
+        ((Animatable) drawable).stop();
+      }
+    }
+  }
+
+  private void setBackgroundDrawable(CheckableImageButton view, @ColorInt int color) {
+    RippleDrawable itemRipple =
+        (RippleDrawable)
+            context
+                .getResources()
+                .getDrawable(R.drawable.bubble_ripple_checkable_circle, context.getTheme());
+    itemRipple.getDrawable(0).setTint(color);
+    view.setBackground(itemRipple);
+  }
+
+  private void updateButtonStates() {
+    int numButtons = currentInfo.getActions().size();
+
+    if (numButtons >= 1) {
+      configureButton(currentInfo.getActions().get(0), viewHolder.getFirstButton());
+      if (numButtons >= 2) {
+        configureButton(currentInfo.getActions().get(1), viewHolder.getSecondButton());
+        if (numButtons >= 3) {
+          configureButton(currentInfo.getActions().get(2), viewHolder.getThirdButton());
+        }
+      }
+    }
+  }
+
+  private void doShowText(@NonNull CharSequence text) {
+    TransitionManager.beginDelayedTransition((ViewGroup) viewHolder.getPrimaryButton().getParent());
+    viewHolder.getPrimaryText().setText(text);
+    viewHolder.getPrimaryButton().setDisplayedChild(ViewHolder.CHILD_INDEX_TEXT);
+  }
+
+  private void configureButton(Action action, CheckableImageButton button) {
+    action
+        .getIcon()
+        .loadDrawableAsync(
+            context,
+            d -> {
+              button.setImageIcon(action.getIcon());
+              button.setContentDescription(action.getName());
+              button.setChecked(action.isChecked());
+              button.setEnabled(action.isEnabled());
+            },
+            handler);
+    button.setOnClickListener(v -> doAction(action));
+  }
+
+  private void doAction(Action action) {
+    try {
+      action.getIntent().send();
+    } catch (CanceledException e) {
+      throw new RuntimeException(e);
+    }
+  }
+
+  private void doResize(@Nullable Runnable operation) {
+    // If we're resizing on the right side of the screen, there is an implicit move operation
+    // necessary. The WindowManager does not sync the move and resize operations, so serious jank
+    // would occur. To fix this, instead of resizing the window, we create a new one and destroy
+    // the old one. There is a short delay before destroying the old view to ensure the new one has
+    // had time to draw.
+    ViewHolder oldViewHolder = viewHolder;
+    if (isDrawingFromRight()) {
+      viewHolder = new ViewHolder(oldViewHolder.getRoot().getContext());
+      update();
+      viewHolder
+          .getPrimaryButton()
+          .setDisplayedChild(oldViewHolder.getPrimaryButton().getDisplayedChild());
+      viewHolder.getPrimaryText().setText(oldViewHolder.getPrimaryText().getText());
+    }
+
+    if (operation != null) {
+      operation.run();
+    }
+
+    if (isDrawingFromRight()) {
+      swapViewHolders(oldViewHolder);
+    }
+  }
+
+  private void swapViewHolders(ViewHolder oldViewHolder) {
+    oldViewHolder.getShadowProvider().setVisibility(View.GONE);
+    ViewGroup root = viewHolder.getRoot();
+    windowManager.addView(root, windowParams);
+    root.getViewTreeObserver()
+        .addOnPreDrawListener(
+            new OnPreDrawListener() {
+              @Override
+              public boolean onPreDraw() {
+                root.getViewTreeObserver().removeOnPreDrawListener(this);
+                // Wait a bit before removing the old view; make sure the new one has drawn over it.
+                handler.postDelayed(
+                    () -> windowManager.removeView(oldViewHolder.getRoot()),
+                    WINDOW_REDRAW_DELAY_MILLIS);
+                return true;
+              }
+            });
+  }
+
+  private void startCollapse(@CollapseEnd int collapseEndAction) {
+    View expandedView = viewHolder.getExpandedView();
+    if (expandedView.getVisibility() != View.VISIBLE || collapseAnimation != null) {
+      // Drawer is already collapsed or animation is running.
+      return;
+    }
+
+    overrideGravity = isDrawingFromRight() ? Gravity.RIGHT : Gravity.LEFT;
+    setFocused(false);
+    collapseAnimation =
+        expandedView
+            .animate()
+            .translationX(isDrawingFromRight() ? expandedView.getWidth() : -expandedView.getWidth())
+            .setInterpolator(new FastOutLinearInInterpolator())
+            .withEndAction(
+                () -> {
+                  collapseAnimation = null;
+                  expanded = false;
+
+                  if (textShowing) {
+                    // Will do resize once the text is done.
+                    return;
+                  }
+
+                  // Hide the drawer and resize if possible.
+                  viewHolder.setDrawerVisibility(View.INVISIBLE);
+                  if (!viewHolder.isMoving() || !isDrawingFromRight()) {
+                    doResize(() -> viewHolder.setDrawerVisibility(View.GONE));
+                  }
+
+                  // If this collapse was to come before a hide, do it now.
+                  if (collapseEndAction == CollapseEnd.HIDE) {
+                    hide();
+                  }
+
+                  // Resume normal gravity after any resizing is done.
+                  handler.postDelayed(
+                      () -> {
+                        overrideGravity = null;
+                        if (!viewHolder.isMoving()) {
+                          viewHolder.undoGravityOverride();
+                        }
+                      },
+                      // Need to wait twice as long for resize and layout
+                      WINDOW_REDRAW_DELAY_MILLIS * 2);
+                });
+  }
+
+  private boolean isDrawingFromRight() {
+    return (windowParams.gravity & Gravity.RIGHT) == Gravity.RIGHT;
+  }
+
+  private void setFocused(boolean focused) {
+    if (focused) {
+      windowParams.flags &= ~LayoutParams.FLAG_NOT_FOCUSABLE;
+    } else {
+      windowParams.flags |= LayoutParams.FLAG_NOT_FOCUSABLE;
+    }
+    windowManager.updateViewLayout(getRootView(), windowParams);
+  }
+
+  private class ViewHolder {
+
+    public static final int CHILD_INDEX_ICON = 0;
+    public static final int CHILD_INDEX_TEXT = 1;
+
+    private final MoveHandler moveHandler;
+    private final WindowRoot root;
+    private final ViewAnimator primaryButton;
+    private final ImageView primaryIcon;
+    private final TextView primaryText;
+
+    private final CheckableImageButton firstButton;
+    private final CheckableImageButton secondButton;
+    private final CheckableImageButton thirdButton;
+    private final View expandedView;
+    private final View shadowProvider;
+
+    public ViewHolder(Context context) {
+      // Window root is not in the layout file so that the inflater has a view to inflate into
+      this.root = new WindowRoot(context);
+      LayoutInflater inflater = LayoutInflater.from(root.getContext());
+      View contentView = inflater.inflate(R.layout.bubble_base, root, true);
+      expandedView = contentView.findViewById(R.id.bubble_expanded_layout);
+      primaryButton = contentView.findViewById(R.id.bubble_button_primary);
+      primaryIcon = contentView.findViewById(R.id.bubble_icon_primary);
+      primaryText = contentView.findViewById(R.id.bubble_text);
+      shadowProvider = contentView.findViewById(R.id.bubble_drawer_shadow_provider);
+
+      firstButton = contentView.findViewById(R.id.bubble_icon_first);
+      secondButton = contentView.findViewById(R.id.bubble_icon_second);
+      thirdButton = contentView.findViewById(R.id.bubble_icon_third);
+
+      root.setOnBackPressedListener(
+          () -> {
+            if (isShowing && expanded) {
+              startCollapse(CollapseEnd.NOTHING);
+              return true;
+            }
+            return false;
+          });
+      root.setOnTouchListener(
+          (v, event) -> {
+            if (expanded && event.getActionMasked() == MotionEvent.ACTION_OUTSIDE) {
+              startCollapse(CollapseEnd.NOTHING);
+              return true;
+            }
+            return false;
+          });
+      expandedView
+          .getViewTreeObserver()
+          .addOnDrawListener(
+              () -> {
+                int translationX = (int) expandedView.getTranslationX();
+                int parentOffset =
+                    ((MarginLayoutParams) ((ViewGroup) expandedView.getParent()).getLayoutParams())
+                        .leftMargin;
+                if (isDrawingFromRight()) {
+                  int maxLeft =
+                      shadowProvider.getRight()
+                          - context.getResources().getDimensionPixelSize(R.dimen.bubble_size);
+                  shadowProvider.setLeft(
+                      Math.min(maxLeft, expandedView.getLeft() + translationX + parentOffset));
+                } else {
+                  int minRight =
+                      shadowProvider.getLeft()
+                          + context.getResources().getDimensionPixelSize(R.dimen.bubble_size);
+                  shadowProvider.setRight(
+                      Math.max(minRight, expandedView.getRight() + translationX + parentOffset));
+                }
+              });
+      moveHandler = new MoveHandler(primaryButton, Bubble.this);
+    }
+
+    public ViewGroup getRoot() {
+      return root;
+    }
+
+    public ViewAnimator getPrimaryButton() {
+      return primaryButton;
+    }
+
+    public ImageView getPrimaryIcon() {
+      return primaryIcon;
+    }
+
+    public TextView getPrimaryText() {
+      return primaryText;
+    }
+
+    public CheckableImageButton getFirstButton() {
+      return firstButton;
+    }
+
+    public CheckableImageButton getSecondButton() {
+      return secondButton;
+    }
+
+    public CheckableImageButton getThirdButton() {
+      return thirdButton;
+    }
+
+    public View getExpandedView() {
+      return expandedView;
+    }
+
+    public View getShadowProvider() {
+      return shadowProvider;
+    }
+
+    public void setDrawerVisibility(int visibility) {
+      expandedView.setVisibility(visibility);
+      shadowProvider.setVisibility(visibility);
+    }
+
+    public boolean isMoving() {
+      return moveHandler.isMoving();
+    }
+
+    public void undoGravityOverride() {
+      moveHandler.undoGravityOverride();
+    }
+  }
+}
diff --git a/java/com/android/dialershared/bubble/BubbleInfo.java b/java/com/android/dialershared/bubble/BubbleInfo.java
new file mode 100644
index 0000000..eb9abd0
--- /dev/null
+++ b/java/com/android/dialershared/bubble/BubbleInfo.java
@@ -0,0 +1,123 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialershared.bubble;
+
+import android.app.PendingIntent;
+import android.graphics.drawable.Icon;
+import android.support.annotation.ColorInt;
+import android.support.annotation.NonNull;
+import android.support.annotation.Px;
+import com.google.auto.value.AutoValue;
+import java.util.Collections;
+import java.util.List;
+
+/** Info for displaying a {@link Bubble} */
+@AutoValue
+public abstract class BubbleInfo {
+  @ColorInt
+  public abstract int getPrimaryColor();
+
+  @NonNull
+  public abstract Icon getPrimaryIcon();
+
+  @NonNull
+  public abstract PendingIntent getPrimaryIntent();
+
+  @Px
+  public abstract int getStartingYPosition();
+
+  @NonNull
+  public abstract List<Action> getActions();
+
+  public static Builder builder() {
+    return new AutoValue_BubbleInfo.Builder().setActions(Collections.emptyList());
+  }
+
+  public static Builder from(@NonNull BubbleInfo bubbleInfo) {
+    return builder()
+        .setPrimaryIntent(bubbleInfo.getPrimaryIntent())
+        .setPrimaryColor(bubbleInfo.getPrimaryColor())
+        .setPrimaryIcon(bubbleInfo.getPrimaryIcon())
+        .setStartingYPosition(bubbleInfo.getStartingYPosition())
+        .setActions(bubbleInfo.getActions());
+  }
+
+  /** Builder for {@link BubbleInfo} */
+  @AutoValue.Builder
+  public abstract static class Builder {
+
+    public abstract Builder setPrimaryColor(@ColorInt int primaryColor);
+
+    public abstract Builder setPrimaryIcon(@NonNull Icon primaryIcon);
+
+    public abstract Builder setPrimaryIntent(@NonNull PendingIntent primaryIntent);
+
+    public abstract Builder setStartingYPosition(@Px int startingYPosition);
+
+    public abstract Builder setActions(List<Action> actions);
+
+    public abstract BubbleInfo build();
+  }
+
+  /** Represents actions to be shown in the bubble when expanded */
+  @AutoValue
+  public abstract static class Action {
+
+    @NonNull
+    public abstract Icon getIcon();
+
+    @NonNull
+    public abstract CharSequence getName();
+
+    @NonNull
+    public abstract PendingIntent getIntent();
+
+    public abstract boolean isEnabled();
+
+    public abstract boolean isChecked();
+
+    public static Builder builder() {
+      return new AutoValue_BubbleInfo_Action.Builder().setEnabled(true).setChecked(false);
+    }
+
+    public static Builder from(@NonNull Action action) {
+      return builder()
+          .setIntent(action.getIntent())
+          .setChecked(action.isChecked())
+          .setEnabled(action.isEnabled())
+          .setName(action.getName())
+          .setIcon(action.getIcon());
+    }
+
+    /** Builder for {@link Action} */
+    @AutoValue.Builder
+    public abstract static class Builder {
+
+      public abstract Builder setIcon(@NonNull Icon icon);
+
+      public abstract Builder setName(@NonNull CharSequence name);
+
+      public abstract Builder setIntent(@NonNull PendingIntent intent);
+
+      public abstract Builder setEnabled(boolean enabled);
+
+      public abstract Builder setChecked(boolean checked);
+
+      public abstract Action build();
+    }
+  }
+}
diff --git a/java/com/android/dialershared/bubble/ChangeOnScreenBounds.java b/java/com/android/dialershared/bubble/ChangeOnScreenBounds.java
new file mode 100644
index 0000000..4da6a35
--- /dev/null
+++ b/java/com/android/dialershared/bubble/ChangeOnScreenBounds.java
@@ -0,0 +1,166 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialershared.bubble;
+
+import android.animation.Animator;
+import android.animation.AnimatorSet;
+import android.animation.ObjectAnimator;
+import android.graphics.Path;
+import android.graphics.PointF;
+import android.graphics.Rect;
+import android.transition.Transition;
+import android.transition.TransitionValues;
+import android.util.Property;
+import android.view.View;
+import android.view.ViewGroup;
+
+/** Similar to {@link android.transition.ChangeBounds ChangeBounds} but works across windows */
+public class ChangeOnScreenBounds extends Transition {
+
+  private static final String PROPNAME_BOUNDS = "bubble:changeScreenBounds:bounds";
+  private static final String PROPNAME_SCREEN_X = "bubble:changeScreenBounds:screenX";
+  private static final String PROPNAME_SCREEN_Y = "bubble:changeScreenBounds:screenY";
+
+  private static final Property<ViewBounds, PointF> TOP_LEFT_PROPERTY =
+      new Property<ViewBounds, PointF>(PointF.class, "topLeft") {
+        @Override
+        public void set(ViewBounds viewBounds, PointF topLeft) {
+          viewBounds.setTopLeft(topLeft);
+        }
+
+        @Override
+        public PointF get(ViewBounds viewBounds) {
+          return null;
+        }
+      };
+
+  private static final Property<ViewBounds, PointF> BOTTOM_RIGHT_PROPERTY =
+      new Property<ViewBounds, PointF>(PointF.class, "bottomRight") {
+        @Override
+        public void set(ViewBounds viewBounds, PointF bottomRight) {
+          viewBounds.setBottomRight(bottomRight);
+        }
+
+        @Override
+        public PointF get(ViewBounds viewBounds) {
+          return null;
+        }
+      };
+  private final int[] tempLocation = new int[2];
+
+  @Override
+  public void captureStartValues(TransitionValues transitionValues) {
+    captureValues(transitionValues);
+  }
+
+  @Override
+  public void captureEndValues(TransitionValues transitionValues) {
+    captureValues(transitionValues);
+  }
+
+  private void captureValues(TransitionValues values) {
+    View view = values.view;
+
+    if (view.isLaidOut() || view.getWidth() != 0 || view.getHeight() != 0) {
+      values.values.put(
+          PROPNAME_BOUNDS,
+          new Rect(view.getLeft(), view.getTop(), view.getRight(), view.getBottom()));
+      values.view.getLocationOnScreen(tempLocation);
+      values.values.put(PROPNAME_SCREEN_X, tempLocation[0]);
+      values.values.put(PROPNAME_SCREEN_Y, tempLocation[1]);
+    }
+  }
+
+  @Override
+  public Animator createAnimator(
+      ViewGroup sceneRoot, TransitionValues startValues, TransitionValues endValues) {
+    Rect startBounds = (Rect) startValues.values.get(PROPNAME_BOUNDS);
+
+    // Offset the startBounds by the difference in screen position
+    int startScreenX = (Integer) startValues.values.get(PROPNAME_SCREEN_X);
+    int startScreenY = (Integer) startValues.values.get(PROPNAME_SCREEN_Y);
+    int endScreenX = (Integer) endValues.values.get(PROPNAME_SCREEN_X);
+    int endScreenY = (Integer) endValues.values.get(PROPNAME_SCREEN_Y);
+    startBounds.offset(startScreenX - endScreenX, startScreenY - endScreenY);
+
+    Rect endBounds = (Rect) endValues.values.get(PROPNAME_BOUNDS);
+    final int startLeft = startBounds.left;
+    final int endLeft = endBounds.left;
+    final int startTop = startBounds.top;
+    final int endTop = endBounds.top;
+    final int startRight = startBounds.right;
+    final int endRight = endBounds.right;
+    final int startBottom = startBounds.bottom;
+    final int endBottom = endBounds.bottom;
+    ViewBounds viewBounds = new ViewBounds(endValues.view);
+    viewBounds.setTopLeft(new PointF(startLeft, startTop));
+    viewBounds.setBottomRight(new PointF(startRight, startBottom));
+
+    // Animate the top left and bottom right corners along a path
+    Path topLeftPath = getPathMotion().getPath(startLeft, startTop, endLeft, endTop);
+    ObjectAnimator topLeftAnimator =
+        ObjectAnimator.ofObject(viewBounds, TOP_LEFT_PROPERTY, null, topLeftPath);
+
+    Path bottomRightPath = getPathMotion().getPath(startRight, startBottom, endRight, endBottom);
+    ObjectAnimator bottomRightAnimator =
+        ObjectAnimator.ofObject(viewBounds, BOTTOM_RIGHT_PROPERTY, null, bottomRightPath);
+    AnimatorSet set = new AnimatorSet();
+    set.playTogether(topLeftAnimator, bottomRightAnimator);
+    return set;
+  }
+
+  private static class ViewBounds {
+    private int left;
+    private int top;
+    private int right;
+    private int bottom;
+    private final View view;
+    private int topLeftCalls;
+    private int bottomRightCalls;
+
+    public ViewBounds(View view) {
+      this.view = view;
+    }
+
+    public void setTopLeft(PointF topLeft) {
+      left = Math.round(topLeft.x);
+      top = Math.round(topLeft.y);
+      topLeftCalls++;
+      if (topLeftCalls == bottomRightCalls) {
+        updateLeftTopRightBottom();
+      }
+    }
+
+    public void setBottomRight(PointF bottomRight) {
+      right = Math.round(bottomRight.x);
+      bottom = Math.round(bottomRight.y);
+      bottomRightCalls++;
+      if (topLeftCalls == bottomRightCalls) {
+        updateLeftTopRightBottom();
+      }
+    }
+
+    private void updateLeftTopRightBottom() {
+      view.setLeft(left);
+      view.setTop(top);
+      view.setRight(right);
+      view.setBottom(bottom);
+      topLeftCalls = 0;
+      bottomRightCalls = 0;
+    }
+  }
+}
diff --git a/java/com/android/dialershared/bubble/CheckableImageButton.java b/java/com/android/dialershared/bubble/CheckableImageButton.java
new file mode 100644
index 0000000..7a5a432
--- /dev/null
+++ b/java/com/android/dialershared/bubble/CheckableImageButton.java
@@ -0,0 +1,101 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialershared.bubble;
+
+import android.content.Context;
+import android.support.v4.view.AccessibilityDelegateCompat;
+import android.support.v4.view.ViewCompat;
+import android.support.v4.view.accessibility.AccessibilityEventCompat;
+import android.support.v4.view.accessibility.AccessibilityNodeInfoCompat;
+import android.support.v7.widget.AppCompatImageButton;
+import android.util.AttributeSet;
+import android.view.View;
+import android.view.accessibility.AccessibilityEvent;
+import android.widget.Checkable;
+
+/**
+ * An {@link android.widget.ImageButton ImageButton} that implements {@link Checkable} and
+ * propagates the checkable state
+ */
+public class CheckableImageButton extends AppCompatImageButton implements Checkable {
+
+  // Copied without modification from AppCompat library
+
+  private static final int[] DRAWABLE_STATE_CHECKED = new int[] {android.R.attr.state_checked};
+
+  private boolean mChecked;
+
+  public CheckableImageButton(Context context) {
+    this(context, null);
+  }
+
+  public CheckableImageButton(Context context, AttributeSet attrs) {
+    this(context, attrs, android.R.attr.imageButtonStyle);
+  }
+
+  public CheckableImageButton(Context context, AttributeSet attrs, int defStyleAttr) {
+    super(context, attrs, defStyleAttr);
+
+    ViewCompat.setAccessibilityDelegate(
+        this,
+        new AccessibilityDelegateCompat() {
+          @Override
+          public void onInitializeAccessibilityEvent(View host, AccessibilityEvent event) {
+            super.onInitializeAccessibilityEvent(host, event);
+            event.setChecked(isChecked());
+          }
+
+          @Override
+          public void onInitializeAccessibilityNodeInfo(
+              View host, AccessibilityNodeInfoCompat info) {
+            super.onInitializeAccessibilityNodeInfo(host, info);
+            info.setCheckable(true);
+            info.setChecked(isChecked());
+          }
+        });
+  }
+
+  @Override
+  public void setChecked(boolean checked) {
+    if (mChecked != checked) {
+      mChecked = checked;
+      refreshDrawableState();
+      sendAccessibilityEvent(AccessibilityEventCompat.TYPE_WINDOW_CONTENT_CHANGED);
+    }
+  }
+
+  @Override
+  public boolean isChecked() {
+    return mChecked;
+  }
+
+  @Override
+  public void toggle() {
+    setChecked(!mChecked);
+  }
+
+  @Override
+  public int[] onCreateDrawableState(int extraSpace) {
+    if (mChecked) {
+      return mergeDrawableStates(
+          super.onCreateDrawableState(extraSpace + DRAWABLE_STATE_CHECKED.length),
+          DRAWABLE_STATE_CHECKED);
+    } else {
+      return super.onCreateDrawableState(extraSpace);
+    }
+  }
+}
diff --git a/java/com/android/dialershared/bubble/MoveHandler.java b/java/com/android/dialershared/bubble/MoveHandler.java
new file mode 100644
index 0000000..bc6db64
--- /dev/null
+++ b/java/com/android/dialershared/bubble/MoveHandler.java
@@ -0,0 +1,264 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialershared.bubble;
+
+import android.content.Context;
+import android.graphics.Point;
+import android.support.animation.FloatPropertyCompat;
+import android.support.animation.SpringAnimation;
+import android.support.animation.SpringForce;
+import android.support.annotation.NonNull;
+import android.support.v4.math.MathUtils;
+import android.view.Gravity;
+import android.view.MotionEvent;
+import android.view.VelocityTracker;
+import android.view.View;
+import android.view.View.OnTouchListener;
+import android.view.ViewConfiguration;
+import android.view.WindowManager;
+import android.view.WindowManager.LayoutParams;
+import android.widget.Scroller;
+
+/** Handles touches and manages moving the bubble in response */
+class MoveHandler implements OnTouchListener {
+
+  // Amount the ViewConfiguration's minFlingVelocity will be scaled by for our own minVelocity
+  private static final int MIN_FLING_VELOCITY_FACTOR = 8;
+  // The friction multiplier to control how slippery the bubble is when flung
+  private static final float SCROLL_FRICTION_MULTIPLIER = 4f;
+
+  private final Context context;
+  private final WindowManager windowManager;
+  private final Bubble bubble;
+  private final int minX;
+  private final int minY;
+  private final int maxX;
+  private final int maxY;
+  private final int bubbleSize;
+  private final int shadowPaddingSize;
+  private final float touchSlopSquared;
+
+  private boolean isMoving;
+  private float firstX;
+  private float firstY;
+
+  private SpringAnimation moveXAnimation;
+  private SpringAnimation moveYAnimation;
+  private VelocityTracker velocityTracker;
+  private Scroller scroller;
+
+  // Handles the left/right gravity conversion and centering
+  private final FloatPropertyCompat<WindowManager.LayoutParams> xProperty =
+      new FloatPropertyCompat<LayoutParams>("xProperty") {
+        @Override
+        public float getValue(LayoutParams windowParams) {
+          int realX = windowParams.x;
+          realX = realX + bubbleSize / 2;
+          realX = realX + shadowPaddingSize;
+          if (relativeToRight(windowParams)) {
+            int displayWidth = context.getResources().getDisplayMetrics().widthPixels;
+            realX = displayWidth - realX;
+          }
+          return MathUtils.clamp(realX, minX, maxX);
+        }
+
+        @Override
+        public void setValue(LayoutParams windowParams, float value) {
+          boolean wasOnRight = (windowParams.gravity & Gravity.RIGHT) == Gravity.RIGHT;
+          int displayWidth = context.getResources().getDisplayMetrics().widthPixels;
+          boolean onRight;
+          Integer gravityOverride = bubble.getGravityOverride();
+          if (gravityOverride == null) {
+            onRight = value > displayWidth / 2;
+          } else {
+            onRight = (gravityOverride & Gravity.RIGHT) == Gravity.RIGHT;
+          }
+          int centeringOffset = bubbleSize / 2 + shadowPaddingSize;
+          windowParams.x =
+              (int) (onRight ? (displayWidth - value - centeringOffset) : value - centeringOffset);
+          windowParams.gravity = Gravity.TOP | (onRight ? Gravity.RIGHT : Gravity.LEFT);
+          if (wasOnRight != onRight) {
+            bubble.onLeftRightSwitch(onRight);
+          }
+          if (bubble.isShowing()) {
+            windowManager.updateViewLayout(bubble.getRootView(), windowParams);
+          }
+        }
+      };
+
+  private final FloatPropertyCompat<WindowManager.LayoutParams> yProperty =
+      new FloatPropertyCompat<LayoutParams>("yProperty") {
+        @Override
+        public float getValue(LayoutParams object) {
+          return MathUtils.clamp(object.y + bubbleSize + shadowPaddingSize, minY, maxY);
+        }
+
+        @Override
+        public void setValue(LayoutParams object, float value) {
+          object.y = (int) value - bubbleSize - shadowPaddingSize;
+          if (bubble.isShowing()) {
+            windowManager.updateViewLayout(bubble.getRootView(), object);
+          }
+        }
+      };
+
+  public MoveHandler(@NonNull View targetView, @NonNull Bubble bubble) {
+    this.bubble = bubble;
+    context = targetView.getContext();
+    windowManager = context.getSystemService(WindowManager.class);
+
+    bubbleSize = context.getResources().getDimensionPixelSize(R.dimen.bubble_size);
+    shadowPaddingSize =
+        context.getResources().getDimensionPixelOffset(R.dimen.bubble_shadow_padding_size);
+    minX =
+        context.getResources().getDimensionPixelOffset(R.dimen.bubble_safe_margin_x)
+            + bubbleSize / 2;
+    minY =
+        context.getResources().getDimensionPixelOffset(R.dimen.bubble_safe_margin_y)
+            + bubbleSize / 2;
+    maxX = context.getResources().getDisplayMetrics().widthPixels - minX;
+    maxY = context.getResources().getDisplayMetrics().heightPixels - minY;
+
+    // Squared because it will be compared against the square of the touch delta. This is more
+    // efficient than needing to take a square root.
+    touchSlopSquared = (float) Math.pow(ViewConfiguration.get(context).getScaledTouchSlop(), 2);
+
+    targetView.setOnTouchListener(this);
+  }
+
+  public boolean isMoving() {
+    return isMoving;
+  }
+
+  public void undoGravityOverride() {
+    LayoutParams windowParams = bubble.getWindowParams();
+    xProperty.setValue(windowParams, xProperty.getValue(windowParams));
+  }
+
+  @Override
+  public boolean onTouch(View v, MotionEvent event) {
+    float eventX = event.getRawX();
+    float eventY = event.getRawY();
+    switch (event.getActionMasked()) {
+      case MotionEvent.ACTION_DOWN:
+        firstX = eventX;
+        firstY = eventY;
+        velocityTracker = VelocityTracker.obtain();
+        break;
+      case MotionEvent.ACTION_MOVE:
+        if (isMoving || hasExceededTouchSlop(event)) {
+          if (!isMoving) {
+            isMoving = true;
+            bubble.onMoveStart();
+          }
+
+          if (moveXAnimation == null) {
+            moveXAnimation = new SpringAnimation(bubble.getWindowParams(), xProperty);
+            moveXAnimation.setSpring(new SpringForce());
+            moveXAnimation.getSpring().setDampingRatio(SpringForce.DAMPING_RATIO_NO_BOUNCY);
+          }
+          if (moveYAnimation == null) {
+            moveYAnimation = new SpringAnimation(bubble.getWindowParams(), yProperty);
+            moveYAnimation.setSpring(new SpringForce());
+            moveYAnimation.getSpring().setDampingRatio(SpringForce.DAMPING_RATIO_NO_BOUNCY);
+          }
+
+          moveXAnimation.animateToFinalPosition(MathUtils.clamp(eventX, minX, maxX));
+          moveYAnimation.animateToFinalPosition(MathUtils.clamp(eventY, minY, maxY));
+        }
+
+        velocityTracker.addMovement(event);
+        break;
+      case MotionEvent.ACTION_UP:
+        if (isMoving) {
+          ViewConfiguration viewConfiguration = ViewConfiguration.get(context);
+          velocityTracker.computeCurrentVelocity(
+              1000, viewConfiguration.getScaledMaximumFlingVelocity());
+          float xVelocity = velocityTracker.getXVelocity();
+          float yVelocity = velocityTracker.getYVelocity();
+          boolean isFling = isFling(xVelocity, yVelocity);
+
+          if (isFling) {
+            Point target =
+                findTarget(
+                    xVelocity,
+                    yVelocity,
+                    (int) xProperty.getValue(bubble.getWindowParams()),
+                    (int) yProperty.getValue(bubble.getWindowParams()));
+
+            moveXAnimation.animateToFinalPosition(target.x);
+            moveYAnimation.animateToFinalPosition(target.y);
+          } else {
+            snapX();
+          }
+          isMoving = false;
+          bubble.onMoveFinish();
+        } else {
+          v.performClick();
+          bubble.primaryButtonClick();
+        }
+        break;
+    }
+    return true;
+  }
+
+  private Point findTarget(float xVelocity, float yVelocity, int startX, int startY) {
+    if (scroller == null) {
+      scroller = new Scroller(context);
+      scroller.setFriction(ViewConfiguration.getScrollFriction() * SCROLL_FRICTION_MULTIPLIER);
+    }
+
+    // Find where a fling would end vertically
+    scroller.fling(startX, startY, (int) xVelocity, (int) yVelocity, minX, maxX, minY, maxY);
+    int targetY = scroller.getFinalY();
+    scroller.abortAnimation();
+
+    // If the x component of the velocity is above the minimum fling velocity, use velocity to
+    // determine edge. Otherwise use its starting position
+    boolean pullRight = isFling(xVelocity, 0) ? xVelocity > 0 : isOnRightHalf(startX);
+    return new Point(pullRight ? maxX : minX, targetY);
+  }
+
+  private boolean isFling(float xVelocity, float yVelocity) {
+    int minFlingVelocity =
+        ViewConfiguration.get(context).getScaledMinimumFlingVelocity() * MIN_FLING_VELOCITY_FACTOR;
+    return getMagnitudeSquared(xVelocity, yVelocity) > minFlingVelocity * minFlingVelocity;
+  }
+
+  private boolean isOnRightHalf(float currentX) {
+    return currentX > (minX + maxX) / 2;
+  }
+
+  private void snapX() {
+    // Check if x value is closer to min or max
+    boolean pullRight = isOnRightHalf(xProperty.getValue(bubble.getWindowParams()));
+    moveXAnimation.animateToFinalPosition(pullRight ? maxX : minX);
+  }
+
+  private boolean relativeToRight(LayoutParams windowParams) {
+    return (windowParams.gravity & Gravity.RIGHT) == Gravity.RIGHT;
+  }
+
+  private boolean hasExceededTouchSlop(MotionEvent event) {
+    return getMagnitudeSquared(event.getRawX() - firstX, event.getRawY() - firstY)
+        > touchSlopSquared;
+  }
+
+  private float getMagnitudeSquared(float deltaX, float deltaY) {
+    return deltaX * deltaX + deltaY * deltaY;
+  }
+}
diff --git a/java/com/android/dialershared/bubble/WindowRoot.java b/java/com/android/dialershared/bubble/WindowRoot.java
new file mode 100644
index 0000000..2c17666
--- /dev/null
+++ b/java/com/android/dialershared/bubble/WindowRoot.java
@@ -0,0 +1,55 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.dialershared.bubble;
+
+import android.content.Context;
+import android.support.annotation.NonNull;
+import android.view.KeyEvent;
+import android.widget.FrameLayout;
+
+/**
+ * ViewGroup that handles some overlay window concerns. Allows back button events to be listened for
+ * via an interface.
+ */
+public class WindowRoot extends FrameLayout {
+
+  private OnBackPressedListener backPressedListener;
+
+  /** Callback for when the back button is pressed while this window is in focus */
+  public interface OnBackPressedListener {
+    boolean onBackPressed();
+  }
+
+  public WindowRoot(@NonNull Context context) {
+    super(context);
+  }
+
+  public void setOnBackPressedListener(OnBackPressedListener listener) {
+    backPressedListener = listener;
+  }
+
+  @Override
+  public boolean dispatchKeyEvent(KeyEvent event) {
+    if (event.getKeyCode() == KeyEvent.KEYCODE_BACK && backPressedListener != null) {
+      if (event.getAction() == KeyEvent.ACTION_UP) {
+        return backPressedListener.onBackPressed();
+      }
+      return true;
+    }
+    return super.dispatchKeyEvent(event);
+  }
+}
diff --git a/java/com/android/dialershared/bubble/g3doc/INTEGRATION.md b/java/com/android/dialershared/bubble/g3doc/INTEGRATION.md
new file mode 100644
index 0000000..a13a605
--- /dev/null
+++ b/java/com/android/dialershared/bubble/g3doc/INTEGRATION.md
@@ -0,0 +1,69 @@
+# Floating Bubble Integration
+
+go/bubble-integration
+
+Author: keyboardr@
+
+Last Updated: 2017-06-06
+
+Floating bubbles provide a lightweight means of providing interactive UI while
+the user is away from the app. This document details the steps necessary to
+integrate these bubbles into your app.
+
+[TOC]
+
+![Floating bubble](images/bubble_collapsed.png){height=400}
+
+## Ensure Bubbles can be shown
+
+Add the `android.permission.SYSTEM_ALERT_WINDOW` permission to your manifest.
+Before you show the bubble, call `Bubble.canShowBubbles(Context)` to see if the
+user has granted you permission. If not, you can start an Activity from
+`Bubble.getRequestPermissionIntent(Context)` to navigate the user to the system
+settings to enable drawing over other apps. This is more than just a simple
+runtime permission; the user must explicitly allow you to draw over other apps
+via this system setting. System apps may have this allowed by default, but be
+sure to test.
+
+## Create your initial `BubbleInfo`
+
+Use `BubbleInfo.builder()` to populate a `BubbleInfo` with your color, main
+icon, main Intent (which should navigate back to your app), starting Y position,
+and a list of `Actions` to put in the drawer. Each `Action` will define its
+icon, user-displayable name (used for content description), Intent to perform
+when clicked, whether it is enabled (optional, default true), and whether it is
+checked (optional, default false).
+
+![Floating bubble expanded](images/bubble_expanded.png){height=400}
+
+## Create, show, and hide the Bubble
+
+Create the bubble using `Bubble.createBubble(Context, BubbleInfo)`. The `show()`
+method is safe to call at any time. If the Bubble is already showing, it is a
+no-op. `hide()` may also be called at any time and will collapse the drawer
+before hiding if already open. While `show()` will show immediately, `hide()`
+may need to wait for other operations or animations before the bubble is hidden.
+It is unlikely you will need to keep track of this, however. The bubble will be
+hidden at its next opportunity, and `hide()` will not block.
+
+![Floating bubble with state](images/bubble_state.png){height=400}
+
+## Update the Bubble's state
+
+Call `Bubble.setBubbleInfo(BubbleInfo)` to update all displayed state.
+`BubbleInfo`s are immutable, so to make a new one using an existing
+`BubbleInfo`, use `BubbleInfo.from(BubbleInfo)` to get a `Builder` with
+prepopulated info. If only the `Action` state has changed, it is more efficient
+to just call `Bubble.updateActions(List<Action>)`
+
+![Floating bubble with text](images/bubble_text.png){height=400}
+
+## Show text
+
+To temporarily replace the icon with a textual message, call
+`Bubble.showText(CharSequence)`. The text will be displayed for several seconds
+before transitioning back to the primary icon. The drawer will be closed if open
+and cannot be reopened while the text is displayed. Any calls to `hide()` will
+be deferred until after the text is done being displayed, so if you wish to show
+an ending message of some sort you may call `hide()` immediately after
+`showText(CharSequence)`.
diff --git a/java/com/android/dialershared/bubble/g3doc/images/bubble_collapsed.png b/java/com/android/dialershared/bubble/g3doc/images/bubble_collapsed.png
new file mode 100644
index 0000000..7ecc067
--- /dev/null
+++ b/java/com/android/dialershared/bubble/g3doc/images/bubble_collapsed.png
Binary files differ
diff --git a/java/com/android/dialershared/bubble/g3doc/images/bubble_expanded.png b/java/com/android/dialershared/bubble/g3doc/images/bubble_expanded.png
new file mode 100644
index 0000000..cd477f3
--- /dev/null
+++ b/java/com/android/dialershared/bubble/g3doc/images/bubble_expanded.png
Binary files differ
diff --git a/java/com/android/dialershared/bubble/g3doc/images/bubble_state.png b/java/com/android/dialershared/bubble/g3doc/images/bubble_state.png
new file mode 100644
index 0000000..21ca8a8
--- /dev/null
+++ b/java/com/android/dialershared/bubble/g3doc/images/bubble_state.png
Binary files differ
diff --git a/java/com/android/dialershared/bubble/g3doc/images/bubble_text.png b/java/com/android/dialershared/bubble/g3doc/images/bubble_text.png
new file mode 100644
index 0000000..9c476dc
--- /dev/null
+++ b/java/com/android/dialershared/bubble/g3doc/images/bubble_text.png
Binary files differ
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialershared/bubble/res/color/bubble_checkable_mask.xml
similarity index 69%
rename from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
rename to java/com/android/dialershared/bubble/res/color/bubble_checkable_mask.xml
index ecf704e..f9416ab 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialershared/bubble/res/color/bubble_checkable_mask.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +14,8 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+  <item android:color="@android:color/white" android:state_checked="true"/>
+  <item android:color="@android:color/transparent"/>
+</selector>
diff --git a/java/com/android/contacts/common/res/drawable/ic_person_add_tinted_24dp.xml b/java/com/android/dialershared/bubble/res/color/bubble_icon_tint_states.xml
similarity index 70%
rename from java/com/android/contacts/common/res/drawable/ic_person_add_tinted_24dp.xml
rename to java/com/android/dialershared/bubble/res/color/bubble_icon_tint_states.xml
index c2538cf..33ca1fd 100644
--- a/java/com/android/contacts/common/res/drawable/ic_person_add_tinted_24dp.xml
+++ b/java/com/android/dialershared/bubble/res/color/bubble_icon_tint_states.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +14,8 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/quantum_ic_person_add_white_24"
-  android:tint="@color/actionbar_icon_color"/>
+
+<selector xmlns:android="http://schemas.android.com/apk/res/android">
+  <item android:color="#80FFFFFF" android:state_enabled="false"/>
+  <item android:color="@android:color/white"/>
+</selector>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_ltr.xml
similarity index 67%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_ltr.xml
index ecf704e..77c813a 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_ltr.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +14,10 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+
+<shape xmlns:android="http://schemas.android.com/apk/res/android">
+  <corners
+      android:bottomRightRadius="@dimen/bubble_size"
+      android:topRightRadius="@dimen/bubble_size"/>
+  <solid android:color="@android:color/white"/>
+</shape>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_rtl.xml
similarity index 67%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_rtl.xml
index ecf704e..9e25421 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialershared/bubble/res/drawable/bubble_background_pill_rtl.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +14,10 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+
+<shape xmlns:android="http://schemas.android.com/apk/res/android">
+  <corners
+      android:bottomLeftRadius="@dimen/bubble_size"
+      android:topLeftRadius="@dimen/bubble_size"/>
+  <solid android:color="@android:color/white"/>
+</shape>
diff --git a/java/com/android/dialershared/bubble/res/drawable/bubble_ripple_checkable_circle.xml b/java/com/android/dialershared/bubble/res/drawable/bubble_ripple_checkable_circle.xml
new file mode 100644
index 0000000..85e0b24
--- /dev/null
+++ b/java/com/android/dialershared/bubble/res/drawable/bubble_ripple_checkable_circle.xml
@@ -0,0 +1,30 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+
+<ripple xmlns:android="http://schemas.android.com/apk/res/android"
+    android:color="?android:colorControlHighlight">
+  <item>
+    <shape android:shape="oval">
+      <solid android:color="@color/bubble_checkable_mask"/>
+    </shape>
+  </item>
+  <item android:id="@android:id/mask">
+    <shape android:shape="oval">
+      <solid android:color="@android:color/white"/>
+    </shape>
+  </item>
+</ripple>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialershared/bubble/res/drawable/bubble_ripple_circle.xml
similarity index 64%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialershared/bubble/res/drawable/bubble_ripple_circle.xml
index ecf704e..8d5cf0b 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialershared/bubble/res/drawable/bubble_ripple_circle.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +14,13 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+
+<ripple xmlns:android="http://schemas.android.com/apk/res/android"
+    android:color="?android:colorControlHighlight">
+  <item>
+    <shape>
+      <corners android:radius="@dimen/bubble_size"/>
+      <solid android:color="@android:color/white"/>
+    </shape>
+  </item>
+</ripple>
diff --git a/java/com/android/dialershared/bubble/res/layout/bubble_base.xml b/java/com/android/dialershared/bubble/res/layout/bubble_base.xml
new file mode 100644
index 0000000..76970f0
--- /dev/null
+++ b/java/com/android/dialershared/bubble/res/layout/bubble_base.xml
@@ -0,0 +1,127 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:tools="http://schemas.android.com/tools"
+    android:layout_width="wrap_content"
+    android:layout_height="wrap_content"
+    android:clipToPadding="false"
+    tools:theme="@style/Theme.AppCompat">
+  <View
+      android:id="@+id/bubble_drawer_shadow_provider"
+      android:layout_width="@dimen/bubble_size"
+      android:layout_height="@dimen/bubble_size"
+      android:layout_marginTop="@dimen/bubble_shadow_padding_size"
+      android:layout_marginBottom="@dimen/bubble_shadow_padding_size"
+      android:layout_marginStart="@dimen/bubble_shadow_padding_size"
+      android:background="@drawable/bubble_ripple_circle"
+      android:backgroundTint="@android:color/transparent"
+      android:elevation="10dp"
+      android:visibility="invisible"
+      />
+  <FrameLayout
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_marginStart="48dp"
+      android:elevation="10dp"
+      android:paddingTop="@dimen/bubble_shadow_padding_size"
+      android:paddingBottom="@dimen/bubble_shadow_padding_size"
+      android:paddingEnd="@dimen/bubble_shadow_padding_size">
+
+    <LinearLayout
+        android:id="@+id/bubble_expanded_layout"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:paddingStart="32dp"
+        android:paddingEnd="8dp"
+        android:background="@drawable/bubble_background_pill_ltr"
+        android:layoutDirection="inherit"
+        android:orientation="horizontal"
+        android:visibility="gone"
+        tools:backgroundTint="#FF0000FF"
+        tools:visibility="visible">
+      <com.android.dialershared.bubble.CheckableImageButton
+          android:id="@+id/bubble_icon_first"
+          android:layout_width="@dimen/bubble_size"
+          android:layout_height="@dimen/bubble_size"
+          android:layout_marginStart="4dp"
+          android:padding="@dimen/bubble_icon_padding"
+          android:tint="@color/bubble_icon_tint_states"
+          android:tintMode="src_in"
+          tools:background="@drawable/bubble_ripple_checkable_circle"
+          tools:src="@android:drawable/ic_lock_idle_lock"/>
+      <com.android.dialershared.bubble.CheckableImageButton
+          android:id="@+id/bubble_icon_second"
+          android:layout_width="@dimen/bubble_size"
+          android:layout_height="@dimen/bubble_size"
+          android:layout_marginStart="4dp"
+          android:padding="@dimen/bubble_icon_padding"
+          android:tint="@color/bubble_icon_tint_states"
+          android:tintMode="src_in"
+          tools:background="@drawable/bubble_ripple_checkable_circle"
+          tools:src="@android:drawable/ic_input_add"/>
+      <com.android.dialershared.bubble.CheckableImageButton
+          android:id="@+id/bubble_icon_third"
+          android:layout_width="@dimen/bubble_size"
+          android:layout_height="@dimen/bubble_size"
+          android:layout_marginStart="4dp"
+          android:padding="@dimen/bubble_icon_padding"
+          android:tint="@color/bubble_icon_tint_states"
+          android:tintMode="src_in"
+          tools:background="@drawable/bubble_ripple_checkable_circle"
+          tools:src="@android:drawable/ic_menu_call"/>
+    </LinearLayout>
+  </FrameLayout>
+  <FrameLayout
+      android:id="@+id/bubble_primary_container"
+      android:layout_width="wrap_content"
+      android:layout_height="wrap_content"
+      android:layout_gravity="start"
+      android:animateLayoutChanges="true"
+      android:clipChildren="false"
+      android:clipToPadding="false"
+      android:elevation="12dp">
+    <ViewAnimator
+        android:id="@+id/bubble_button_primary"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_margin="@dimen/bubble_shadow_padding_size"
+        android:background="@drawable/bubble_ripple_circle"
+        android:measureAllChildren="false"
+        tools:backgroundTint="#FF0000AA">
+      <ImageView
+          android:id="@+id/bubble_icon_primary"
+          android:layout_width="@dimen/bubble_size"
+          android:layout_height="@dimen/bubble_size"
+          android:padding="@dimen/bubble_icon_padding"
+          android:tint="@android:color/white"
+          android:tintMode="src_in"
+          tools:src="@android:drawable/ic_btn_speak_now"/>
+      <TextView
+          android:id="@+id/bubble_text"
+          android:layout_width="wrap_content"
+          android:layout_height="@dimen/bubble_size"
+          android:paddingStart="@dimen/bubble_icon_padding"
+          android:paddingEnd="@dimen/bubble_icon_padding"
+          android:gravity="center"
+          android:minWidth="@dimen/bubble_size"
+          android:textAppearance="@style/TextAppearance.AppCompat"
+          tools:text="Call ended"/>
+    </ViewAnimator>
+  </FrameLayout>
+
+</FrameLayout>
diff --git a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml b/java/com/android/dialershared/bubble/res/values/colors.xml
similarity index 75%
rename from java/com/android/incallui/res/drawable/img_conference_automirrored.xml
rename to java/com/android/dialershared/bubble/res/values/colors.xml
index 78b2876..97545fa 100644
--- a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml
+++ b/java/com/android/dialershared/bubble/res/values/colors.xml
@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -16,6 +15,6 @@
   ~ limitations under the License
   -->
 
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/img_conference"/>
\ No newline at end of file
+<resources>
+  <color name="bubble_primary_background_darken">#33000000</color>
+</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/dialershared/bubble/res/values/values.xml
similarity index 61%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/dialershared/bubble/res/values/values.xml
index ecf704e..f581617 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/dialershared/bubble/res/values/values.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +14,12 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+
+<resources>
+  <dimen name="bubble_safe_margin_x">16dp</dimen>
+  <dimen name="bubble_safe_margin_y">64dp</dimen>
+  <dimen name="bubble_size">56dp</dimen>
+  <dimen name="bubble_icon_padding">16dp</dimen>
+  <dimen name="bubble_move_elevation_change">4dp</dimen>
+  <dimen name="bubble_shadow_padding_size">16dp</dimen>
+</resources>
diff --git a/java/com/android/incallui/AndroidManifest.xml b/java/com/android/incallui/AndroidManifest.xml
index 8539bd0..703e5b5 100644
--- a/java/com/android/incallui/AndroidManifest.xml
+++ b/java/com/android/incallui/AndroidManifest.xml
@@ -15,11 +15,11 @@
   -->
 
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-  package="com.android.incallui">
+    package="com.android.incallui">
 
   <uses-sdk
-    android:minSdkVersion="23"
-    android:targetSdkVersion="26"/>
+      android:minSdkVersion="23"
+      android:targetSdkVersion="26"/>
 
   <uses-permission android:name="android.permission.CONTROL_INCALL_EXPERIENCE"/>
   <!-- We use this to disable the status bar buttons of home, back and recent
@@ -31,8 +31,8 @@
   <!-- Warning: setting the required boolean to true would prevent installation of Dialer on
        devices which do not support a camera. -->
   <uses-feature
-    android:name="android.hardware.camera.any"
-    android:required="false"/>
+      android:name="android.hardware.camera.any"
+      android:required="false"/>
 
   <!-- Testing location -->
   <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
@@ -43,47 +43,49 @@
        Set taskAffinity for application is not working because it will be merged and the result is
   that all activities here still have same taskAffinity as activities under dialer. -->
   <application>
-    <meta-data android:name="android.telephony.hide_voicemail_settings_menu"
-      android:value="true"/>
+    <meta-data
+        android:name="android.telephony.hide_voicemail_settings_menu"
+        android:value="true"/>
+
     <activity
-      android:directBootAware="true"
-      android:excludeFromRecents="true"
-      android:exported="false"
-      android:label="@string/phoneAppLabel"
-      android:taskAffinity="com.android.incallui"
-      android:launchMode="singleInstance"
-      android:name="com.android.incallui.InCallActivity"
-      android:resizeableActivity="true"
-      android:screenOrientation="nosensor"
-      android:theme="@style/Theme.InCallScreen">
+        android:directBootAware="true"
+        android:excludeFromRecents="true"
+        android:exported="false"
+        android:label="@string/phoneAppLabel"
+        android:launchMode="singleInstance"
+        android:name="com.android.incallui.InCallActivity"
+        android:resizeableActivity="true"
+        android:screenOrientation="nosensor"
+        android:taskAffinity="com.android.incallui"
+        android:theme="@style/Theme.InCallScreen">
     </activity>
 
     <activity
-      android:directBootAware="true"
-      android:excludeFromRecents="true"
-      android:noHistory="true"
-      android:exported="false"
-      android:label="@string/manageConferenceLabel"
-      android:taskAffinity="com.android.incallui"
-      android:launchMode="singleTask"
-      android:name="com.android.incallui.ManageConferenceActivity"
-      android:resizeableActivity="true"
-      android:theme="@style/Theme.InCallScreen.ManageConference"/>
+        android:directBootAware="true"
+        android:excludeFromRecents="true"
+        android:exported="false"
+        android:label="@string/manageConferenceLabel"
+        android:launchMode="singleTask"
+        android:name="com.android.incallui.ManageConferenceActivity"
+        android:noHistory="true"
+        android:resizeableActivity="true"
+        android:taskAffinity="com.android.incallui"
+        android:theme="@style/Theme.InCallScreen.ManageConference"/>
 
     <service
-      android:directBootAware="true"
-      android:exported="true"
-      android:name="com.android.incallui.InCallServiceImpl"
-      android:permission="android.permission.BIND_INCALL_SERVICE">
+        android:directBootAware="true"
+        android:exported="true"
+        android:name="com.android.incallui.InCallServiceImpl"
+        android:permission="android.permission.BIND_INCALL_SERVICE">
       <meta-data
-        android:name="android.telecom.IN_CALL_SERVICE_UI"
-        android:value="true"/>
+          android:name="android.telecom.IN_CALL_SERVICE_UI"
+          android:value="true"/>
       <meta-data
-        android:name="android.telecom.IN_CALL_SERVICE_RINGING"
-        android:value="false"/>
+          android:name="android.telecom.IN_CALL_SERVICE_RINGING"
+          android:value="false"/>
       <meta-data
-        android:name="android.telecom.INCLUDE_EXTERNAL_CALLS"
-        android:value="true"/>
+          android:name="android.telecom.INCLUDE_EXTERNAL_CALLS"
+          android:value="true"/>
 
       <intent-filter>
         <action android:name="android.telecom.InCallService"/>
@@ -97,23 +99,35 @@
        excludeFromRecents="true"   -> Don't show in "recent apps" screen
        -->
     <activity
-      android:excludeFromRecents="true"
-      android:exported="false"
-      android:name="com.android.incallui.spam.SpamNotificationActivity"
-      android:noHistory="true"
-      android:taskAffinity=""
-      android:theme="@style/AfterCallNotificationTheme">
+        android:excludeFromRecents="true"
+        android:exported="false"
+        android:name="com.android.incallui.spam.SpamNotificationActivity"
+        android:noHistory="true"
+        android:taskAffinity=""
+        android:theme="@style/AfterCallNotificationTheme">
     </activity>
 
+    <activity
+        android:excludeFromRecents="true"
+        android:exported="false"
+        android:name=".AudioRouteSelectorActivity"
+        android:noHistory="true"
+        android:theme="@style/Theme.Incall.DialogHolder"
+        />
+
     <service
-      android:exported="false"
-      android:name="com.android.incallui.spam.SpamNotificationService"/>
+        android:exported="false"
+        android:name="com.android.incallui.spam.SpamNotificationService"/>
 
     <!-- BroadcastReceiver for receiving Intents from Notification mechanism. -->
     <receiver
-      android:directBootAware="true"
-      android:exported="false"
-      android:name="com.android.incallui.NotificationBroadcastReceiver"/>
+        android:directBootAware="true"
+        android:exported="false"
+        android:name="com.android.incallui.NotificationBroadcastReceiver"/>
+
+    <receiver
+        android:exported="false"
+        android:name=".ReturnToCallActionReceiver"/>
 
   </application>
 
diff --git a/java/com/android/incallui/AnswerScreenPresenter.java b/java/com/android/incallui/AnswerScreenPresenter.java
index ca34aa6..d530401 100644
--- a/java/com/android/incallui/AnswerScreenPresenter.java
+++ b/java/com/android/incallui/AnswerScreenPresenter.java
@@ -17,12 +17,14 @@
 package com.android.incallui;
 
 import android.content.Context;
+import android.os.SystemClock;
 import android.support.annotation.FloatRange;
 import android.support.annotation.NonNull;
 import android.support.v4.os.UserManagerCompat;
 import android.telecom.VideoProfile;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.common.concurrent.ThreadUtil;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.incallui.answer.protocol.AnswerScreen;
@@ -36,11 +38,14 @@
 /** Manages changes for an incoming call screen. */
 public class AnswerScreenPresenter
     implements AnswerScreenDelegate, DialerCall.CannedTextResponsesLoadedListener {
+  private static final int ACCEPT_REJECT_CALL_TIME_OUT_IN_MILLIS = 5000;
+
   @NonNull private final Context context;
   @NonNull private final AnswerScreen answerScreen;
   @NonNull private final DialerCall call;
+  private long actionPerformedTimeMillis;
 
-  public AnswerScreenPresenter(
+  AnswerScreenPresenter(
       @NonNull Context context, @NonNull AnswerScreen answerScreen, @NonNull DialerCall call) {
     LogUtil.i("AnswerScreenPresenter.constructor", null);
     this.context = Assert.isNotNull(context);
@@ -60,6 +65,13 @@
   }
 
   @Override
+  public boolean isActionTimeout() {
+    return actionPerformedTimeMillis != 0
+        && SystemClock.elapsedRealtime() - actionPerformedTimeMillis
+            >= ACCEPT_REJECT_CALL_TIME_OUT_IN_MILLIS;
+  }
+
+  @Override
   public void onAnswerScreenUnready() {
     call.removeCannedTextResponsesLoadedListener(this);
   }
@@ -73,6 +85,7 @@
   public void onRejectCallWithMessage(String message) {
     call.reject(true /* rejectWithMessage */, message);
     onDismissDialog();
+    addTimeoutCheck();
   }
 
   @Override
@@ -100,6 +113,7 @@
         call.answer();
       }
     }
+    addTimeoutCheck();
   }
 
   @Override
@@ -114,6 +128,7 @@
     } else {
       call.reject(false /* rejectWithMessage */, null);
     }
+    addTimeoutCheck();
   }
 
   @Override
@@ -124,9 +139,27 @@
       LogUtil.i("AnswerScreenPresenter.onAnswerAndReleaseCall", "activeCall == null");
       onAnswer(false);
     } else {
+      activeCall.setReleasedByAnsweringSecondCall(true);
       activeCall.addListener(new AnswerOnDisconnected(activeCall));
       activeCall.disconnect();
     }
+    addTimeoutCheck();
+  }
+
+  @Override
+  public void onAnswerAndReleaseButtonDisabled() {
+    DialerCall activeCall = CallList.getInstance().getActiveCall();
+    if (activeCall != null) {
+      activeCall.increaseSecondCallWithoutAnswerAndReleasedButtonTimes();
+    }
+  }
+
+  @Override
+  public void onAnswerAndReleaseButtonEnabled() {
+    DialerCall activeCall = CallList.getInstance().getActiveCall();
+    if (activeCall != null) {
+      activeCall.increaseAnswerAndReleaseButtonDisplayedTimes();
+    }
   }
 
   @Override
@@ -148,7 +181,7 @@
 
     private final DialerCall disconnectingCall;
 
-    public AnswerOnDisconnected(DialerCall disconnectingCall) {
+    AnswerOnDisconnected(DialerCall disconnectingCall) {
       this.disconnectingCall = disconnectingCall;
     }
 
@@ -183,10 +216,32 @@
 
     @Override
     public void onInternationalCallOnWifi() {}
+
+    @Override
+    public void onEnrichedCallSessionUpdate() {}
   }
 
   private boolean isSmsResponseAllowed(DialerCall call) {
     return UserManagerCompat.isUserUnlocked(context)
         && call.can(android.telecom.Call.Details.CAPABILITY_RESPOND_VIA_TEXT);
   }
+
+  private void addTimeoutCheck() {
+    actionPerformedTimeMillis = SystemClock.elapsedRealtime();
+    if (answerScreen.getAnswerScreenFragment().isVisible()) {
+      ThreadUtil.postDelayedOnUiThread(
+          () -> {
+            if (!answerScreen.getAnswerScreenFragment().isVisible()) {
+              LogUtil.d(
+                  "AnswerScreenPresenter.addTimeoutCheck",
+                  "accept/reject call timed out, do nothing");
+              return;
+            }
+            LogUtil.i("AnswerScreenPresenter.addTimeoutCheck", "accept/reject call timed out");
+            // Force re-evaluate which fragment to show.
+            InCallPresenter.getInstance().refreshUi();
+          },
+          ACCEPT_REJECT_CALL_TIME_OUT_IN_MILLIS);
+    }
+  }
 }
diff --git a/java/com/android/incallui/AnswerScreenPresenterStub.java b/java/com/android/incallui/AnswerScreenPresenterStub.java
index 7bff329..2f9e608 100644
--- a/java/com/android/incallui/AnswerScreenPresenterStub.java
+++ b/java/com/android/incallui/AnswerScreenPresenterStub.java
@@ -43,5 +43,16 @@
   public void onAnswerAndReleaseCall() {}
 
   @Override
+  public void onAnswerAndReleaseButtonEnabled() {}
+
+  @Override
+  public void onAnswerAndReleaseButtonDisabled() {}
+
+  @Override
   public void updateWindowBackgroundColor(@FloatRange(from = -1f, to = 1.0f) float progress) {}
+
+  @Override
+  public boolean isActionTimeout() {
+    return false;
+  }
 }
diff --git a/java/com/android/incallui/AudioRouteSelectorActivity.java b/java/com/android/incallui/AudioRouteSelectorActivity.java
new file mode 100644
index 0000000..dfd4d1a
--- /dev/null
+++ b/java/com/android/incallui/AudioRouteSelectorActivity.java
@@ -0,0 +1,47 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.incallui;
+
+import android.os.Bundle;
+import android.support.annotation.Nullable;
+import android.support.v4.app.FragmentActivity;
+import com.android.incallui.audiomode.AudioModeProvider;
+import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment;
+import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment.AudioRouteSelectorPresenter;
+import com.android.incallui.call.TelecomAdapter;
+
+/** Simple activity that just shows the audio route selector fragment */
+public class AudioRouteSelectorActivity extends FragmentActivity
+    implements AudioRouteSelectorPresenter {
+
+  @Override
+  protected void onCreate(@Nullable Bundle bundle) {
+    super.onCreate(bundle);
+    AudioRouteSelectorDialogFragment.newInstance(AudioModeProvider.getInstance().getAudioState())
+        .show(getSupportFragmentManager(), null);
+  }
+
+  @Override
+  public void onAudioRouteSelected(int audioRoute) {
+    TelecomAdapter.getInstance().setAudioRoute(audioRoute);
+  }
+
+  @Override
+  public void onAudioRouteSelectorDismiss() {
+    finish();
+  }
+}
diff --git a/java/com/android/incallui/CallButtonPresenter.java b/java/com/android/incallui/CallButtonPresenter.java
index b0c3a99..e36d9cf 100644
--- a/java/com/android/incallui/CallButtonPresenter.java
+++ b/java/com/android/incallui/CallButtonPresenter.java
@@ -300,23 +300,15 @@
    */
   @Override
   public void switchCameraClicked(boolean useFrontFacingCamera) {
-    InCallCameraManager cameraManager = InCallPresenter.getInstance().getInCallCameraManager();
-    cameraManager.setUseFrontFacingCamera(useFrontFacingCamera);
-
-    String cameraId = cameraManager.getActiveCameraId();
-    if (cameraId != null) {
-      final int cameraDir =
-          cameraManager.isUsingFrontFacingCamera()
-              ? CameraDirection.CAMERA_DIRECTION_FRONT_FACING
-              : CameraDirection.CAMERA_DIRECTION_BACK_FACING;
-      mCall.setCameraDir(cameraDir);
-      mCall.getVideoTech().setCamera(cameraId);
-    }
+    updateCamera(useFrontFacingCamera);
   }
 
   @Override
   public void toggleCameraClicked() {
     LogUtil.i("CallButtonPresenter.toggleCameraClicked", "");
+    if (mCall == null) {
+      return;
+    }
     Logger.get(mContext)
         .logCallImpression(
             DialerImpression.Type.IN_CALL_SCREEN_SWAP_CAMERA,
@@ -345,8 +337,11 @@
             mCall.getTimeAddedMs());
 
     if (pause) {
+      mCall.getVideoTech().setCamera(null);
       mCall.getVideoTech().stopTransmission();
     } else {
+      updateCamera(
+          InCallPresenter.getInstance().getInCallCameraManager().isUsingFrontFacingCamera());
       mCall.getVideoTech().resumeTransmission();
     }
 
@@ -354,6 +349,21 @@
     mInCallButtonUi.enableButton(InCallButtonIds.BUTTON_PAUSE_VIDEO, false);
   }
 
+  private void updateCamera(boolean useFrontFacingCamera) {
+    InCallCameraManager cameraManager = InCallPresenter.getInstance().getInCallCameraManager();
+    cameraManager.setUseFrontFacingCamera(useFrontFacingCamera);
+
+    String cameraId = cameraManager.getActiveCameraId();
+    if (cameraId != null) {
+      final int cameraDir =
+          cameraManager.isUsingFrontFacingCamera()
+              ? CameraDirection.CAMERA_DIRECTION_FRONT_FACING
+              : CameraDirection.CAMERA_DIRECTION_BACK_FACING;
+      mCall.setCameraDir(cameraDir);
+      mCall.getVideoTech().setCamera(cameraId);
+    }
+  }
+
   private void updateUi(InCallState state, DialerCall call) {
     LogUtil.v("CallButtonPresenter", "updating call UI for call: ", call);
 
diff --git a/java/com/android/incallui/CallCardPresenter.java b/java/com/android/incallui/CallCardPresenter.java
index c2b99c1..67b9177 100644
--- a/java/com/android/incallui/CallCardPresenter.java
+++ b/java/com/android/incallui/CallCardPresenter.java
@@ -44,12 +44,9 @@
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.ActivityCompat;
-import com.android.dialer.enrichedcall.EnrichedCallComponent;
-import com.android.dialer.enrichedcall.EnrichedCallManager;
-import com.android.dialer.enrichedcall.Session;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.multimedia.MultimediaData;
@@ -85,8 +82,7 @@
         InCallDetailsListener,
         InCallEventListener,
         InCallScreenDelegate,
-        DialerCallListener,
-        EnrichedCallManager.StateChangedListener {
+        DialerCallListener {
 
   /**
    * Amount of time to wait before sending an announcement via the accessibility manager. When the
@@ -249,7 +245,7 @@
 
   @Override
   public void onStateChange(InCallState oldState, InCallState newState, CallList callList) {
-    LogUtil.v("CallCardPresenter.onStateChange", "" + newState);
+    LogUtil.v("CallCardPresenter.onStateChange", "oldState: %s, newState: %s", oldState, newState);
     if (mInCallScreen == null) {
       return;
     }
@@ -376,6 +372,12 @@
   @Override
   public void onInternationalCallOnWifi() {}
 
+  @Override
+  public void onEnrichedCallSessionUpdate() {
+    LogUtil.enterBlock("CallCardPresenter.onEnrichedCallSessionUpdate");
+    updatePrimaryDisplayInfo();
+  }
+
   /** Handles a change to the child number by refreshing the primary call info. */
   @Override
   public void onDialerCallChildNumberChange() {
@@ -418,12 +420,6 @@
     updatePrimaryCallState();
   }
 
-  @Override
-  public void onEnrichedCallStateChanged() {
-    LogUtil.enterBlock("CallCardPresenter.onEnrichedCallStateChanged");
-    updatePrimaryDisplayInfo();
-  }
-
   private boolean shouldRefreshPrimaryInfo(boolean primaryChanged) {
     if (mPrimary == null) {
       return false;
@@ -475,7 +471,8 @@
                   mPrimary.getConnectTimeMillis(),
                   CallerInfoUtils.isVoiceMailNumber(mContext, mPrimary),
                   mPrimary.isRemotelyHeld(),
-                  isBusiness));
+                  isBusiness,
+                  supports2ndCallOnHold()));
 
       InCallActivity activity =
           (InCallActivity) (mInCallScreen.getInCallScreenFragment().getActivity());
@@ -505,6 +502,15 @@
         && !mIsFullscreen;
   }
 
+  private boolean supports2ndCallOnHold() {
+    DialerCall firstCall = CallList.getInstance().getActiveOrBackgroundCall();
+    DialerCall incomingCall = CallList.getInstance().getIncomingCall();
+    if (firstCall != null && incomingCall != null && firstCall != incomingCall) {
+      return incomingCall.can(Details.CAPABILITY_HOLD);
+    }
+    return true;
+  }
+
   @Override
   public void onCallStateButtonClicked() {
     Intent broadcastIntent = Bindings.get(mContext).getCallStateButtonBroadcastIntent(mContext);
@@ -666,26 +672,8 @@
     boolean hasWorkCallProperty = mPrimary.hasProperty(PROPERTY_ENTERPRISE_CALL);
 
     MultimediaData multimediaData = null;
-    if (mPrimary.getNumber() != null) {
-      EnrichedCallManager manager = EnrichedCallComponent.get(mContext).getEnrichedCallManager();
-
-      EnrichedCallManager.Filter filter;
-      if (mPrimary.isIncoming()) {
-        filter = manager.createIncomingCallComposerFilter();
-      } else {
-        filter = manager.createOutgoingCallComposerFilter();
-      }
-
-      Session enrichedCallSession =
-          manager.getSession(mPrimary.getUniqueCallId(), mPrimary.getNumber(), filter);
-
-      mPrimary.setEnrichedCallSession(enrichedCallSession);
-      mPrimary.setEnrichedCallCapabilities(manager.getCapabilities(mPrimary.getNumber()));
-
-      if (enrichedCallSession != null) {
-        enrichedCallSession.setUniqueDialerCallId(mPrimary.getUniqueCallId());
-        multimediaData = enrichedCallSession.getMultimediaData();
-      }
+    if (mPrimary.getEnrichedCallSession() != null) {
+      multimediaData = mPrimary.getEnrichedCallSession().getMultimediaData();
     }
 
     if (mPrimary.isConferenceCall()) {
@@ -696,7 +684,8 @@
       mInCallScreen.setPrimary(
           new PrimaryInfo(
               null /* number */,
-              getConferenceString(mPrimary),
+              CallerInfoUtils.getConferenceString(
+                  mContext, mPrimary.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE)),
               false /* nameIsNumber */,
               null /* location */,
               null /* label */,
@@ -876,11 +865,20 @@
       return;
     }
 
+    if (mSecondary.isMergeInProcess()) {
+      LogUtil.i(
+          "CallCardPresenter.updateSecondaryDisplayInfo",
+          "secondary call is merge in process, clearing info");
+      mInCallScreen.setSecondary(SecondaryInfo.createEmptySecondaryInfo(mIsFullscreen));
+      return;
+    }
+
     if (mSecondary.isConferenceCall()) {
       mInCallScreen.setSecondary(
           new SecondaryInfo(
               true /* show */,
-              getConferenceString(mSecondary),
+              CallerInfoUtils.getConferenceString(
+                  mContext, mSecondary.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE)),
               false /* nameIsNumber */,
               null /* label */,
               mSecondary.getCallProviderLabel(),
@@ -972,7 +970,7 @@
   }
 
   /** Gets the name to display for the call. */
-  String getNameForCall(ContactCacheEntry contactInfo) {
+  private String getNameForCall(ContactCacheEntry contactInfo) {
     String preferredName =
         ContactDisplayUtils.getPreferredDisplayName(
             contactInfo.namePrimary, contactInfo.nameAlternative, mContactsPreferences);
@@ -982,19 +980,6 @@
     return preferredName;
   }
 
-  /** Gets the number to display for a call. */
-  String getNumberForCall(ContactCacheEntry contactInfo) {
-    // If the name is empty, we use the number for the name...so don't show a second
-    // number in the number field
-    String preferredName =
-        ContactDisplayUtils.getPreferredDisplayName(
-            contactInfo.namePrimary, contactInfo.nameAlternative, mContactsPreferences);
-    if (TextUtils.isEmpty(preferredName)) {
-      return contactInfo.location;
-    }
-    return contactInfo.number;
-  }
-
   @Override
   public void onSecondaryInfoClicked() {
     if (mSecondary == null) {
@@ -1035,15 +1020,6 @@
     return mPrimary != null && mPrimary.getState() == DialerCall.State.ACTIVE;
   }
 
-  private String getConferenceString(DialerCall call) {
-    boolean isGenericConference = call.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE);
-    LogUtil.v("CallCardPresenter.getConferenceString", "" + isGenericConference);
-
-    final int resId =
-        isGenericConference ? R.string.generic_conference_call_name : R.string.conference_call_name;
-    return mContext.getResources().getString(resId);
-  }
-
   private boolean shouldShowEndCallButton(DialerCall primary, int callState) {
     if (primary == null) {
       return false;
@@ -1063,7 +1039,6 @@
 
   @Override
   public void onInCallScreenResumed() {
-    EnrichedCallComponent.get(mContext).getEnrichedCallManager().registerStateChangedListener(this);
     updatePrimaryDisplayInfo();
 
     if (shouldSendAccessibilityEvent) {
@@ -1072,11 +1047,7 @@
   }
 
   @Override
-  public void onInCallScreenPaused() {
-    EnrichedCallComponent.get(mContext)
-        .getEnrichedCallManager()
-        .unregisterStateChangedListener(this);
-  }
+  public void onInCallScreenPaused() {}
 
   static boolean sendAccessibilityEvent(Context context, InCallScreen inCallScreen) {
     AccessibilityManager am =
diff --git a/java/com/android/incallui/CallerInfoUtils.java b/java/com/android/incallui/CallerInfoUtils.java
index 5644466..8f23107 100644
--- a/java/com/android/incallui/CallerInfoUtils.java
+++ b/java/com/android/incallui/CallerInfoUtils.java
@@ -282,4 +282,11 @@
         });
     loader.startLoading();
   }
+
+  /** @return conference name for conference call. */
+  public static String getConferenceString(Context context, boolean isGenericConference) {
+    final int resId =
+        isGenericConference ? R.string.generic_conference_call_name : R.string.conference_call_name;
+    return context.getResources().getString(resId);
+  }
 }
diff --git a/java/com/android/incallui/ContactInfoCache.java b/java/com/android/incallui/ContactInfoCache.java
index e45eb97..fdfba3b 100644
--- a/java/com/android/incallui/ContactInfoCache.java
+++ b/java/com/android/incallui/ContactInfoCache.java
@@ -33,6 +33,7 @@
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.annotation.WorkerThread;
+import android.support.v4.content.ContextCompat;
 import android.support.v4.os.UserManagerCompat;
 import android.telecom.TelecomManager;
 import android.telephony.PhoneNumberUtils;
@@ -406,7 +407,7 @@
     } else {
       ContactCacheEntry initialCacheEntry =
           updateCallerInfoInCacheOnAnyThread(
-              callId, call.getNumberPresentation(), callerInfo, isIncoming, false, queryToken);
+              callId, call.getNumberPresentation(), callerInfo, false, queryToken);
       sendInfoNotifications(callId, initialCacheEntry);
     }
   }
@@ -416,7 +417,6 @@
       String callId,
       int numberPresentation,
       CallerInfo callerInfo,
-      boolean isIncoming,
       boolean didLocalLookup,
       CallerInfoQueryToken queryToken) {
     Log.d(
@@ -443,16 +443,7 @@
     Log.d(TAG, "Existing cacheEntry in hashMap " + existingCacheEntry);
 
     if (didLocalLookup) {
-      // Before issuing a request for more data from other services, we only check that the
-      // contact wasn't found in the local DB.  We don't check the if the cache entry already
-      // has a name because we allow overriding cnap data with data from other services.
-      if (!callerInfo.contactExists && mPhoneNumberService != null) {
-        Log.d(TAG, "Contact lookup. Local contacts miss, checking remote");
-        final PhoneNumberServiceListener listener =
-            new PhoneNumberServiceListener(callId, queryToken.mQueryId);
-        cacheEntry.hasPendingQuery = true;
-        mPhoneNumberService.getPhoneNumberInfo(cacheEntry.number, listener, listener, isIncoming);
-      } else if (cacheEntry.displayPhotoUri != null) {
+      if (cacheEntry.displayPhotoUri != null) {
         // When the difference between 2 numbers is only the prefix (e.g. + or IDD),
         // we will still trigger force query so that the number can be updated on
         // the calling screen. We need not query the image again if the previous
@@ -606,7 +597,7 @@
 
     // This will only be true for emergency numbers
     if (info.photoResource != 0) {
-      cce.photo = context.getResources().getDrawable(info.photoResource);
+      cce.photo = ContextCompat.getDrawable(context, info.photoResource);
     } else if (info.isCachedPhotoCurrent) {
       if (info.cachedPhoto != null) {
         cce.photo = info.cachedPhoto;
@@ -789,7 +780,7 @@
       maybeUpdateFromCequintCallerId(ci, cw.cnapName, mIsIncoming);
       long time = SystemClock.uptimeMillis() - start;
       Log.d(TAG, "Cequint Caller Id look up takes " + time + " ms.");
-      updateCallerInfoInCacheOnAnyThread(cw.callId, cw.numberPresentation, ci, mIsIncoming, true, mQueryToken);
+      updateCallerInfoInCacheOnAnyThread(cw.callId, cw.numberPresentation, ci, true, mQueryToken);
     }
 
     @Override
@@ -807,6 +798,16 @@
         clearCallbacks(callId);
         return;
       }
+      // Before issuing a request for more data from other services, we only check that the
+      // contact wasn't found in the local DB.  We don't check the if the cache entry already
+      // has a name because we allow overriding cnap data with data from other services.
+      if (!callerInfo.contactExists && mPhoneNumberService != null) {
+        Log.d(TAG, "Contact lookup. Local contacts miss, checking remote");
+        final PhoneNumberServiceListener listener =
+            new PhoneNumberServiceListener(callId, mQueryToken.mQueryId);
+        cacheEntry.hasPendingQuery = true;
+        mPhoneNumberService.getPhoneNumberInfo(cacheEntry.number, listener, listener, mIsIncoming);
+      }
       sendInfoNotifications(callId, cacheEntry);
       if (!cacheEntry.hasPendingQuery) {
         if (callerInfo.contactExists) {
@@ -870,6 +871,7 @@
         entry.shouldShowLocation = oldEntry.shouldShowLocation;
         // Contact specific ringtone is obtained from local lookup.
         entry.contactRingtoneUri = oldEntry.contactRingtoneUri;
+        entry.originalPhoneNumber = oldEntry.originalPhoneNumber;
       }
 
       // If no image and it's a business, switch to using the default business avatar.
diff --git a/java/com/android/incallui/ExternalCallNotifier.java b/java/com/android/incallui/ExternalCallNotifier.java
index 0c2493c..f01a294 100644
--- a/java/com/android/incallui/ExternalCallNotifier.java
+++ b/java/com/android/incallui/ExternalCallNotifier.java
@@ -29,6 +29,7 @@
 import android.os.Build.VERSION_CODES;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
+import android.support.v4.os.BuildCompat;
 import android.telecom.Call;
 import android.telecom.PhoneAccount;
 import android.telecom.VideoProfile;
@@ -41,8 +42,7 @@
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contacts.common.util.BitmapUtil;
 import com.android.contacts.common.util.ContactDisplayUtils;
-import com.android.dialer.notification.NotificationChannelManager;
-import com.android.dialer.notification.NotificationChannelManager.Channel;
+import com.android.dialer.notification.NotificationChannelId;
 import com.android.incallui.call.DialerCall;
 import com.android.incallui.call.DialerCallDelegate;
 import com.android.incallui.call.ExternalCallList;
@@ -59,9 +59,10 @@
 public class ExternalCallNotifier implements ExternalCallList.ExternalCallListener {
 
   /** Tag used with the notification manager to uniquely identify external call notifications. */
-  private static final int NOTIFICATION_ID = R.id.notification_external_call;
+  private static final String NOTIFICATION_TAG = "EXTERNAL_CALL";
 
-  private static final String NOTIFICATION_GROUP = "ExternalCallNotifier";
+  private static final int NOTIFICATION_SUMMARY_ID = -1;
+
   private final Context mContext;
   private final ContactInfoCache mContactInfoCache;
   private Map<Call, NotificationInfo> mNotifications = new ArrayMap<>();
@@ -188,15 +189,14 @@
 
     NotificationManager notificationManager =
         (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);
-    notificationManager.cancel(
-        String.valueOf(mNotifications.get(call).getNotificationId()), NOTIFICATION_ID);
+    notificationManager.cancel(NOTIFICATION_TAG, mNotifications.get(call).getNotificationId());
 
     mNotifications.remove(call);
 
     if (mShowingSummary && mNotifications.size() <= 1) {
       // Where a summary notification is showing and there is now not enough notifications to
       // necessitate a summary, cancel the summary.
-      notificationManager.cancel(NOTIFICATION_GROUP, NOTIFICATION_ID);
+      notificationManager.cancel(NOTIFICATION_TAG, NOTIFICATION_SUMMARY_ID);
       mShowingSummary = false;
 
       // If there is still a single call requiring a notification, re-post the notification as a
@@ -237,7 +237,7 @@
     builder.setOngoing(true);
     // Make the notification prioritized over the other normal notifications.
     builder.setPriority(Notification.PRIORITY_HIGH);
-    builder.setGroup(NOTIFICATION_GROUP);
+    builder.setGroup(NOTIFICATION_TAG);
 
     boolean isVideoCall = VideoProfile.isVideo(info.getCall().getDetails().getVideoState());
     // Set the content ("Ongoing call on another device")
@@ -251,9 +251,9 @@
     builder.setLargeIcon(info.getLargeIcon());
     builder.setColor(mContext.getResources().getColor(R.color.dialer_theme_color));
     builder.addPerson(info.getPersonReference());
-
-    NotificationChannelManager.applyChannel(
-        builder, mContext, Channel.EXTERNAL_CALL, info.getCall().getDetails().getAccountHandle());
+    if (BuildCompat.isAtLeastO()) {
+      builder.setChannelId(NotificationChannelId.DEFAULT);
+    }
 
     // Where the external call supports being transferred to the local device, add an action
     // to the notification to initiate the call pull process.
@@ -286,20 +286,16 @@
     Notification.Builder publicBuilder = new Notification.Builder(mContext);
     publicBuilder.setSmallIcon(R.drawable.quantum_ic_call_white_24);
     publicBuilder.setColor(mContext.getResources().getColor(R.color.dialer_theme_color));
-
-    NotificationChannelManager.applyChannel(
-        publicBuilder,
-        mContext,
-        Channel.EXTERNAL_CALL,
-        info.getCall().getDetails().getAccountHandle());
+    if (BuildCompat.isAtLeastO()) {
+      publicBuilder.setChannelId(NotificationChannelId.DEFAULT);
+    }
 
     builder.setPublicVersion(publicBuilder.build());
     Notification notification = builder.build();
 
     NotificationManager notificationManager =
         (NotificationManager) mContext.getSystemService(Context.NOTIFICATION_SERVICE);
-    notificationManager.notify(
-        String.valueOf(info.getNotificationId()), NOTIFICATION_ID, notification);
+    notificationManager.notify(NOTIFICATION_TAG, info.getNotificationId(), notification);
 
     if (!mShowingSummary && mNotifications.size() > 1) {
       // If the number of notifications shown is > 1, and we're not already showing a group summary,
@@ -310,12 +306,13 @@
       summary.setOngoing(true);
       // Make the notification prioritized over the other normal notifications.
       summary.setPriority(Notification.PRIORITY_HIGH);
-      summary.setGroup(NOTIFICATION_GROUP);
+      summary.setGroup(NOTIFICATION_TAG);
       summary.setGroupSummary(true);
       summary.setSmallIcon(R.drawable.quantum_ic_call_white_24);
-      NotificationChannelManager.applyChannel(
-          summary, mContext, Channel.EXTERNAL_CALL, info.getCall().getDetails().getAccountHandle());
-      notificationManager.notify(NOTIFICATION_GROUP, NOTIFICATION_ID, summary.build());
+      if (BuildCompat.isAtLeastO()) {
+        summary.setChannelId(NotificationChannelId.DEFAULT);
+      }
+      notificationManager.notify(NOTIFICATION_TAG, NOTIFICATION_SUMMARY_ID, summary.build());
       mShowingSummary = true;
     }
   }
@@ -384,11 +381,10 @@
       ContactInfoCache.ContactCacheEntry contactInfo,
       android.telecom.Call call) {
 
-    if (call.getDetails().hasProperty(android.telecom.Call.Details.PROPERTY_CONFERENCE)
-        && !call.getDetails()
-            .hasProperty(android.telecom.Call.Details.PROPERTY_GENERIC_CONFERENCE)) {
-
-      return context.getResources().getString(R.string.conference_call_name);
+    if (call.getDetails().hasProperty(android.telecom.Call.Details.PROPERTY_CONFERENCE)) {
+      return CallerInfoUtils.getConferenceString(
+          context,
+          call.getDetails().hasProperty(android.telecom.Call.Details.PROPERTY_GENERIC_CONFERENCE));
     }
 
     String preferredName =
diff --git a/java/com/android/incallui/InCallActivity.java b/java/com/android/incallui/InCallActivity.java
index cc9a8e4..6ea31fc 100644
--- a/java/com/android/incallui/InCallActivity.java
+++ b/java/com/android/incallui/InCallActivity.java
@@ -35,9 +35,9 @@
 import android.view.MotionEvent;
 import android.view.View;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.ActivityCompat;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.logging.Logger;
 import com.android.dialer.logging.ScreenEvent;
 import com.android.incallui.answer.bindings.AnswerBindings;
@@ -630,12 +630,22 @@
       AnswerScreen answerScreen = getAnswerScreen();
       if (answerScreen.getCallId().equals(call.getId())
           && answerScreen.isVideoCall() == call.isVideoCall()
-          && answerScreen.isVideoUpgradeRequest() == isVideoUpgradeRequest) {
+          && answerScreen.isVideoUpgradeRequest() == isVideoUpgradeRequest
+          && !answerScreen.isActionTimeout()) {
+        LogUtil.d(
+            "InCallActivity.showAnswerScreenFragment",
+            "answer fragment exists for same call and has NOT been accepted/rejected/timed out");
         return false;
       }
-      LogUtil.i(
-          "InCallActivity.showAnswerScreenFragment",
-          "answer fragment exists but arguments do not match");
+      if (answerScreen.isActionTimeout()) {
+        LogUtil.i(
+            "InCallActivity.showAnswerScreenFragment",
+            "answer fragment exists but has been accepted/rejected and timed out");
+      } else {
+        LogUtil.i(
+            "InCallActivity.showAnswerScreenFragment",
+            "answer fragment exists but arguments do not match");
+      }
       hideAnswerScreenFragment(transaction);
     }
 
@@ -694,13 +704,8 @@
     if (didShowInCallScreen) {
       return false;
     }
-    InCallScreen inCallScreen = getInCallScreen();
-    if (inCallScreen == null) {
-      inCallScreen = InCallBindings.createInCallScreen();
-      transaction.add(R.id.main, inCallScreen.getInCallScreenFragment(), TAG_IN_CALL_SCREEN);
-    } else {
-      transaction.show(inCallScreen.getInCallScreenFragment());
-    }
+    InCallScreen inCallScreen = InCallBindings.createInCallScreen();
+    transaction.add(R.id.main, inCallScreen.getInCallScreenFragment(), TAG_IN_CALL_SCREEN);
     Logger.get(this).logScreenView(ScreenEvent.Type.INCALL, this);
     didShowInCallScreen = true;
     return true;
@@ -712,7 +717,7 @@
     }
     InCallScreen inCallScreen = getInCallScreen();
     if (inCallScreen != null) {
-      transaction.hide(inCallScreen.getInCallScreenFragment());
+      transaction.remove(inCallScreen.getInCallScreenFragment());
     }
     didShowInCallScreen = false;
     return true;
diff --git a/java/com/android/incallui/InCallPresenter.java b/java/com/android/incallui/InCallPresenter.java
index 2d6d83c..0bfd67e 100644
--- a/java/com/android/incallui/InCallPresenter.java
+++ b/java/com/android/incallui/InCallPresenter.java
@@ -695,7 +695,10 @@
     if (newState == InCallState.INCOMING
         && (waitingForAccountCall = callList.getWaitingForAccountCall()) != null) {
       waitingForAccountCall.disconnect();
-      mInCallActivity.dismissPendingDialogs();
+      // The InCallActivity might be destroyed or not started yet at this point.
+      if (isActivityStarted()) {
+        mInCallActivity.dismissPendingDialogs();
+      }
     }
 
     newState = startOrFinishUi(newState);
@@ -1011,6 +1014,13 @@
     }
   }
 
+  public void refreshUi() {
+    if (mInCallActivity != null) {
+      // Re-evaluate which fragment is being shown.
+      mInCallActivity.onPrimaryCallStateChanged();
+    }
+  }
+
   public void addInCallUiListener(InCallUiListener listener) {
     mInCallUiListeners.add(listener);
   }
diff --git a/java/com/android/incallui/InCallServiceImpl.java b/java/com/android/incallui/InCallServiceImpl.java
index 4ab92a7..d2b0297 100644
--- a/java/com/android/incallui/InCallServiceImpl.java
+++ b/java/com/android/incallui/InCallServiceImpl.java
@@ -36,6 +36,8 @@
  */
 public class InCallServiceImpl extends InCallService {
 
+  private ReturnToCallController returnToCallController;
+
   @Override
   public void onCallAudioStateChanged(CallAudioState audioState) {
     AudioModeProvider.getInstance().onAudioStateChanged(audioState);
@@ -79,6 +81,9 @@
     InCallPresenter.getInstance().onServiceBind();
     InCallPresenter.getInstance().maybeStartRevealAnimation(intent);
     TelecomAdapter.getInstance().setInCallService(this);
+    if (ReturnToCallController.isEnabled(this)) {
+      returnToCallController = new ReturnToCallController(this);
+    }
 
     return super.onBind(intent);
   }
@@ -98,5 +103,9 @@
     // Tear down the InCall system
     TelecomAdapter.getInstance().clearInCallService();
     InCallPresenter.getInstance().tearDown();
+    if (returnToCallController != null) {
+      returnToCallController.tearDown();
+      returnToCallController = null;
+    }
   }
 }
diff --git a/java/com/android/incallui/ReturnToCallActionReceiver.java b/java/com/android/incallui/ReturnToCallActionReceiver.java
new file mode 100644
index 0000000..b645c15
--- /dev/null
+++ b/java/com/android/incallui/ReturnToCallActionReceiver.java
@@ -0,0 +1,132 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.incallui;
+
+import android.content.BroadcastReceiver;
+import android.content.Context;
+import android.content.Intent;
+import android.telecom.CallAudioState;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.logging.DialerImpression;
+import com.android.dialer.logging.Logger;
+import com.android.incallui.audiomode.AudioModeProvider;
+import com.android.incallui.call.CallList;
+import com.android.incallui.call.DialerCall;
+import com.android.incallui.call.TelecomAdapter;
+
+/** Handles clicks on the return-to-call bubble */
+public class ReturnToCallActionReceiver extends BroadcastReceiver {
+
+  public static final String ACTION_TOGGLE_SPEAKER = "toggleSpeaker";
+  public static final String ACTION_SHOW_AUDIO_ROUTE_SELECTOR = "showAudioRouteSelector";
+  public static final String ACTION_TOGGLE_MUTE = "toggleMute";
+  public static final String ACTION_END_CALL = "endCall";
+
+  @Override
+  public void onReceive(Context context, Intent intent) {
+    switch (intent.getAction()) {
+      case ACTION_TOGGLE_SPEAKER:
+        toggleSpeaker(context);
+        break;
+      case ACTION_SHOW_AUDIO_ROUTE_SELECTOR:
+        showAudioRouteSelector(context);
+        break;
+      case ACTION_TOGGLE_MUTE:
+        toggleMute(context);
+        break;
+      case ACTION_END_CALL:
+        endCall(context);
+        break;
+    }
+  }
+
+  private void toggleSpeaker(Context context) {
+    CallAudioState audioState = AudioModeProvider.getInstance().getAudioState();
+
+    if ((audioState.getSupportedRouteMask() & CallAudioState.ROUTE_BLUETOOTH)
+        == CallAudioState.ROUTE_BLUETOOTH) {
+      LogUtil.w(
+          "ReturnToCallActionReceiver.toggleSpeaker",
+          "toggleSpeaker() called when bluetooth available."
+              + " Probably should have shown audio route selector");
+    }
+
+    DialerCall call = getCall();
+
+    int newRoute;
+    if (audioState.getRoute() == CallAudioState.ROUTE_SPEAKER) {
+      newRoute = CallAudioState.ROUTE_WIRED_OR_EARPIECE;
+      Logger.get(context)
+          .logCallImpression(
+              DialerImpression.Type.BUBBLE_TURN_ON_WIRED_OR_EARPIECE,
+              call != null ? call.getUniqueCallId() : "",
+              call != null ? call.getTimeAddedMs() : 0);
+    } else {
+      newRoute = CallAudioState.ROUTE_SPEAKER;
+      Logger.get(context)
+          .logCallImpression(
+              DialerImpression.Type.BUBBLE_TURN_ON_SPEAKERPHONE,
+              call != null ? call.getUniqueCallId() : "",
+              call != null ? call.getTimeAddedMs() : 0);
+    }
+    TelecomAdapter.getInstance().setAudioRoute(newRoute);
+  }
+
+  public void showAudioRouteSelector(Context context) {
+    context.startActivity(new Intent(context, AudioRouteSelectorActivity.class));
+  }
+
+  private void toggleMute(Context context) {
+    DialerCall call = getCall();
+    boolean shouldMute = !AudioModeProvider.getInstance().getAudioState().isMuted();
+    Logger.get(context)
+        .logCallImpression(
+            shouldMute
+                ? DialerImpression.Type.BUBBLE_MUTE_CALL
+                : DialerImpression.Type.BUBBLE_UNMUTE_CALL,
+            call != null ? call.getUniqueCallId() : "",
+            call != null ? call.getTimeAddedMs() : 0);
+    TelecomAdapter.getInstance().mute(shouldMute);
+  }
+
+  private void endCall(Context context) {
+    DialerCall call = getCall();
+
+    Logger.get(context)
+        .logCallImpression(
+            DialerImpression.Type.BUBBLE_END_CALL,
+            call != null ? call.getUniqueCallId() : "",
+            call != null ? call.getTimeAddedMs() : 0);
+    if (call != null) {
+      call.disconnect();
+    }
+  }
+
+  private DialerCall getCall() {
+    CallList callList = InCallPresenter.getInstance().getCallList();
+    if (callList != null) {
+      DialerCall call = callList.getOutgoingCall();
+      if (call == null) {
+        call = callList.getActiveOrBackgroundCall();
+      }
+      if (call != null) {
+        return call;
+      }
+    }
+    return null;
+  }
+}
diff --git a/java/com/android/incallui/ReturnToCallController.java b/java/com/android/incallui/ReturnToCallController.java
new file mode 100644
index 0000000..314aa45
--- /dev/null
+++ b/java/com/android/incallui/ReturnToCallController.java
@@ -0,0 +1,212 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.incallui;
+
+import android.app.PendingIntent;
+import android.content.Context;
+import android.content.Intent;
+import android.graphics.drawable.Icon;
+import android.support.annotation.NonNull;
+import android.support.annotation.VisibleForTesting;
+import android.telecom.CallAudioState;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
+import com.android.dialer.telecom.TelecomUtil;
+import com.android.dialershared.bubble.Bubble;
+import com.android.dialershared.bubble.BubbleInfo;
+import com.android.dialershared.bubble.BubbleInfo.Action;
+import com.android.incallui.InCallPresenter.InCallUiListener;
+import com.android.incallui.audiomode.AudioModeProvider;
+import com.android.incallui.audiomode.AudioModeProvider.AudioModeListener;
+import com.android.incallui.call.CallList;
+import com.android.incallui.call.CallList.Listener;
+import com.android.incallui.call.DialerCall;
+import com.android.incallui.speakerbuttonlogic.SpeakerButtonInfo;
+import com.android.incallui.speakerbuttonlogic.SpeakerButtonInfo.IconSize;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * Listens for events relevant to the return-to-call bubble and updates the bubble's state as
+ * necessary
+ */
+public class ReturnToCallController implements InCallUiListener, Listener, AudioModeListener {
+
+  private final Context context;
+
+  @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+  Bubble bubble;
+
+  private CallAudioState audioState;
+
+  private final PendingIntent toggleSpeaker;
+  private final PendingIntent showSpeakerSelect;
+  private final PendingIntent toggleMute;
+  private final PendingIntent endCall;
+
+  public static boolean isEnabled(Context context) {
+    return !ConfigProviderBindings.get(context).getBoolean("disable_return_to_call_bubble", false);
+  }
+
+  public ReturnToCallController(Context context) {
+    this.context = context;
+
+    toggleSpeaker = createActionIntent(ReturnToCallActionReceiver.ACTION_TOGGLE_SPEAKER);
+    showSpeakerSelect =
+        createActionIntent(ReturnToCallActionReceiver.ACTION_SHOW_AUDIO_ROUTE_SELECTOR);
+    toggleMute = createActionIntent(ReturnToCallActionReceiver.ACTION_TOGGLE_MUTE);
+    endCall = createActionIntent(ReturnToCallActionReceiver.ACTION_END_CALL);
+
+    InCallPresenter.getInstance().addInCallUiListener(this);
+    CallList.getInstance().addListener(this);
+    AudioModeProvider.getInstance().addListener(this);
+    audioState = AudioModeProvider.getInstance().getAudioState();
+  }
+
+  public void tearDown() {
+    InCallPresenter.getInstance().removeInCallUiListener(this);
+    CallList.getInstance().removeListener(this);
+    AudioModeProvider.getInstance().removeListener(this);
+  }
+
+  @Override
+  public void onUiShowing(boolean showing) {
+    if (showing) {
+      hide();
+    } else {
+      if (TelecomUtil.isInCall(context)) {
+        show();
+      }
+    }
+  }
+
+  private void hide() {
+    if (bubble != null) {
+      bubble.hide();
+    } else {
+      LogUtil.i("ReturnToCallController.hide", "hide() called without calling show()");
+    }
+  }
+
+  private void show() {
+    if (bubble == null) {
+      bubble = startNewBubble();
+    } else {
+      bubble.show();
+    }
+  }
+
+  private Bubble startNewBubble() {
+    if (!Bubble.canShowBubbles(context)) {
+      LogUtil.i("ReturnToCallController.startNewBubble", "can't show bubble, no permission");
+      context.startActivity(Bubble.getRequestPermissionIntent(context));
+      return null;
+    }
+    Bubble returnToCallBubble = Bubble.createBubble(context, generateBubbleInfo());
+    returnToCallBubble.show();
+    return returnToCallBubble;
+  }
+
+  @Override
+  public void onIncomingCall(DialerCall call) {}
+
+  @Override
+  public void onUpgradeToVideo(DialerCall call) {}
+
+  @Override
+  public void onSessionModificationStateChange(DialerCall call) {}
+
+  @Override
+  public void onCallListChange(CallList callList) {}
+
+  @Override
+  public void onDisconnect(DialerCall call) {
+    if (bubble != null && bubble.isShowing()) {
+      bubble.showText(context.getText(R.string.incall_call_ended));
+    }
+
+    if (!TelecomUtil.isInCall(context)) {
+      hide();
+    }
+  }
+
+  @Override
+  public void onWiFiToLteHandover(DialerCall call) {}
+
+  @Override
+  public void onHandoverToWifiFailed(DialerCall call) {}
+
+  @Override
+  public void onInternationalCallOnWifi(@NonNull DialerCall call) {}
+
+  @Override
+  public void onAudioStateChanged(CallAudioState audioState) {
+    this.audioState = audioState;
+    if (bubble != null) {
+      bubble.updateActions(generateActions());
+    }
+  }
+
+  private BubbleInfo generateBubbleInfo() {
+    Intent activityIntent = InCallActivity.getIntent(context, false, false, false);
+    activityIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
+    return BubbleInfo.builder()
+        .setPrimaryColor(context.getResources().getColor(R.color.dialer_theme_color, null))
+        .setPrimaryIcon(Icon.createWithResource(context, R.drawable.on_going_call))
+        .setStartingYPosition(
+            context.getResources().getDimensionPixelOffset(R.dimen.return_to_call_initial_offset_y))
+        .setPrimaryIntent(PendingIntent.getActivity(context, 0, activityIntent, 0))
+        .setActions(generateActions())
+        .build();
+  }
+
+  @NonNull
+  private List<Action> generateActions() {
+    List<Action> actions = new ArrayList<>();
+    SpeakerButtonInfo speakerButtonInfo = new SpeakerButtonInfo(audioState, IconSize.SIZE_24_DP);
+
+    actions.add(
+        Action.builder()
+            .setIcon(Icon.createWithResource(context, speakerButtonInfo.icon))
+            .setName(context.getText(speakerButtonInfo.label))
+            .setChecked(speakerButtonInfo.isChecked)
+            .setIntent(speakerButtonInfo.checkable ? toggleSpeaker : showSpeakerSelect)
+            .build());
+
+    actions.add(
+        Action.builder()
+            .setIcon(Icon.createWithResource(context, R.drawable.quantum_ic_mic_off_white_24))
+            .setName(context.getText(R.string.incall_label_mute))
+            .setChecked(audioState.isMuted())
+            .setIntent(toggleMute)
+            .build());
+    actions.add(
+        Action.builder()
+            .setIcon(Icon.createWithResource(context, R.drawable.quantum_ic_call_end_white_24))
+            .setName(context.getText(R.string.incall_label_end_call))
+            .setIntent(endCall)
+            .build());
+    return actions;
+  }
+
+  @NonNull
+  private PendingIntent createActionIntent(String action) {
+    Intent toggleSpeaker = new Intent(context, ReturnToCallActionReceiver.class);
+    toggleSpeaker.setAction(action);
+    return PendingIntent.getBroadcast(context, 0, toggleSpeaker, 0);
+  }
+}
diff --git a/java/com/android/incallui/StatusBarNotifier.java b/java/com/android/incallui/StatusBarNotifier.java
index 165b30b..458df51 100644
--- a/java/com/android/incallui/StatusBarNotifier.java
+++ b/java/com/android/incallui/StatusBarNotifier.java
@@ -28,7 +28,6 @@
 import android.Manifest;
 import android.app.ActivityManager;
 import android.app.Notification;
-import android.app.Notification.Builder;
 import android.app.NotificationManager;
 import android.app.PendingIntent;
 import android.content.Context;
@@ -62,16 +61,15 @@
 import com.android.contacts.common.ContactsUtils;
 import com.android.contacts.common.ContactsUtils.UserType;
 import com.android.contacts.common.lettertiles.LetterTileDrawable;
+import com.android.contacts.common.lettertiles.LetterTileDrawable.ContactType;
 import com.android.contacts.common.preference.ContactsPreferences;
 import com.android.contacts.common.util.BitmapUtil;
 import com.android.contacts.common.util.ContactDisplayUtils;
 import com.android.dialer.common.LogUtil;
-import com.android.dialer.enrichedcall.EnrichedCallComponent;
 import com.android.dialer.enrichedcall.EnrichedCallManager;
 import com.android.dialer.enrichedcall.Session;
 import com.android.dialer.multimedia.MultimediaData;
-import com.android.dialer.notification.NotificationChannelManager;
-import com.android.dialer.notification.NotificationChannelManager.Channel;
+import com.android.dialer.notification.NotificationChannelId;
 import com.android.dialer.oem.MotorolaUtils;
 import com.android.dialer.util.DrawableConverter;
 import com.android.incallui.ContactInfoCache.ContactCacheEntry;
@@ -93,6 +91,9 @@
 public class StatusBarNotifier
     implements InCallPresenter.InCallStateListener, EnrichedCallManager.StateChangedListener {
 
+  private static final String NOTIFICATION_TAG = "STATUS_BAR_NOTIFIER";
+  private static final int NOTIFICATION_ID = 1;
+
   // Notification types
   // Indicates that no notification is currently showing.
   private static final int NOTIFICATION_NONE = 0;
@@ -147,7 +148,7 @@
 
     NotificationManager notificationManager =
         backupContext.getSystemService(NotificationManager.class);
-    notificationManager.cancel(R.id.notification_ongoing_call);
+    notificationManager.cancel(NOTIFICATION_TAG, NOTIFICATION_ID);
   }
 
   private static int getWorkStringFromPersonalString(int resId) {
@@ -173,12 +174,6 @@
     return PendingIntent.getBroadcast(context, 0, intent, 0);
   }
 
-  private static void setColorized(@NonNull Builder builder) {
-    if (BuildCompat.isAtLeastO()) {
-      builder.setColorized(true);
-    }
-  }
-
   /** Creates notifications according to the state we receive from {@link InCallPresenter}. */
   @Override
   @RequiresPermission(Manifest.permission.READ_PHONE_STATE)
@@ -226,7 +221,7 @@
     }
     if (mCurrentNotification != NOTIFICATION_NONE) {
       LogUtil.i("StatusBarNotifier.cancelNotification", "cancel");
-      mNotificationManager.cancel(R.id.notification_ongoing_call);
+      mNotificationManager.cancel(NOTIFICATION_TAG, NOTIFICATION_ID);
     }
     mCurrentNotification = NOTIFICATION_NONE;
   }
@@ -365,13 +360,13 @@
     LogUtil.i("StatusBarNotifier.buildAndSendNotification", "notificationType=" + notificationType);
     switch (notificationType) {
       case NOTIFICATION_INCOMING_CALL:
-        NotificationChannelManager.applyChannel(
-            builder, mContext, Channel.INCOMING_CALL, accountHandle);
+        if (BuildCompat.isAtLeastO()) {
+          builder.setChannelId(NotificationChannelId.INCOMING_CALL);
+        }
         configureFullScreenIntent(builder, createLaunchPendingIntent(true /* isFullScreen */));
         // Set the notification category and bump the priority for incoming calls
         builder.setCategory(Notification.CATEGORY_CALL);
         // This will be ignored on O+ and handled by the channel
-        //noinspection deprecation
         builder.setPriority(Notification.PRIORITY_MAX);
         if (mCurrentNotification != NOTIFICATION_INCOMING_CALL) {
           LogUtil.i(
@@ -379,18 +374,20 @@
               "Canceling old notification so this one can be noisy");
           // Moving from a non-interuptive notification (or none) to a noisy one. Cancel the old
           // notification (if there is one) so the fullScreenIntent or HUN will show
-          mNotificationManager.cancel(R.id.notification_ongoing_call);
+          mNotificationManager.cancel(NOTIFICATION_TAG, NOTIFICATION_ID);
         }
         break;
       case NOTIFICATION_INCOMING_CALL_QUIET:
-        NotificationChannelManager.applyChannel(
-            builder, mContext, Channel.ONGOING_CALL, accountHandle);
+        if (BuildCompat.isAtLeastO()) {
+          builder.setChannelId(NotificationChannelId.ONGOING_CALL);
+        }
         break;
       case NOTIFICATION_IN_CALL:
-        setColorized(publicBuilder);
-        setColorized(builder);
-        NotificationChannelManager.applyChannel(
-            builder, mContext, Channel.ONGOING_CALL, accountHandle);
+        if (BuildCompat.isAtLeastO()) {
+          publicBuilder.setColorized(true);
+          builder.setColorized(true);
+          builder.setChannelId(NotificationChannelId.ONGOING_CALL);
+        }
         break;
     }
 
@@ -436,7 +433,7 @@
         "displaying notification for " + notificationType);
 
     try {
-      mNotificationManager.notify(R.id.notification_ongoing_call, notification);
+      mNotificationManager.notify(NOTIFICATION_TAG, NOTIFICATION_ID, notification);
     } catch (RuntimeException e) {
       // TODO(b/34744003): Move the memory stats into silent feedback PSD.
       ActivityManager activityManager = mContext.getSystemService(ActivityManager.class);
@@ -565,8 +562,9 @@
   @VisibleForTesting
   @Nullable
   String getContentTitle(ContactCacheEntry contactInfo, DialerCall call) {
-    if (call.isConferenceCall() && !call.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE)) {
-      return mContext.getResources().getString(R.string.conference_call_name);
+    if (call.isConferenceCall()) {
+      return CallerInfoUtils.getConferenceString(
+          mContext, call.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE));
     }
 
     String preferredName =
@@ -604,20 +602,16 @@
     if (contactInfo.photo == null) {
       int width = (int) resources.getDimension(android.R.dimen.notification_large_icon_width);
       int height = (int) resources.getDimension(android.R.dimen.notification_large_icon_height);
-      int contactType = LetterTileDrawable.TYPE_DEFAULT;
+      @ContactType
+      int contactType =
+          LetterTileDrawable.getContactTypeFromPrimitives(
+              CallerInfoUtils.isVoiceMailNumber(context, call),
+              call.isSpam(),
+              contactInfo.isBusiness,
+              call.getNumberPresentation(),
+              call.isConferenceCall() && !call.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE));
       LetterTileDrawable lettertile = new LetterTileDrawable(resources);
 
-      // TODO: Deduplicate across Dialer. b/36195917
-      if (CallerInfoUtils.isVoiceMailNumber(context, call)) {
-        contactType = LetterTileDrawable.TYPE_VOICEMAIL;
-      } else if (contactInfo.isBusiness) {
-        contactType = LetterTileDrawable.TYPE_BUSINESS;
-      } else if (call.getNumberPresentation() == TelecomManager.PRESENTATION_RESTRICTED) {
-        contactType = LetterTileDrawable.TYPE_GENERIC_AVATAR;
-      } else if (call.isConferenceCall()
-          && !call.hasProperty(Details.PROPERTY_GENERIC_CONFERENCE)) {
-        contactType = LetterTileDrawable.TYPE_CONFERENCE;
-      }
       lettertile.setCanonicalDialerLetterTileDetails(
           contactInfo.namePrimary == null ? contactInfo.number : contactInfo.namePrimary,
           contactInfo.lookupKey,
@@ -663,13 +657,17 @@
       return R.drawable.quantum_ic_videocam_white_24;
     } else if (call.hasProperty(PROPERTY_HIGH_DEF_AUDIO)
         && MotorolaUtils.shouldShowHdIconInNotification(mContext)) {
-      // Normally when a call is ongoing the status bar displays an icon of a phone with animated
-      // lines. This is a helpful hint for users so they know how to get back to the call.
-      // For Sprint HD calls, we replace this icon with an icon of a phone with a HD badge.
-      // This is a carrier requirement.
+      // Normally when a call is ongoing the status bar displays an icon of a phone. This is a
+      // helpful hint for users so they know how to get back to the call. For Sprint HD calls, we
+      // replace this icon with an icon of a phone with a HD badge. This is a carrier requirement.
       return R.drawable.ic_hd_call;
     }
-    return R.anim.on_going_call;
+    // If ReturnToCall is enabled, use the static icon. The animated one will show in the bubble.
+    if (ReturnToCallController.isEnabled(mContext)) {
+      return R.drawable.quantum_ic_call_white_24;
+    } else {
+      return R.drawable.on_going_call;
+    }
   }
 
   /** Returns the message to use with the notification. */
@@ -694,20 +692,10 @@
     }
 
     if (isIncomingOrWaiting) {
-      EnrichedCallManager manager = EnrichedCallComponent.get(mContext).getEnrichedCallManager();
-      Session session = null;
-      if (call.getNumber() != null) {
-        session =
-            manager.getSession(
-                call.getUniqueCallId(),
-                call.getNumber(),
-                manager.createIncomingCallComposerFilter());
-      }
-
       if (call.isSpam()) {
         resId = R.string.notification_incoming_spam_call;
-      } else if (session != null) {
-        resId = getECIncomingCallText(session);
+      } else if (shouldShowEnrichedCallNotification(call.getEnrichedCallSession())) {
+        resId = getECIncomingCallText(call.getEnrichedCallSession());
       } else if (call.hasProperty(Details.PROPERTY_WIFI)) {
         resId = R.string.notification_incoming_call_wifi;
       } else {
@@ -731,6 +719,13 @@
     return mContext.getString(resId);
   }
 
+  private boolean shouldShowEnrichedCallNotification(Session session) {
+    if (session == null) {
+      return false;
+    }
+    return session.getMultimediaData().hasData() || session.getMultimediaData().isImportant();
+  }
+
   private int getECIncomingCallText(Session session) {
     int resId;
     MultimediaData data = session.getMultimediaData();
@@ -756,8 +751,10 @@
         } else {
           resId = R.string.important_notification_incoming_call_with_photo;
         }
-      } else {
+      } else if (hasSubject) {
         resId = R.string.important_notification_incoming_call_with_message;
+      } else {
+        resId = R.string.important_notification_incoming_call;
       }
       if (mContext.getString(resId).length() > 50) {
         resId = R.string.important_notification_incoming_call_attachments;
@@ -827,13 +824,9 @@
         "will show \"answer\" action in the incoming call Notification");
     PendingIntent answerVoicePendingIntent =
         createNotificationPendingIntent(mContext, ACTION_ANSWER_VOICE_INCOMING_CALL);
-    // We put animation resources in "anim" folder instead of "drawable", which causes Android
-    // Studio to complain.
-    // TODO: Move "anim" resources to "drawable" as recommended in AnimationDrawable doc?
-    //noinspection ResourceType
     builder.addAction(
         new Notification.Action.Builder(
-                Icon.createWithResource(mContext, R.anim.on_going_call),
+                Icon.createWithResource(mContext, R.drawable.quantum_ic_call_white_24),
                 getActionText(
                     R.string.notification_action_answer, R.color.notification_action_accept),
                 answerVoicePendingIntent)
@@ -931,7 +924,7 @@
     builder.setOngoing(true);
     builder.setOnlyAlertOnce(true);
     // This will be ignored on O+ and handled by the channel
-    //noinspection deprecation
+    // noinspection deprecation
     builder.setPriority(Notification.PRIORITY_HIGH);
 
     return builder;
@@ -1005,6 +998,9 @@
     @Override
     public void onInternationalCallOnWifi() {}
 
+    @Override
+    public void onEnrichedCallSessionUpdate() {}
+
     /**
      * Responds to changes in the session modification state for the call by dismissing the status
      * bar notification as required.
diff --git a/java/com/android/incallui/VideoCallPresenter.java b/java/com/android/incallui/VideoCallPresenter.java
index 31999ef..bd98370 100644
--- a/java/com/android/incallui/VideoCallPresenter.java
+++ b/java/com/android/incallui/VideoCallPresenter.java
@@ -27,9 +27,9 @@
 import android.view.Surface;
 import android.view.SurfaceView;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.compat.CompatUtils;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.incallui.InCallPresenter.InCallDetailsListener;
 import com.android.incallui.InCallPresenter.InCallOrientationListener;
 import com.android.incallui.InCallPresenter.InCallStateListener;
diff --git a/java/com/android/incallui/answer/impl/AnswerFragment.java b/java/com/android/incallui/answer/impl/AnswerFragment.java
index 1f0541c4..4431053 100644
--- a/java/com/android/incallui/answer/impl/AnswerFragment.java
+++ b/java/com/android/incallui/answer/impl/AnswerFragment.java
@@ -216,6 +216,7 @@
   private void performAnswerAndRelease() {
     restoreAnswerAndReleaseButtonAnimation();
     answerScreenDelegate.onAnswerAndReleaseCall();
+    buttonAcceptClicked = true;
   }
 
   private void restoreAnswerAndReleaseButtonAnimation() {
@@ -359,6 +360,11 @@
   }
 
   @Override
+  public boolean isActionTimeout() {
+    return (buttonAcceptClicked || buttonRejectClicked) && answerScreenDelegate.isActionTimeout();
+  }
+
+  @Override
   @NonNull
   public String getCallId() {
     return Assert.isNotNull(getArguments().getString(ARG_CALL_ID));
@@ -427,8 +433,10 @@
 
     if (allowAnswerAndRelease()) {
       answerAndReleaseButton.setVisibility(View.VISIBLE);
+      answerScreenDelegate.onAnswerAndReleaseButtonEnabled();
     } else {
       answerAndReleaseButton.setVisibility(View.INVISIBLE);
+      answerScreenDelegate.onAnswerAndReleaseButtonDisabled();
     }
   }
 
@@ -524,6 +532,7 @@
     if (!isAdded()) {
       return;
     }
+    LogUtil.enterBlock("AnswerFragment.updateDataFragment");
     Fragment current = getChildFragmentManager().findFragmentById(R.id.incall_data_container);
     Fragment newFragment = null;
 
@@ -540,6 +549,7 @@
           || !Objects.equals(((MultimediaFragment) current).getSubject(), subject)
           || !Objects.equals(((MultimediaFragment) current).getImageUri(), imageUri)
           || !Objects.equals(((MultimediaFragment) current).getLocation(), location)) {
+        LogUtil.i("AnswerFragment.updateDataFragment", "Replacing multimedia fragment");
         // Needs replacement
         newFragment =
             MultimediaFragment.newInstance(
@@ -551,12 +561,14 @@
     } else if (shouldShowAvatar()) {
       // Needs Avatar
       if (!(current instanceof AvatarFragment)) {
+        LogUtil.i("AnswerFragment.updateDataFragment", "Replacing avatar fragment");
         // Needs replacement
         newFragment = new AvatarFragment();
       }
     } else {
       // Needs empty
       if (current != null) {
+        LogUtil.i("AnswerFragment.updateDataFragment", "Removing current fragment");
         getChildFragmentManager().beginTransaction().remove(current).commitNow();
       }
       contactGridManager.setAvatarImageView(null, 0, false);
@@ -930,7 +942,7 @@
         if (hasCallOnHold()) {
           getAnswerMethod()
               .setHintText(getText(R.string.call_incoming_default_label_answer_and_release_third));
-        } else {
+        } else if (primaryCallState.supportsCallOnHold) {
           getAnswerMethod()
               .setHintText(getText(R.string.call_incoming_default_label_answer_and_release_second));
         }
@@ -1019,7 +1031,7 @@
   }
 
   private void updateImportanceBadgeVisibility() {
-    if (!isAdded()) {
+    if (!isAdded() || getView() == null) {
       return;
     }
 
diff --git a/java/com/android/incallui/answer/impl/PillDrawable.java b/java/com/android/incallui/answer/impl/PillDrawable.java
deleted file mode 100644
index 57d84c4..0000000
--- a/java/com/android/incallui/answer/impl/PillDrawable.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.incallui.answer.impl;
-
-import android.graphics.Rect;
-import android.graphics.drawable.GradientDrawable;
-
-/** Draws a pill-shaped background */
-public class PillDrawable extends GradientDrawable {
-
-  public PillDrawable() {
-    super();
-    setShape(RECTANGLE);
-  }
-
-  @Override
-  protected void onBoundsChange(Rect r) {
-    super.onBoundsChange(r);
-    setCornerRadius(r.height() / 2);
-  }
-
-  @Override
-  public void setShape(int shape) {
-    if (shape != GradientDrawable.RECTANGLE) {
-      throw new UnsupportedOperationException("PillDrawable must be a rectangle");
-    }
-    super.setShape(shape);
-  }
-}
diff --git a/java/com/android/incallui/answer/impl/answermethod/res/layout/swipe_up_down_method.xml b/java/com/android/incallui/answer/impl/answermethod/res/layout/swipe_up_down_method.xml
index 9a49075..600115e 100644
--- a/java/com/android/incallui/answer/impl/answermethod/res/layout/swipe_up_down_method.xml
+++ b/java/com/android/incallui/answer/impl/answermethod/res/layout/swipe_up_down_method.xml
@@ -41,6 +41,7 @@
         android:layout_marginBottom="116dp"
         android:layout_gravity="center_horizontal"
         android:alpha="0"
+        android:gravity="center_horizontal"
         android:text="@string/call_incoming_will_disconnect"
         android:textColor="@color/blue_grey_100"
         android:textSize="16sp"
@@ -59,6 +60,7 @@
         android:layout_marginBottom="18dp"
         android:layout_gravity="center_horizontal"
         android:focusable="false"
+        android:gravity="center_horizontal"
         android:text="@string/call_incoming_swipe_to_answer"
         android:textAlignment="center"
         android:textAppearance="@style/Dialer.Incall.TextAppearance.Hint"/>
@@ -110,6 +112,7 @@
         android:layout_gravity="center_horizontal"
         android:alpha="0"
         android:focusable="false"
+        android:gravity="center_horizontal"
         android:text="@string/call_incoming_swipe_to_reject"
         android:textAppearance="@style/Dialer.Incall.TextAppearance.Hint"
         tools:alpha="1"/>
diff --git a/java/com/android/incallui/answer/impl/classifier/HumanInteractionClassifier.java b/java/com/android/incallui/answer/impl/classifier/HumanInteractionClassifier.java
index 1d3d7ef..5e83dfc 100644
--- a/java/com/android/incallui/answer/impl/classifier/HumanInteractionClassifier.java
+++ b/java/com/android/incallui/answer/impl/classifier/HumanInteractionClassifier.java
@@ -20,7 +20,7 @@
 import android.hardware.SensorEvent;
 import android.util.DisplayMetrics;
 import android.view.MotionEvent;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 
 /** An classifier trying to determine whether it is a human interacting with the phone or not. */
 class HumanInteractionClassifier extends Classifier {
diff --git a/java/com/android/incallui/answer/impl/hint/AnswerHintFactory.java b/java/com/android/incallui/answer/impl/hint/AnswerHintFactory.java
index 77b45ec..94cf893 100644
--- a/java/com/android/incallui/answer/impl/hint/AnswerHintFactory.java
+++ b/java/com/android/incallui/answer/impl/hint/AnswerHintFactory.java
@@ -23,9 +23,8 @@
 import android.support.annotation.NonNull;
 import android.support.annotation.VisibleForTesting;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProvider;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.util.DialerUtils;
 import com.android.incallui.util.AccessibilityUtil;
 
@@ -35,8 +34,9 @@
  */
 public class AnswerHintFactory {
 
-  private static final String CONFIG_ANSWER_HINT_ANSWERED_THRESHOLD_KEY =
-      "answer_hint_answered_threshold";
+  @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
+  static final String CONFIG_ANSWER_HINT_ANSWERED_THRESHOLD_KEY = "answer_hint_answered_threshold";
+
   @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE)
   static final String CONFIG_ANSWER_HINT_WHITELISTED_DEVICES_KEY =
       "answer_hint_whitelisted_devices";
@@ -58,12 +58,7 @@
 
   @NonNull
   public AnswerHint create(Context context, long puckUpDuration, long puckUpDelay) {
-
-    if (shouldShowAnswerHint(
-        context,
-        ConfigProviderBindings.get(context),
-        DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context),
-        Build.PRODUCT)) {
+    if (shouldShowAnswerHint(context, Build.PRODUCT)) {
       return new DotAnswerHint(context, puckUpDuration, puckUpDelay);
     }
 
@@ -84,24 +79,23 @@
   }
 
   @VisibleForTesting
-  static boolean shouldShowAnswerHint(
-      Context context,
-      ConfigProvider configProvider,
-      SharedPreferences sharedPreferences,
-      String device) {
+  static boolean shouldShowAnswerHint(Context context, String device) {
     if (AccessibilityUtil.isTouchExplorationEnabled(context)) {
       return false;
     }
     // Devices that has the legacy dialer installed are whitelisted as they are likely to go through
     // a UX change during updates.
-    if (!isDeviceWhitelisted(device, configProvider)) {
+    if (!isDeviceWhitelisted(context, device)) {
       return false;
     }
 
     // If the user has gone through the process a few times we can assume they have learnt the
     // method.
-    int answeredCount = sharedPreferences.getInt(ANSWERED_COUNT_PREFERENCE_KEY, 0);
-    long threshold = configProvider.getLong(CONFIG_ANSWER_HINT_ANSWERED_THRESHOLD_KEY, 3);
+    int answeredCount =
+        DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context)
+            .getInt(ANSWERED_COUNT_PREFERENCE_KEY, 0);
+    long threshold =
+        ConfigProviderBindings.get(context).getLong(CONFIG_ANSWER_HINT_ANSWERED_THRESHOLD_KEY, 3);
     LogUtil.i(
         "AnswerHintFactory.shouldShowAnswerHint",
         "answerCount: %d, threshold: %d",
@@ -115,8 +109,8 @@
    * @param configProvider should provide a list of devices quoted with '/' concatenated to a
    *     string.
    */
-  private static boolean isDeviceWhitelisted(String device, ConfigProvider configProvider) {
-    return configProvider
+  private static boolean isDeviceWhitelisted(Context context, String device) {
+    return ConfigProviderBindings.get(context)
         .getString(CONFIG_ANSWER_HINT_WHITELISTED_DEVICES_KEY, DEFAULT_WHITELISTED_DEVICES_CSV)
         .contains("/" + device + "/");
   }
diff --git a/java/com/android/incallui/answer/impl/hint/PawImageLoaderImpl.java b/java/com/android/incallui/answer/impl/hint/PawImageLoaderImpl.java
index 21154ca..05358d8 100644
--- a/java/com/android/incallui/answer/impl/hint/PawImageLoaderImpl.java
+++ b/java/com/android/incallui/answer/impl/hint/PawImageLoaderImpl.java
@@ -24,7 +24,9 @@
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
 import com.android.dialer.util.DialerUtils;
+import com.android.incallui.answer.impl.hint.PawSecretCodeListener.PawType;
 
 /** Decrypt the event payload to be shown if in a specific time range and the key is received. */
 @TargetApi(VERSION_CODES.M)
@@ -40,10 +42,25 @@
     if (!preferences.getBoolean(PawSecretCodeListener.PAW_ENABLED_WITH_SECRET_CODE_KEY, false)) {
       return null;
     }
-    int drawableId = preferences.getInt(PawSecretCodeListener.PAW_DRAWABLE_ID_KEY, 0);
-    if (drawableId == 0) {
-      return null;
+    @PawType
+    int pawType =
+        preferences.getInt(PawSecretCodeListener.PAW_TYPE, PawSecretCodeListener.PAW_TYPE_INVALID);
+
+    if (pawType == PawSecretCodeListener.PAW_TYPE_INVALID) {
+      LogUtil.i("PawImageLoaderImpl.loadPayload", "paw type not found, rerolling");
+      PawSecretCodeListener.selectPawType(preferences);
+      pawType =
+          preferences.getInt(
+              PawSecretCodeListener.PAW_TYPE, PawSecretCodeListener.PAW_TYPE_INVALID);
     }
-    return context.getDrawable(drawableId);
+
+    switch (pawType) {
+      case PawSecretCodeListener.PAW_TYPE_CAT:
+        return context.getDrawable(R.drawable.cat_paw);
+      case PawSecretCodeListener.PAW_TYPE_DOG:
+        return context.getDrawable(R.drawable.dog_paw);
+      default:
+        throw Assert.createAssertionFailException("unknown paw type " + pawType);
+    }
   }
 }
diff --git a/java/com/android/incallui/answer/impl/hint/PawSecretCodeListener.java b/java/com/android/incallui/answer/impl/hint/PawSecretCodeListener.java
index a8737c3..204c4e1 100644
--- a/java/com/android/incallui/answer/impl/hint/PawSecretCodeListener.java
+++ b/java/com/android/incallui/answer/impl/hint/PawSecretCodeListener.java
@@ -20,15 +20,16 @@
 import android.content.Context;
 import android.content.Intent;
 import android.content.SharedPreferences;
-import android.preference.PreferenceManager;
+import android.support.annotation.IntDef;
 import android.support.annotation.VisibleForTesting;
 import android.text.TextUtils;
 import android.widget.Toast;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.logging.DialerImpression.Type;
 import com.android.dialer.logging.Logger;
+import com.android.dialer.util.DialerUtils;
 import java.util.Random;
 
 /**
@@ -40,7 +41,20 @@
   static final String CONFIG_PAW_SECRET_CODE = "paw_secret_code";
 
   public static final String PAW_ENABLED_WITH_SECRET_CODE_KEY = "paw_enabled_with_secret_code";
-  public static final String PAW_DRAWABLE_ID_KEY = "paw_drawable_id";
+
+  /** Which paw to show, must be {@link PawType} */
+  public static final String PAW_TYPE = "paw_type";
+
+  /** Resource id is not stable across app versions. Use {@link #PAW_TYPE} instead. */
+  @Deprecated public static final String PAW_DRAWABLE_ID_KEY = "paw_drawable_id";
+
+  /** Enum for all paws. */
+  @IntDef({PAW_TYPE_INVALID, PAW_TYPE_CAT, PAW_TYPE_DOG})
+  @interface PawType {}
+
+  public static final int PAW_TYPE_INVALID = 0;
+  public static final int PAW_TYPE_CAT = 1;
+  public static final int PAW_TYPE_DOG = 2;
 
   @Override
   public void onReceive(Context context, Intent intent) {
@@ -54,7 +68,8 @@
     if (!TextUtils.equals(secretCode, host)) {
       return;
     }
-    SharedPreferences preferences = PreferenceManager.getDefaultSharedPreferences(context);
+    SharedPreferences preferences =
+        DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context);
     boolean wasEnabled = preferences.getBoolean(PAW_ENABLED_WITH_SECRET_CODE_KEY, false);
     if (wasEnabled) {
       preferences.edit().putBoolean(PAW_ENABLED_WITH_SECRET_CODE_KEY, false).apply();
@@ -62,20 +77,24 @@
       Logger.get(context).logImpression(Type.EVENT_ANSWER_HINT_DEACTIVATED);
       LogUtil.i("PawSecretCodeListener.onReceive", "PawAnswerHint disabled");
     } else {
-      int drawableId;
-      if (new Random().nextBoolean()) {
-        drawableId = R.drawable.cat_paw;
-      } else {
-        drawableId = R.drawable.dog_paw;
-      }
-      preferences
-          .edit()
-          .putBoolean(PAW_ENABLED_WITH_SECRET_CODE_KEY, true)
-          .putInt(PAW_DRAWABLE_ID_KEY, drawableId)
-          .apply();
+      selectPawType(preferences);
       Toast.makeText(context, R.string.event_activated, Toast.LENGTH_SHORT).show();
       Logger.get(context).logImpression(Type.EVENT_ANSWER_HINT_ACTIVATED);
       LogUtil.i("PawSecretCodeListener.onReceive", "PawAnswerHint enabled");
     }
   }
+
+  public static void selectPawType(SharedPreferences preferences) {
+    @PawType int pawType;
+    if (new Random().nextBoolean()) {
+      pawType = PAW_TYPE_CAT;
+    } else {
+      pawType = PAW_TYPE_DOG;
+    }
+    preferences
+        .edit()
+        .putBoolean(PAW_ENABLED_WITH_SECRET_CODE_KEY, true)
+        .putInt(PAW_TYPE, pawType)
+        .apply();
+  }
 }
diff --git a/java/com/android/incallui/answer/impl/res/values-af/strings.xml b/java/com/android/incallui/answer/impl/res/values-af/strings.xml
index 82a8796..b155ee8 100644
--- a/java/com/android/incallui/answer/impl/res/values-af/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-af/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Swiep vanaf ikoon om met boodskap af te wys"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Antwoord en beëindig die voortgesette oproep"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video is af"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Swiep op met twee vingers om te antwoord. Swiep af met twee vingers om af te wys."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Dringend"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Belangrik"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-am/strings.xml b/java/com/android/incallui/answer/impl/res/values-am/strings.xml
index 4086977..c27705f 100644
--- a/java/com/android/incallui/answer/impl/res/values-am/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-am/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"በመልዕክት ላለመቀበል ከአዶ ያንሸራቱ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ይመልሱ እና በመካሄድ ላይ ያለ ጥሪን ይጨርሱ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ቪዲዮ ጠፍቷል"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ለመመለስ በሁለት ጣት ወደ ላይ ያንሸራቱ። ላለመቀበል በሁለት ጣት ወደ ታች ያንሸራቱ።"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"አስቸኳይ"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"አስፈላጊ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ar/strings.xml b/java/com/android/incallui/answer/impl/res/values-ar/strings.xml
index fc29c16..e3f84ff 100644
--- a/java/com/android/incallui/answer/impl/res/values-ar/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ar/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"تمرير سريع من الرمز للرفض مع إرسال رسالة"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"الرد وإنهاء مكالمة جارية"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"الفيديو قيد إيقاف التشغيل"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"مرر بأصبعين لأعلى للرد. مرر بأصبعين لأسفل للرفض."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"عاجل"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"مهم"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-az/strings.xml b/java/com/android/incallui/answer/impl/res/values-az/strings.xml
index fff561d..5d113b4 100644
--- a/java/com/android/incallui/answer/impl/res/values-az/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-az/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Mesaj göndərərək imtina etmək üçün ikonadan sürüşdürün"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Cavab verin və gedən zəngi bitirin"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Videoları deaktivdir"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Cavab vermək üçün iki barmaq ilə yuxarı sürüşdürün. İmtina etmək üçün iki barmaq ilə aşağı sürüşdürün."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Vacib"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Önəmli"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/answer/impl/res/values-b+sr+Latn/strings.xml
index 7b29bfa..3acc576 100644
--- a/java/com/android/incallui/answer/impl/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-b+sr+Latn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Prevucite od ikone da biste odbili porukom"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Javite se i završite poziv koji je u toku"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Kamera je isključena"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Prevucite nagore pomoću dva prsta da biste odgovorili. Prevucite nadole pomoću dva prsta da biste odbili."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Hitno"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Važno"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-be/strings.xml b/java/com/android/incallui/answer/impl/res/values-be/strings.xml
index 228a80f..4f34150 100644
--- a/java/com/android/incallui/answer/impl/res/values-be/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-be/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Правядзіце ад значка, каб адхіліць, адправіўшы SMS"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Адказаць і скончыць бягучы выклік"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Відэа адключана"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Правядзіце двума пальцамі ўверх, каб адказаць; двума пальцамі ўніз – каб адхіліць."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Тэрмінова"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важны"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-bg/strings.xml b/java/com/android/incallui/answer/impl/res/values-bg/strings.xml
index 4e9422f..54a5ab9 100644
--- a/java/com/android/incallui/answer/impl/res/values-bg/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-bg/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Прекарайте пръст от иконата, за да отхвърлите със съобщение"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Отговор и завършване на текущото обаждане"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Видеото е изключено"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Прекарайте два пръста нагоре за отговаряне, надолу за отхвърляне."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Спешно"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важно"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-bn/strings.xml b/java/com/android/incallui/answer/impl/res/values-bn/strings.xml
index 869f7b9..d2aa4c3 100644
--- a/java/com/android/incallui/answer/impl/res/values-bn/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-bn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"বার্তা সহ প্রত্যাখ্যান করতে আইকন থেকে সোয়াইপ করুন"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"উত্তর দিন এবং  চলছে এমন কল কেটে দিন"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ভিডিও বন্ধ আছে"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"উত্তর দিতে উপরের দিকে, প্রত্যাখ্যান করতে নিচের দিকে দুই আঙুল দিয়ে সোয়াইপ করুন৷"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"জরুরি"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"গুরুত্বপূর্ণ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-bs/strings.xml b/java/com/android/incallui/answer/impl/res/values-bs/strings.xml
index b36e178..e175887 100644
--- a/java/com/android/incallui/answer/impl/res/values-bs/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-bs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Prevucite preko ikone da odbijete porukom"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Odgovorite na poziv i završite ga"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Kamera je isključena"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Prevucite pomoću dva prsta prema gore da odgovorite. Prevucite pomoću dva prsta prema dolje da odbijete."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Hitno"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Važno"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ca/strings.xml b/java/com/android/incallui/answer/impl/res/values-ca/strings.xml
index 13b3b32..538e0d3 100644
--- a/java/com/android/incallui/answer/impl/res/values-ca/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ca/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Llisca des de la icona per rebutjar la trucada amb un missatge"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Respon a la trucada i finalitza l\'actual"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"El vídeo està desactivat"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Llisca amb dos dits cap amunt per respondre a la trucada i cap avall per rebutjar-la."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-cs/strings.xml b/java/com/android/incallui/answer/impl/res/values-cs/strings.xml
index 6c69030..626409e 100644
--- a/java/com/android/incallui/answer/impl/res/values-cs/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-cs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Přejetím prstem od ikony hovor odmítnete a pošlete zprávu"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Přijmout hovor a ukončit probíhající hovor"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video je vypnuté"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Přejetím dvěma prsty nahoru hovor přijmete. Přejetím dvěma prsty dolů jej odmítnete."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Naléhavé"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Důležité"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-da/strings.xml b/java/com/android/incallui/answer/impl/res/values-da/strings.xml
index 3a87d44..3870891 100644
--- a/java/com/android/incallui/answer/impl/res/values-da/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-da/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Stryg fra ikonet for at afvise med en besked"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Besvar, og afslut det igangværende opkald"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video er deaktiveret"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Stryg op med to fingre for at besvare. Stryg ned med to fingre for at afvise."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Haster"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Vigtigt"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-de/strings.xml b/java/com/android/incallui/answer/impl/res/values-de/strings.xml
index f4356d2..ab3c33c 100644
--- a/java/com/android/incallui/answer/impl/res/values-de/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-de/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Zum Ablehnen mit Nachricht vom Symbol wegwischen"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Nimm den Anruf an und beende den aktuellen Anruf"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video deaktiviert"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Zum Annehmen mit zwei Fingern nach oben wischen. Zum Ablehnen mit zwei Fingern nach unten wischen."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Dringend"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Wichtig"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-el/strings.xml b/java/com/android/incallui/answer/impl/res/values-el/strings.xml
index 9c9a0f3..d847aac 100644
--- a/java/com/android/incallui/answer/impl/res/values-el/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-el/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Σύρετε από το εικονίδιο προς τα έξω για απόρριψη του μηνύματος"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Απάντηση και τερματισμός κλήσης σε εξέλιξη"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Το βίντεο είναι ανενεργό"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Σύρετε με δύο δάχτυλα, προς τα επάνω για απάντηση και προς τα κάτω για απόρριψη."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Επείγον"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Σημαντικό"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-en-rAU/strings.xml b/java/com/android/incallui/answer/impl/res/values-en-rAU/strings.xml
index fb8d156..fe6aa46 100644
--- a/java/com/android/incallui/answer/impl/res/values-en-rAU/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-en-rAU/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Swipe from icon to decline with a message"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Answer and end ongoing call"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video is off"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Swipe up with two fingers to answer. Swipe down with two fingers to decline."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-en-rGB/strings.xml b/java/com/android/incallui/answer/impl/res/values-en-rGB/strings.xml
index fb8d156..fe6aa46 100644
--- a/java/com/android/incallui/answer/impl/res/values-en-rGB/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-en-rGB/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Swipe from icon to decline with a message"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Answer and end ongoing call"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video is off"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Swipe up with two fingers to answer. Swipe down with two fingers to decline."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-en-rIN/strings.xml b/java/com/android/incallui/answer/impl/res/values-en-rIN/strings.xml
index fb8d156..fe6aa46 100644
--- a/java/com/android/incallui/answer/impl/res/values-en-rIN/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-en-rIN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Swipe from icon to decline with a message"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Answer and end ongoing call"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video is off"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Swipe up with two fingers to answer. Swipe down with two fingers to decline."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-es-rUS/strings.xml b/java/com/android/incallui/answer/impl/res/values-es-rUS/strings.xml
index 14928ee..60fcd01 100644
--- a/java/com/android/incallui/answer/impl/res/values-es-rUS/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-es-rUS/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Desliza desde el ícono para rechazar la llamada con un mensaje"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Responder y finalizar la llamada en curso"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"El video está desactivado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Desliza dos dedos hacia arriba para responder la llamada o hacia abajo para rechazarla."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-es/strings.xml b/java/com/android/incallui/answer/impl/res/values-es/strings.xml
index 972bbc5..7b2f19a 100644
--- a/java/com/android/incallui/answer/impl/res/values-es/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-es/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Desliza desde el icono para rechazar con mensaje"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Responder a una llamada y finalizar otra en curso"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"El vídeo está desconectado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Desliza dos dedos hacia arriba para responder o hacia abajo para rechazar la llamada."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-et/strings.xml b/java/com/android/incallui/answer/impl/res/values-et/strings.xml
index 9e303bb..b4632d1 100644
--- a/java/com/android/incallui/answer/impl/res/values-et/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-et/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Sõnumiga keeldumiseks pühkige ikoonilt eemale"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Vastake ja lõpetage käimasolev kõne"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video on välja lülitatud"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Vastamiseks pühkige kahe sõrmega üles. Keeldumiseks pühkige kahe sõrmega alla."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Kiireloomuline"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Tähtis"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-eu/strings.xml b/java/com/android/incallui/answer/impl/res/values-eu/strings.xml
index a1f6d71..118a2c7 100644
--- a/java/com/android/incallui/answer/impl/res/values-eu/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-eu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Pasatu hatza ikonotik baztertzeko eta mezu bat bidaltzeko"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Erantzun eta amaitu uneko deia"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Desaktibatuta dago kamera"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Pasatu bi hatz gora erantzuteko; eta behera, baztertzeko."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Premiazkoa"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Garrantzitsua"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-fa/strings.xml b/java/com/android/incallui/answer/impl/res/values-fa/strings.xml
index 28cf826..971b172 100644
--- a/java/com/android/incallui/answer/impl/res/values-fa/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-fa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"برای رد کردن با ارسال پیام، انگشتتان را تند از روی نماد بکشید"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"پاسخ دادن به تماس درحال انجام و پایان دادن به آن"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ویدیو خاموش است"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"برای پاسخ‌گویی، دو انگشتتان را تند به بالا بکشید و برای رد کردن به پایین بکشید."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"فوری"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"مهم"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-fi/strings.xml b/java/com/android/incallui/answer/impl/res/values-fi/strings.xml
index 8b8eac9..7ae9a1f 100644
--- a/java/com/android/incallui/answer/impl/res/values-fi/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-fi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Hylkää ja kirjoita viesti pyyhkäisemällä kuvaketta."</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Vastaa puheluun ja lopeta nykyinen puhelu"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Videokuva ei ole käytössä."</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Vastaa pyyhkäisemällä ylös kahdella sormella. Hylkää pyyhkäisemällä alas kahdella sormella."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Kiireellinen"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Tärkeä"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-fr-rCA/strings.xml b/java/com/android/incallui/answer/impl/res/values-fr-rCA/strings.xml
index 9ea27b8..ce454b5 100644
--- a/java/com/android/incallui/answer/impl/res/values-fr-rCA/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-fr-rCA/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Balayez à partir de l\'icône pour refuser avec un message"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Répondre et mettre fin à l\'appel en cours"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"La vidéo est désactivée"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Balayez vers le haut avec deux doigts pour répondre. Balayez vers le bas avec deux doigts pour refuser."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-fr/strings.xml b/java/com/android/incallui/answer/impl/res/values-fr/strings.xml
index 3aa3c12..7f77ed0 100644
--- a/java/com/android/incallui/answer/impl/res/values-fr/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-fr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Appuyer sur l\'icône, puis balayer l\'écran pour refuser l\'appel en envoyant un message"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Répondre ou mettre fin à l\'appel en cours"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"La vidéo est désactivée."</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Balayez l\'écran avec deux doigts vers le haut pour répondre, ou vers le bas pour refuser l\'appel."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importants"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-gl/strings.xml b/java/com/android/incallui/answer/impl/res/values-gl/strings.xml
index 16c0f69..07e0c51 100644
--- a/java/com/android/incallui/answer/impl/res/values-gl/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-gl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Pasar o dedo desde a icona para rexeitar cunha mensaxe"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Responde á chamada entrante e finaliza a chamada en curso"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"O vídeo está desactivado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Pasa dous dedos cara arriba para responder a chamada ou cara abaixo para rexeitala."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urxente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-gu/strings.xml b/java/com/android/incallui/answer/impl/res/values-gu/strings.xml
index 3f99c71..845e9de 100644
--- a/java/com/android/incallui/answer/impl/res/values-gu/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-gu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"સંદેશ સાથે નકારવા માટે આઇકનથી સ્વાઇપ કરો"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"જવાબ આપો અને ચાલુ કૉલ સમાપ્ત કરો"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"વિડિઓ બંધ છે"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"જવાબ આપવા માટે બે આંગળી ઉપર સ્વાઇપ કરો. નકારવા માટે બે આંગળી નીચે સ્વાઇપ કરો."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"તાત્કાલિક"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"મહત્વપૂર્ણ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-hi/strings.xml b/java/com/android/incallui/answer/impl/res/values-hi/strings.xml
index f28505f..e8e3c75 100644
--- a/java/com/android/incallui/answer/impl/res/values-hi/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-hi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"संदेश के साथ अस्वीकार करने के लिए आइकन से स्वाइप करें"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"कॉल का जवाब दें और जारी कॉल समाप्त करें"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"वीडियो बंद है"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"जवाब देने के लिए दो अंगुलियों से ऊपर स्वाइप करें. अस्वीकार करने के लिए दो अंगुलियों से नीचे स्वाइप करें."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"बहुत ज़रूरी"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"महत्वपूर्ण"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-hr/strings.xml b/java/com/android/incallui/answer/impl/res/values-hr/strings.xml
index 2807439..ffd0c9b 100644
--- a/java/com/android/incallui/answer/impl/res/values-hr/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-hr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Prijeđite prstom od ikone da biste odbili poruku"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Odgovorite na poziv i prekinite poziv u tijeku"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Videokamera je isključena"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Prijeđite dvama prstima prema gore za odgovor, a dvama prstima prema dolje za odbijanje."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Hitno"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Važno"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-hu/strings.xml b/java/com/android/incallui/answer/impl/res/values-hu/strings.xml
index d7dacbf..13ec7da 100644
--- a/java/com/android/incallui/answer/impl/res/values-hu/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-hu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Csúsztassa el az ujját az ikonról az üzenettel való elutasításhoz"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Hívásfogadás és a folyamatban lévő hívás befejezése"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"A videokép ki van kapcsolva"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Csúsztassa felfelé két ujját a hívás fogadásához. Csúsztassa lefelé két ujját a hívás elutasításához."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Sürgős"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Fontos"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-hy/strings.xml b/java/com/android/incallui/answer/impl/res/values-hy/strings.xml
index 4492833..7fb7ef4 100644
--- a/java/com/android/incallui/answer/impl/res/values-hy/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-hy/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Զանգը մերժելու և հաղորդագրություն ուղարկելու համար պատկերակից մատով մի կողմ սահեցրեք"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Պատասխանել և ավարտել ընթացիկ զանգը"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Տեսախցիկն անջատած է"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Պատասխանելու համար երկու մատով սահեցրեք վերև, մերժելու համար՝ ներքև:"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Շտապ"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Կարևոր"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-in/strings.xml b/java/com/android/incallui/answer/impl/res/values-in/strings.xml
index a1fd19f..48d71af 100644
--- a/java/com/android/incallui/answer/impl/res/values-in/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-in/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Gesek dari ikon untuk menolak dengan pesan"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Menjawab dan mengakhiri panggilan yang sedang berlangsung"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video nonaktif"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Geser ke atas dengan dua jari untuk menjawab. Geser ke bawah dengan dua jari untuk menolak."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Penting"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Penting"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-is/strings.xml b/java/com/android/incallui/answer/impl/res/values-is/strings.xml
index c4f9eb4..a92a411 100644
--- a/java/com/android/incallui/answer/impl/res/values-is/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-is/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Strjúktu frá tákninu til að hafna með skilaboðum"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Svara og ljúka yfirstandandi símtali"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Slökkt á myndavél"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Strjúktu upp með tveimur fingrum til að svara. Strjúktu niður með tveimur fingrum til að hafna."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Áríðandi"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Mikilvægt"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-it/strings.xml b/java/com/android/incallui/answer/impl/res/values-it/strings.xml
index 70e9722..b29bca7 100644
--- a/java/com/android/incallui/answer/impl/res/values-it/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-it/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Fai scorrere dall\'icona per rifiutare e inviare un messaggio"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Rispondi e termina la chiamata in corso"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Il video è disattivato"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Fai scorrere con due dita verso l\'alto per rispondere e verso il basso per rifiutare."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-iw/strings.xml b/java/com/android/incallui/answer/impl/res/values-iw/strings.xml
index 08c02e3..6544e8f 100644
--- a/java/com/android/incallui/answer/impl/res/values-iw/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-iw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"החלק מהסמל כדי לדחות עם הודעה"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"מענה וסיום שיחה"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"הווידאו מושבת"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"החלק עם שתי אצבעות למעלה כדי לענות או למטה כדי לדחות."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"דחופה"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"חשוב"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ja/strings.xml b/java/com/android/incallui/answer/impl/res/values-ja/strings.xml
index b7bd65b..83f8f09 100644
--- a/java/com/android/incallui/answer/impl/res/values-ja/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ja/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"アイコンをスワイプして着信を拒否し、メッセージを送信"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"通話に応答し、進行中の通話を終了"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ビデオ: OFF"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"応答するには 2 本の指で上にスワイプ、拒否するには 2 本の指で下にスワイプします。"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"緊急"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"重要"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ka/strings.xml b/java/com/android/incallui/answer/impl/res/values-ka/strings.xml
index 6813067..4a1120c 100644
--- a/java/com/android/incallui/answer/impl/res/values-ka/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ka/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"გადაუსვით ხატულადან შეტყობინებით უარყოფისთვის"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"პასუხი და მიმდინარე ზარის დასრულება"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ვიდეო გამორთულია"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"საპასუხოდ გადაფურცლეთ ზემოთ ორი თითით. უარყოფისთვის გადაფურცლეთ ქვემოთ ორი თითით."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"სასწრაფო"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"მნიშვნელოვანი"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-kk/strings.xml b/java/com/android/incallui/answer/impl/res/values-kk/strings.xml
index 3d18633..69cf949 100644
--- a/java/com/android/incallui/answer/impl/res/values-kk/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-kk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Қабылдамай, жай хабар жіберу үшін, белгішеден әрі қарай сырғытыңыз"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Қоңырауға жауап беру және ағымдағы қоңырауды аяқтау"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Бейне өшірулі"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Жауап беру үшін екі саусақпен жоғары сырғытылады. Қабылдамау үшін екі саусақпен төмен сырғытылады."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Шұғыл"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Маңызды"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-km/strings.xml b/java/com/android/incallui/answer/impl/res/values-km/strings.xml
index 89f9031..db65a97 100644
--- a/java/com/android/incallui/answer/impl/res/values-km/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-km/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"អូស​ចេញ​ពី​រូបតំណាង​ដើម្បី​បដិសេធ​​ដោយ​មាន​សារ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ឆ្លើយ និង​បញ្ចប់​ការ​ហៅ​ទូរសព្ទ​ដែល​កំពុង​ដំណើរការ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"វីដេអូត្រូវបានបិទ"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"អូស​ម្រាម​ដៃ​ពីរ​ឡើងលើ​ ដើម្បី​ឆ្លើយ។ អូស​ម្រាមដៃ​ពីរ​ចុះ​ក្រោម​ ដើម្បី​បដិសេធ។"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"បន្ទាន់"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"សំខាន់"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-kn/strings.xml b/java/com/android/incallui/answer/impl/res/values-kn/strings.xml
index f02a6b8..8426aef 100644
--- a/java/com/android/incallui/answer/impl/res/values-kn/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-kn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"ಸಂದೇಶದ ಜೊತೆಗೆ ನಿರಾಕರಿಸಲು ಐಕಾನ್‌ನಿಂದ ಸ್ವೈಪ್ ಮಾಡಿ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಕರೆಗೆ ಉತ್ತರಿಸಿ ಮತ್ತು ಅಂತ್ಯಗೊಳಿಸಿ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ವೀಡಿಯೊ ಆಫ್ ಆಗಿದೆ"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ಉತ್ತರಿಸಲು ಎರಡು ಬೆರಳಿನಿಂದ ಮೇಲಕ್ಕೆ ಸ್ವೈಪ್ ಮಾಡಿ. ನಿರಾಕರಿಸಲು ಎರಡು ಬೆರಳಿನಿಂದ ಕೆಳಗೆ ಸ್ವೈಪ್ ಮಾಡಿ."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"ತುರ್ತು"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"ಪ್ರಮುಖ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ko/strings.xml b/java/com/android/incallui/answer/impl/res/values-ko/strings.xml
index 850b440..6b6beff 100644
--- a/java/com/android/incallui/answer/impl/res/values-ko/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ko/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"메시지를 거부하려면 아이콘에서 스와이프하세요."</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"현재 통화를 종료하고 전화 받기"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"동영상이 꺼져 있습니다."</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"받으려면 두 손가락을 위로 스와이프하고 거부하려면 두 손가락을 아래로 스와이프하세요."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"긴급"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"중요"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ky/strings.xml b/java/com/android/incallui/answer/impl/res/values-ky/strings.xml
index dc08e84..6dd5a2d 100644
--- a/java/com/android/incallui/answer/impl/res/values-ky/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ky/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Чалууну билдирүү менен четке кагуу үчүн сүрөтчөнү сүрүңүз"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Чалууга жооп бериңиз же учурдагы чалууну аяктаңыз"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Видео өчүк"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Жооп берүү үчүн экранды өйдө сүрүп, четке кагуу үчүн ылдый сүрүп коюңуз."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Шашылыш"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Маанилүү"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-lo/strings.xml b/java/com/android/incallui/answer/impl/res/values-lo/strings.xml
index 06ad00c..776c027 100644
--- a/java/com/android/incallui/answer/impl/res/values-lo/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-lo/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"ປັດຈາກໄອຄອນເພື່ອປະຕິເສດຂໍ້ຄວາມ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ຮັບສາຍ ແລະ ວາງສາຍທີ່ກຳລັງໂທອອກ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ວິດີໂອປິດຢູ່"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ປັດສອງນິ້ວຂຶ້ນເພື່ອຮັບສາຍ. ປັດສອງນິ້ວລົງເພື່ອປະຕິເສດ."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"ດ່ວນ"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"ສຳຄັນ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-lt/strings.xml b/java/com/android/incallui/answer/impl/res/values-lt/strings.xml
index 3366e33..2ef70ea 100644
--- a/java/com/android/incallui/answer/impl/res/values-lt/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-lt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Perbraukite iš piktogramos, kad atmestumėte išsiųsdami pranešimą"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Atsakykite ir užbaikite vykstantį skambutį"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Vaizdas išjungtas"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Perbraukite dviem pirštais aukštyn, kad atsakytumėte. Perbraukite dviem pirštais žemyn, kad atmestumėte."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Skubus"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Svarbu"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-lv/strings.xml b/java/com/android/incallui/answer/impl/res/values-lv/strings.xml
index 49d1dc9..3fc754d 100644
--- a/java/com/android/incallui/answer/impl/res/values-lv/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-lv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Lai noraidītu, izmantojot ziņojumu, velciet no ikonas"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Atbildiet un beidziet notiekošo zvanu"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video ir izslēgts"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Ar diviem pirkstiem velciet augšup, lai atbildētu. Ar diviem pirkstiem velciet lejup, lai noraidītu."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Steidzams"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Svarīgs"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-mk/strings.xml b/java/com/android/incallui/answer/impl/res/values-mk/strings.xml
index c068f66..deeba45 100644
--- a/java/com/android/incallui/answer/impl/res/values-mk/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-mk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Повлечете од иконата за да одбиете со порака"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Одговорете и завршете го тековниот повик"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Видеото е исклучено"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Повлечете нагоре со два прста за да одговорите. Повлечете надолу со два прста за да одбиете."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Итно"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важно"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ml/strings.xml b/java/com/android/incallui/answer/impl/res/values-ml/strings.xml
index 8e1d492..d8ce90d 100644
--- a/java/com/android/incallui/answer/impl/res/values-ml/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ml/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"സന്ദേശമയച്ചുകൊണ്ട് നിരസിക്കാൻ ഐക്കണിൽ നിന്ന് സ്വൈപ്പുചെയ്യുക"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"മറുപടി നൽകുകയും നിലവിലുള്ള കോൾ അവസാനിപ്പിക്കുകയും ചെയ്യൂ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"വീഡിയോ ഓഫാണ്"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"മറുപടി നൽകാൻ രണ്ടുവിരലുകൾ ഉപയോഗിച്ച് മുകളിലേക്ക് സ്വൈപ്പുചെയ്യുക. നിരസിക്കാൻ രണ്ടുവിരലുകൾ ഉപയോഗിച്ച് താഴേക്ക് സ്വൈപ്പുചെയ്യുക."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"അടിയന്തിര പ്രാധാന്യം"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"പ്രധാനപ്പെട്ടവ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-mn/strings.xml b/java/com/android/incallui/answer/impl/res/values-mn/strings.xml
index 4bdd912..aaa1621 100644
--- a/java/com/android/incallui/answer/impl/res/values-mn/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-mn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Зурвас явуулангаа татгалзах бол дүрснээс шударна уу"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Ирсэн дуудлагыг авч, одоогийн дуудлагыг таслах"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Видео идэвхгүй байна"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Хариулах бол хоёр хуруугаар дээш шударна уу. Таслах бол хоёр хуруугаар доош шударна уу."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Яаралтай"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Чухал"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-mr/strings.xml b/java/com/android/incallui/answer/impl/res/values-mr/strings.xml
index 11c8268..eea662f 100644
--- a/java/com/android/incallui/answer/impl/res/values-mr/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-mr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"संदेशासह नाकारण्यासाठी आयकॉनपासून स्वाइप करा"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"उत्तर द्या आणि सुरु असलेला कॉल बंद करा"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"व्हिडिओ बंद आहे"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"उत्तर देण्यासाठी दोन बोटांनी वर स्वाइप करा. नकार देण्यासाठी दोन बोटांनी खाली स्वाइप करा."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"त्वरित"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"महत्त्वाचे"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ms/strings.xml b/java/com/android/incallui/answer/impl/res/values-ms/strings.xml
index 36ede75..04b054e 100644
--- a/java/com/android/incallui/answer/impl/res/values-ms/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ms/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Leret dari ikon untuk menolak dengan mesej"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Jawab dan tamatkan panggilan yang sedang berlangsung"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video dimatikan"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Leret dua jari ke atas untuk menjawab. Leret dua jari ke bawah untuk menolak."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Segera"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Penting"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-my/strings.xml b/java/com/android/incallui/answer/impl/res/values-my/strings.xml
index 5ad7a82..f3d6a2e 100644
--- a/java/com/android/incallui/answer/impl/res/values-my/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-my/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"မက်ဆေ့ဂျ်ဖြင့်ငြင်းပယ်ရန် သင်္ကေတမှ ပွတ်ဆွဲပါ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ဖြေကြားပြီး လက်ရှိခေါ်ဆိုမှုကို အပြီးသတ်ပါ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ဗီဒီယို ပိတ်ထားပါသည်"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ဖြေကြားရန် လက်နှစ်ချောင်းဖြင့် အပေါ်သို့ ပွတ်ဆွဲပါ။ ငြင်းပယ်ရန် လက်နှစ်ချောင်းဖြင့် အောက်သို့ ပွတ်ဆွဲပါ။"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"အရေးတကြီး"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"အရေးကြီး"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-nb/strings.xml b/java/com/android/incallui/answer/impl/res/values-nb/strings.xml
index b1c32be..42ff3d0 100644
--- a/java/com/android/incallui/answer/impl/res/values-nb/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-nb/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Sveip fra ikonet for å avslå med en melding"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Svar, og avslutt samtalen som er i gang"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video er av"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Sveip oppover med to fingre for å svare. Sveip nedover med to fingre for å avvise."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Haster"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Viktig"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ne/strings.xml b/java/com/android/incallui/answer/impl/res/values-ne/strings.xml
index 40ef7b6..f0b8641 100644
--- a/java/com/android/incallui/answer/impl/res/values-ne/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ne/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"सन्देश सहित अस्वीकार गर्न आइकनबाट स्वाइप गर्नुहोस्"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"जवाफ फर्काउनुहोस् र जारी कललाई अन्त्य गर्नुहोस्"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"भिडियो निष्क्रिय छ"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"जवाफ दिन दुई औंलाले माथितिर स्वाइप गर्नुहोस्। अस्वीकार गर्न दुई औंलाले तलतिर स्वाइप गर्नुहोस्।"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"जरुरी"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"महत्त्वपूर्ण"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-nl/strings.xml b/java/com/android/incallui/answer/impl/res/values-nl/strings.xml
index b2f619f..89c956a 100644
--- a/java/com/android/incallui/answer/impl/res/values-nl/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-nl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Veeg vanaf pictogram om te weigeren met bericht"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Opnemen en actieve oproep beëindigen"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video is uit"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Veeg met twee vingers omhoog om te beantwoorden. Veeg met twee vingers omlaag om te weigeren."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Belangrijk"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-no/strings.xml b/java/com/android/incallui/answer/impl/res/values-no/strings.xml
index b1c32be..42ff3d0 100644
--- a/java/com/android/incallui/answer/impl/res/values-no/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-no/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Sveip fra ikonet for å avslå med en melding"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Svar, og avslutt samtalen som er i gang"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video er av"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Sveip oppover med to fingre for å svare. Sveip nedover med to fingre for å avvise."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Haster"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Viktig"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-pa/strings.xml b/java/com/android/incallui/answer/impl/res/values-pa/strings.xml
index d2b1452..3772f29 100644
--- a/java/com/android/incallui/answer/impl/res/values-pa/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-pa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"ਸੁਨੇਹੇ ਦੇ ਨਾਲ ਅਸਵੀਕਾਰ ਕਰਨ ਲਈ ਚਿੰਨ੍ਹ ਤੋਂ ਸਵਾਈਪ ਕਰੋ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"ਜਵਾਬ ਦਿਓ ਅਤੇ ਜਾਰੀ ਕਾਲ ਨੂੰ ਸਮਾਪਤ ਕਰੋ"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ਵੀਡੀਓ ਬੰਦ ਹੈ"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ਜਵਾਬ ਦੇਣ ਲਈ ਦੋ ਉਂਗਲਾਂ ਨਾਲ ਉੱਪਰ ਵੱਲ ਸਵਾਈਪ ਕਰੋ। ਅਸਵੀਕਾਰ ਕਰਨ ਲਈ ਦੋ ਉਂਗਲਾਂ ਨਾਲ ਹੇਠਾਂ ਵੱਲ ਸਵਾਈਪ ਕਰੋ।"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"ਜ਼ਰੂਰੀ"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"ਮਹੱਤਵਪੂਰਨ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-pl/strings.xml b/java/com/android/incallui/answer/impl/res/values-pl/strings.xml
index b0c44e7..f6e1f1b 100644
--- a/java/com/android/incallui/answer/impl/res/values-pl/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-pl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Przesuń palcem od ikony, aby odrzucić połączenie i wysłać wiadomość"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Odbierz połączenie i zakończ trwającą rozmowę"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Wideo jest wyłączone"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Przesuń dwoma palcami w górę, aby odebrać. Przesuń dwoma palcami w dół, aby odrzucić."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Pilne"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Ważne"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-pt-rBR/strings.xml b/java/com/android/incallui/answer/impl/res/values-pt-rBR/strings.xml
index fe1c89d..1ed2451 100644
--- a/java/com/android/incallui/answer/impl/res/values-pt-rBR/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-pt-rBR/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Deslize a partir do ícone para recusar com uma mensagem"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Atender e encerrar a chamada em andamento"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"O vídeo está desativado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Deslize com dois dedos para cima para atender. Deslize com dois dedos para baixo para recusar."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-pt-rPT/strings.xml b/java/com/android/incallui/answer/impl/res/values-pt-rPT/strings.xml
index 1a23a4a..f1e17a1 100644
--- a/java/com/android/incallui/answer/impl/res/values-pt-rPT/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-pt-rPT/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Deslize rapidamente a partir do ícone para recusar com uma mensagem"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Atender e terminar uma chamada em curso"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"O vídeo está desativado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Deslize rapidamente com dois dedos para cima para responder. Deslize rapidamente com dois dedos para baixo para recusar."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-pt/strings.xml b/java/com/android/incallui/answer/impl/res/values-pt/strings.xml
index fe1c89d..1ed2451 100644
--- a/java/com/android/incallui/answer/impl/res/values-pt/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-pt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Deslize a partir do ícone para recusar com uma mensagem"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Atender e encerrar a chamada em andamento"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"O vídeo está desativado"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Deslize com dois dedos para cima para atender. Deslize com dois dedos para baixo para recusar."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Importante"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ro/strings.xml b/java/com/android/incallui/answer/impl/res/values-ro/strings.xml
index 6c8bafa..0b1f4f4 100644
--- a/java/com/android/incallui/answer/impl/res/values-ro/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ro/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Glisați de pe pictogramă pentru a respinge cu un mesaj"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Răspundeți și încheiați apelul în curs"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Camera video este dezactivată."</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Glisați cu două degete în sus pentru a răspunde și în jos pentru a respinge."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgent"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Important"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ru/strings.xml b/java/com/android/incallui/answer/impl/res/values-ru/strings.xml
index 67ff06a..d1fdcf7 100644
--- a/java/com/android/incallui/answer/impl/res/values-ru/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ru/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Чтобы отклонить вызов и отправить SMS, проведите пальцем от значка"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Ответить и завершить текущий вызов"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Камера выключена"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Проведите двумя пальцами по экрану вверх, чтобы ответить, или вниз, чтобы отклонить вызов."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Срочно"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важный звонок"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-si/strings.xml b/java/com/android/incallui/answer/impl/res/values-si/strings.xml
index ae3c080..99f4989 100644
--- a/java/com/android/incallui/answer/impl/res/values-si/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-si/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"පණිවිඩය සහිතව ප්‍රතික්ෂේප කිරීමට නිරූපකයේ සිට ස්වයිප් කරන්න"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"යන අැමතුමට පිළිතරු දී අවසන් කරන්න"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"වීඩියෝව ක්‍රියාවිරහිතයි"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"පිළිතුරු දීමට ඇඟිලි දෙකකින් ඉහළට ස්වයිප් කරන්න, ප්‍රතික්ෂේප කිරීමට ඇඟිලි දෙකකින් පහළට ස්වයිප් කරන්න."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"හදිසි"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"වැදගත්"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sk/strings.xml b/java/com/android/incallui/answer/impl/res/values-sk/strings.xml
index 179be7b..fa00ac4 100644
--- a/java/com/android/incallui/answer/impl/res/values-sk/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Prejdením prstom od ikony odmietnuť so správou"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Prijať hovor a ukončiť prebiehajúci hovor"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video je vypnuté"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Ak chcete hovor prijať, prejdite dvomi prstami nahor. Ak ho chcete odmietnuť, prejdite dvomi prstami nadol."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Naliehavé"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Dôležité"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sl/strings.xml b/java/com/android/incallui/answer/impl/res/values-sl/strings.xml
index 5f658be..147a098 100644
--- a/java/com/android/incallui/answer/impl/res/values-sl/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Povlecite z ikone, da klic zavrnete s sporočilom"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Sprejmi klic in končaj aktivni klic"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video je izklopljen"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Z dvema prstoma povlecite navzgor, da sprejmete klic. Z dvema prstoma povlecite navzdol, da zavrnete klic."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Nujno"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Pomembno"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sq/strings.xml b/java/com/android/incallui/answer/impl/res/values-sq/strings.xml
index 1de60c9..e71691a 100644
--- a/java/com/android/incallui/answer/impl/res/values-sq/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sq/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Rrëshqit nga ikona për të refuzuar me mesazh"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Përgjigju dhe mbyll telefonatën në vazhdim"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Videoja është joaktive"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Rrëshqit dy gishta lart për t\'u përgjigjur. Rrëshqit dy gishta poshtë për të refuzuar."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Urgjente"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"E rëndësishme"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sr/strings.xml b/java/com/android/incallui/answer/impl/res/values-sr/strings.xml
index 4d6ef56..c802b0e 100644
--- a/java/com/android/incallui/answer/impl/res/values-sr/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Превуците од иконе да бисте одбили поруком"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Јавите се и завршите позив који је у току"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Камера је искључена"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Превуците нагоре помоћу два прста да бисте одговорили. Превуците надоле помоћу два прста да бисте одбили."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Хитно"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важно"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sv/strings.xml b/java/com/android/incallui/answer/impl/res/values-sv/strings.xml
index e47b4e0..2265dc4 100644
--- a/java/com/android/incallui/answer/impl/res/values-sv/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Svep från ikonen för att avvisa med meddelande"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Svara och avsluta pågående samtal"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video avstängd"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Dra två fingrar uppåt för att svara och två nedåt för att avvisa."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Brådskande"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Viktigt"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-sw/strings.xml b/java/com/android/incallui/answer/impl/res/values-sw/strings.xml
index 1e58966..26e1b7a 100644
--- a/java/com/android/incallui/answer/impl/res/values-sw/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-sw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Telezesha kidole ukianzia kwenye aikoni ili utume ujumbe wa kukataa"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Jibu na ukate simu inayoendelea"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video imezimwa"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Telezesha juu kwa vidole viwili ili uijibu. Telezesha chini kwa vidole viwili ili uikate."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Dharura"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Muhimu"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ta/strings.xml b/java/com/android/incallui/answer/impl/res/values-ta/strings.xml
index 847936f..453781d 100644
--- a/java/com/android/incallui/answer/impl/res/values-ta/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ta/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"செய்தியுடன் நிராகரிக்க, ஐகானிலிருந்து ஸ்வைப் செய்யவும்"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"உள்வரும் அழைப்பிற்குப் பதிலளித்து, செயலில் உள்ள அழைப்பை முடிக்கும்"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"வீடியோ முடக்கப்பட்டுள்ளது"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"பதிலளிக்க, இரு விரல்களால் மேலே ஸ்வைப் செய்யவும். நிராகரிக்க, இரு விரல்களால் கீழே ஸ்வைப் செய்யவும்."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"அவசரம்"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"முக்கிய அழைப்பு"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-te/strings.xml b/java/com/android/incallui/answer/impl/res/values-te/strings.xml
index abc3902..e0e5087 100644
--- a/java/com/android/incallui/answer/impl/res/values-te/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-te/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"సందేశంతో తిరస్కరించడానికి చిహ్నం నుండి స్వైప్ చేయండి"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"సమాధానం ఇస్తుంది మరియు కొనసాగుతున్న కాల్‌ను ముగిస్తుంది"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"వీడియో ఆఫ్‌లో ఉంది"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"సమాధానం ఇవ్వడానికి రెండు వేళ్లతో పైకి స్వైప్ చేయండి. తిరస్కరించడానికి రెండు వేళ్లతో క్రిందికి స్వైప్ చేయండి."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"అత్యవసరం"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"ముఖ్యమైనది"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-th/strings.xml b/java/com/android/incallui/answer/impl/res/values-th/strings.xml
index 54069b3..695da74 100644
--- a/java/com/android/incallui/answer/impl/res/values-th/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-th/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"เลื่อนไอคอนเพื่อปฏิเสธสายด้วยข้อความ"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"รับและวางสาย"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"วิดีโอปิดอยู่"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"ใช้สองนิ้วเลื่อนขึ้นเพื่อรับสายและเลื่อนลงเพื่อตัดสาย"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"ด่วน"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"สำคัญ"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-tl/strings.xml b/java/com/android/incallui/answer/impl/res/values-tl/strings.xml
index 8f87b56..6128d6f 100644
--- a/java/com/android/incallui/answer/impl/res/values-tl/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-tl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"I-swipe mula sa icon upang tanggihan gamit ang mensahe"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Sagutin at tapusin ang kasalukuyang tawag"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Naka-off ang video"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"I-swipe nang pataas gamit ang dalawang daliri upang sagutin. I-swipe nang pababa gamit ang dalawang daliri upang tanggihan."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Apurahan"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Mahalaga"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-tr/strings.xml b/java/com/android/incallui/answer/impl/res/values-tr/strings.xml
index 53f5eb9..87583c0 100644
--- a/java/com/android/incallui/answer/impl/res/values-tr/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-tr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Mesajla reddetmek için, simgeden hızlıca kaydırın"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Bir çağrı cevaplanır ve devam eden çağrı sona erdirilir"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video kapalı"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Cevaplamak için iki parmağınızla hızlıca yukarı kaydırın. Reddetmek içinse iki parmağınızla hızlıca aşağı kaydırın."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Acil"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Önemli"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-uk/strings.xml b/java/com/android/incallui/answer/impl/res/values-uk/strings.xml
index a0332d3..76eb2b0 100644
--- a/java/com/android/incallui/answer/impl/res/values-uk/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-uk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Проведіть пальцем убік від значка, щоб відхилити з повідомленням"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Відповісти на виклик, завершивши поточний"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Відео вимкнено"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Проведіть двома пальцями вгору, щоб відповісти, або вниз, щоб відхилити дзвінок."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Терміново"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Важливо"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-ur/strings.xml b/java/com/android/incallui/answer/impl/res/values-ur/strings.xml
index e1813cb..2a44e90 100644
--- a/java/com/android/incallui/answer/impl/res/values-ur/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-ur/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"پیغام کے ساتھ رد کرنے کیلئے آئیکن سے سوائپ کریں"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"جواب دیں اور جاری کال ختم کریں"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"ویڈیو آف ہے"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"جواب دینے کیلئے دوانگلیوں کے ساتھ اوپر سوائپ کریں۔ مسترد کرنے کیلئے دو انگلیوں کے ساتھ نیچے سوائپ کریں۔"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"ارجنٹ"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"اہم"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-uz/strings.xml b/java/com/android/incallui/answer/impl/res/values-uz/strings.xml
index b83abcc..f348a49 100644
--- a/java/com/android/incallui/answer/impl/res/values-uz/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-uz/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Qo‘ng‘iroqni SMS bilan rad etish uchun nishonchadan suring."</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Kiruvchi chaqiruvga javob berish va joriy qo‘ng‘iroqni tugatish"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Kamera o‘chiq"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Chaqiruvga javob berish uchun ikki barmoq bilan tepaga, rad etish uchun ikki barmoq bilan pastga suring."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Juda muhim"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Muhim qo‘ng‘iroq"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-vi/strings.xml b/java/com/android/incallui/answer/impl/res/values-vi/strings.xml
index 94dd1c3..f4dfa5b 100644
--- a/java/com/android/incallui/answer/impl/res/values-vi/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-vi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Vuốt từ biểu tượng để từ chối kèm thông báo"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Trả lời và kết thúc cuộc gọi đang diễn ra"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Video đã tắt"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Vuốt hai ngón tay lên để trả lời. Vuốt hai ngón tay xuống để từ chối."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Khẩn cấp"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Quan trọng"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-zh-rCN/strings.xml b/java/com/android/incallui/answer/impl/res/values-zh-rCN/strings.xml
index fc7ce64..9698aa0 100644
--- a/java/com/android/incallui/answer/impl/res/values-zh-rCN/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-zh-rCN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"滑动图标即可拒接来电并发送信息"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"接听并结束当前通话"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"摄像头处于关闭状态"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"双指向上滑动即可接听，向下滑动则可拒接。"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"紧急"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"重要"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-zh-rHK/strings.xml b/java/com/android/incallui/answer/impl/res/values-zh-rHK/strings.xml
index 9795539..81a8815 100644
--- a/java/com/android/incallui/answer/impl/res/values-zh-rHK/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-zh-rHK/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"從圖示快速滑動即可透過訊息拒絕"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"接聽及結束進行中的通話"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"視像已關閉"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"兩指向上滑動可接聽，向下滑動則可拒接。"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"緊急"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"重要事項"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-zh-rTW/strings.xml b/java/com/android/incallui/answer/impl/res/values-zh-rTW/strings.xml
index f27e5ae..8f04992 100644
--- a/java/com/android/incallui/answer/impl/res/values-zh-rTW/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-zh-rTW/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"滑動圖示即可拒接來電並傳送簡訊"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"接聽來電及結束進行中的通話"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"已關閉攝影機"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"用雙指向上滑動可接聽，向下滑動可拒接。"</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"緊急"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"重要"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values-zu/strings.xml b/java/com/android/incallui/answer/impl/res/values-zu/strings.xml
index 52f2400..23c988e 100644
--- a/java/com/android/incallui/answer/impl/res/values-zu/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values-zu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="call_incoming_swipe_to_decline_with_message" msgid="2426342919316424240">"Swayipha isithonjana ukuze wenqabe ngomlayezo"</string>
@@ -20,5 +36,5 @@
     <string name="a11y_description_incoming_call_answer_and_release" msgid="8511087499748888476">"Phendula uphinde uqede ikholi eqhubekayo"</string>
     <string name="call_incoming_video_is_off" msgid="3216603035158629403">"Ividiyo ivaliwe"</string>
     <string name="a11y_incoming_call_swipe_gesture_prompt" msgid="8682480557168484972">"Swayiphela iminwe emibili phezulu ukuze uphendule. Swayiphela iminwe emibili phansi ukuze wenqabe."</string>
-    <string name="call_incoming_important" msgid="4090408168895243702">"Okuphuthumayo"</string>
+    <string name="call_incoming_important" msgid="3762352743365137090">"Kubalulekile"</string>
 </resources>
diff --git a/java/com/android/incallui/answer/impl/res/values/strings.xml b/java/com/android/incallui/answer/impl/res/values/strings.xml
index 2359220..de5ee6e 100644
--- a/java/com/android/incallui/answer/impl/res/values/strings.xml
+++ b/java/com/android/incallui/answer/impl/res/values/strings.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
 <resources>
   <string name="call_incoming_swipe_to_decline_with_message">Swipe from icon to decline with message</string>
   <string name="call_incoming_swipe_to_answer_video_as_audio">Swipe from icon to answer as an audio call</string>
@@ -26,5 +41,5 @@
   <!-- Voice prompt of swipe gesture when accessibility is turned on. -->
   <string description="The message announced to accessibility assistance on incoming call."
     name="a11y_incoming_call_swipe_gesture_prompt">Two finger swipe up to answer. Two finger swipe down to decline.</string>
-  <string name="call_incoming_important">Urgent</string>
+  <string name="call_incoming_important">Important</string>
 </resources>
diff --git a/java/com/android/incallui/answer/protocol/AnswerScreen.java b/java/com/android/incallui/answer/protocol/AnswerScreen.java
index 8bcad6e..5ad5002 100644
--- a/java/com/android/incallui/answer/protocol/AnswerScreen.java
+++ b/java/com/android/incallui/answer/protocol/AnswerScreen.java
@@ -30,6 +30,8 @@
 
   boolean allowAnswerAndRelease();
 
+  boolean isActionTimeout();
+
   void setTextResponses(List<String> textResponses);
 
   boolean hasPendingDialogs();
diff --git a/java/com/android/incallui/answer/protocol/AnswerScreenDelegate.java b/java/com/android/incallui/answer/protocol/AnswerScreenDelegate.java
index 9815981..5d2c415 100644
--- a/java/com/android/incallui/answer/protocol/AnswerScreenDelegate.java
+++ b/java/com/android/incallui/answer/protocol/AnswerScreenDelegate.java
@@ -32,6 +32,10 @@
   void onReject();
 
   void onAnswerAndReleaseCall();
+
+  void onAnswerAndReleaseButtonEnabled();
+
+  void onAnswerAndReleaseButtonDisabled();
   /**
    * Sets the window background color based on foreground call's theme and the given progress. This
    * is called from the answer UI to animate the accept and reject action.
@@ -42,4 +46,7 @@
    * @param progress float from -1 to 1. -1 is fully rejected, 1 is fully accepted, and 0 is neutral
    */
   void updateWindowBackgroundColor(@FloatRange(from = -1f, to = 1.0f) float progress);
+
+  /** Returns true if any answer/reject action timed out. */
+  boolean isActionTimeout();
 }
diff --git a/java/com/android/incallui/answerproximitysensor/AnswerProximitySensor.java b/java/com/android/incallui/answerproximitysensor/AnswerProximitySensor.java
index 24fbfc4..536a470 100644
--- a/java/com/android/incallui/answerproximitysensor/AnswerProximitySensor.java
+++ b/java/com/android/incallui/answerproximitysensor/AnswerProximitySensor.java
@@ -20,8 +20,8 @@
 import android.hardware.display.DisplayManager;
 import android.os.PowerManager;
 import android.view.Display;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.incallui.call.DialerCall;
 import com.android.incallui.call.DialerCall.State;
 import com.android.incallui.call.DialerCallListener;
@@ -143,6 +143,9 @@
   public void onInternationalCallOnWifi() {}
 
   @Override
+  public void onEnrichedCallSessionUpdate() {}
+
+  @Override
   public void onDialerCallSessionModificationStateChange() {}
 
   @Override
diff --git a/java/com/android/incallui/audioroute/AudioRouteSelectorDialogFragment.java b/java/com/android/incallui/audioroute/AudioRouteSelectorDialogFragment.java
index c757477..c7a9d63 100644
--- a/java/com/android/incallui/audioroute/AudioRouteSelectorDialogFragment.java
+++ b/java/com/android/incallui/audioroute/AudioRouteSelectorDialogFragment.java
@@ -18,6 +18,7 @@
 
 import android.app.Dialog;
 import android.content.Context;
+import android.content.DialogInterface;
 import android.content.res.ColorStateList;
 import android.graphics.PorterDuff.Mode;
 import android.os.Bundle;
@@ -41,6 +42,8 @@
   /** Called when an audio route is picked */
   public interface AudioRouteSelectorPresenter {
     void onAudioRouteSelected(int audioRoute);
+
+    void onAudioRouteSelectorDismiss();
   }
 
   public static AudioRouteSelectorDialogFragment newInstance(CallAudioState audioState) {
@@ -91,6 +94,14 @@
     return view;
   }
 
+  @Override
+  public void onDismiss(DialogInterface dialogInterface) {
+    super.onDismiss(dialogInterface);
+    FragmentUtils.getParentUnsafe(
+            AudioRouteSelectorDialogFragment.this, AudioRouteSelectorPresenter.class)
+        .onAudioRouteSelectorDismiss();
+  }
+
   private void initItem(TextView item, final int itemRoute, CallAudioState audioState) {
     int selectedColor = getResources().getColor(R.color.dialer_theme_color);
     if ((audioState.getSupportedRouteMask() & itemRoute) == 0) {
diff --git a/java/com/android/incallui/bindings/InCallUiBindings.java b/java/com/android/incallui/bindings/InCallUiBindings.java
index d3d3a8b..5c6aef4 100644
--- a/java/com/android/incallui/bindings/InCallUiBindings.java
+++ b/java/com/android/incallui/bindings/InCallUiBindings.java
@@ -19,7 +19,6 @@
 import android.content.Context;
 import android.content.Intent;
 import android.support.annotation.Nullable;
-import com.android.dialer.common.ConfigProvider;
 
 /** This interface allows the container application to customize the in call UI. */
 public interface InCallUiBindings {
@@ -37,12 +36,4 @@
    */
   @Nullable
   Intent getCallStateButtonBroadcastIntent(Context context);
-
-  @Nullable
-  DistanceHelper newDistanceHelper(Context context, DistanceHelper.Listener listener);
-
-  @Nullable
-  ContactUtils getContactUtilsInstance(Context context);
-
-  ConfigProvider getConfigProvider();
 }
diff --git a/java/com/android/incallui/bindings/InCallUiBindingsStub.java b/java/com/android/incallui/bindings/InCallUiBindingsStub.java
index 7b42fb3..3a005b0 100644
--- a/java/com/android/incallui/bindings/InCallUiBindingsStub.java
+++ b/java/com/android/incallui/bindings/InCallUiBindingsStub.java
@@ -19,11 +19,9 @@
 import android.content.Context;
 import android.content.Intent;
 import android.support.annotation.Nullable;
-import com.android.dialer.common.ConfigProvider;
 
 /** Default implementation for InCallUi bindings. */
 public class InCallUiBindingsStub implements InCallUiBindings {
-  private ConfigProvider configProvider;
 
   @Override
   @Nullable
@@ -42,40 +40,4 @@
   public Intent getCallStateButtonBroadcastIntent(Context context) {
     return null;
   }
-
-  @Override
-  @Nullable
-  public DistanceHelper newDistanceHelper(Context context, DistanceHelper.Listener listener) {
-    return null;
-  }
-
-  @Override
-  @Nullable
-  public ContactUtils getContactUtilsInstance(Context context) {
-    return null;
-  }
-
-  @Override
-  public ConfigProvider getConfigProvider() {
-    if (configProvider == null) {
-      configProvider =
-          new ConfigProvider() {
-            @Override
-            public String getString(String key, String defaultValue) {
-              return defaultValue;
-            }
-
-            @Override
-            public long getLong(String key, long defaultValue) {
-              return defaultValue;
-            }
-
-            @Override
-            public boolean getBoolean(String key, boolean defaultValue) {
-              return defaultValue;
-            }
-          };
-    }
-    return configProvider;
-  }
 }
diff --git a/java/com/android/incallui/call/CallList.java b/java/com/android/incallui/call/CallList.java
index 34f0cc0..269fcd6 100644
--- a/java/com/android/incallui/call/CallList.java
+++ b/java/com/android/incallui/call/CallList.java
@@ -32,6 +32,8 @@
 import com.android.dialer.blocking.FilteredNumbersUtil;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.enrichedcall.EnrichedCallComponent;
+import com.android.dialer.enrichedcall.EnrichedCallManager;
 import com.android.dialer.location.GeoUtil;
 import com.android.dialer.logging.DialerImpression;
 import com.android.dialer.logging.Logger;
@@ -117,6 +119,10 @@
         new DialerCall(context, this, telecomCall, latencyReport, true /* registerCallback */);
     logSecondIncomingCall(context, call);
 
+    EnrichedCallManager manager = EnrichedCallComponent.get(context).getEnrichedCallManager();
+    manager.registerCapabilitiesListener(call);
+    manager.registerStateChangedListener(call);
+
     final DialerCallListenerImpl dialerCallListener = new DialerCallListenerImpl(call);
     call.addListener(dialerCallListener);
     LogUtil.d("CallList.onCallAdded", "callState=" + call.getState());
@@ -278,6 +284,10 @@
       DialerCall call = mCallByTelecomCall.get(telecomCall);
       Assert.checkArgument(!call.isExternalCall());
 
+      EnrichedCallManager manager = EnrichedCallComponent.get(context).getEnrichedCallManager();
+      manager.unregisterCapabilitiesListener(call);
+      manager.unregisterStateChangedListener(call);
+
       // Don't log an already logged call. logCall() might be called multiple times
       // for the same call due to b/24109437.
       if (call.getLogState() != null && !call.getLogState().isLogged) {
@@ -289,6 +299,8 @@
         LogUtil.w(
             "CallList.onCallRemoved", "Removing call not previously disconnected " + call.getId());
       }
+
+      call.onRemovedFromCallList();
     }
 
     if (!hasLiveCall()) {
@@ -556,7 +568,8 @@
    *
    * @param call The call to update.
    */
-  private void onUpdateCall(DialerCall call) {
+  @VisibleForTesting
+  void onUpdateCall(DialerCall call) {
     LogUtil.d("CallList.onUpdateCall", String.valueOf(call));
     if (!mCallById.containsKey(call.getId()) && call.isExternalCall()) {
       // When a regular call becomes external, it is removed from the call list, and there may be
@@ -793,6 +806,9 @@
     }
 
     @Override
+    public void onEnrichedCallSessionUpdate() {}
+
+    @Override
     public void onDialerCallSessionModificationStateChange() {
       for (Listener listener : mListeners) {
         listener.onSessionModificationStateChange(mCall);
diff --git a/java/com/android/incallui/call/DialerCall.java b/java/com/android/incallui/call/DialerCall.java
index acedf41..88e0dbb 100644
--- a/java/com/android/incallui/call/DialerCall.java
+++ b/java/com/android/incallui/call/DialerCall.java
@@ -47,10 +47,14 @@
 import com.android.dialer.callintent.CallIntentParser;
 import com.android.dialer.callintent.CallSpecificAppData;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.enrichedcall.EnrichedCallCapabilities;
 import com.android.dialer.enrichedcall.EnrichedCallComponent;
+import com.android.dialer.enrichedcall.EnrichedCallManager;
+import com.android.dialer.enrichedcall.EnrichedCallManager.CapabilitiesListener;
+import com.android.dialer.enrichedcall.EnrichedCallManager.Filter;
+import com.android.dialer.enrichedcall.EnrichedCallManager.StateChangedListener;
 import com.android.dialer.enrichedcall.Session;
 import com.android.dialer.lightbringer.LightbringerComponent;
 import com.android.dialer.logging.ContactLookupResult;
@@ -77,7 +81,7 @@
 import java.util.concurrent.TimeUnit;
 
 /** Describes a single call and its state. */
-public class DialerCall implements VideoTechListener {
+public class DialerCall implements VideoTechListener, StateChangedListener, CapabilitiesListener {
 
   public static final int CALL_HISTORY_STATUS_UNKNOWN = 0;
   public static final int CALL_HISTORY_STATUS_PRESENT = 1;
@@ -143,6 +147,12 @@
   private EnrichedCallCapabilities mEnrichedCallCapabilities;
   private Session mEnrichedCallSession;
 
+  private int answerAndReleaseButtonDisplayedTimes = 0;
+  private boolean releasedByAnsweringSecondCall = false;
+  // Times when a second call is received but AnswerAndRelease button is not shown
+  // since it's not supported.
+  private int secondCallWithoutAnswerAndReleasedButtonTimes = 0;
+
   public static String getNumberFromHandle(Uri handle) {
     return handle == null ? "" : handle.getSchemeSpecificPart();
   }
@@ -153,6 +163,9 @@
    */
   private boolean isRemotelyHeld;
 
+  /** Indicates whether this call is currently in the process of being merged into a conference. */
+  private boolean isMergeInProcess;
+
   /**
    * Indicates whether the phone account associated with this call supports specifying a call
    * subject.
@@ -255,6 +268,14 @@
             case TelephonyManagerCompat.EVENT_NOTIFY_INTERNATIONAL_CALL_ON_WFC:
               notifyInternationalCallOnWifi();
               break;
+            case TelephonyManagerCompat.EVENT_MERGE_START:
+              LogUtil.i("DialerCall.onConnectionEvent", "merge start");
+              isMergeInProcess = true;
+              break;
+            case TelephonyManagerCompat.EVENT_MERGE_COMPLETE:
+              LogUtil.i("DialerCall.onConnectionEvent", "merge complete");
+              isMergeInProcess = false;
+              break;
             default:
               break;
           }
@@ -292,6 +313,8 @@
 
     mTimeAddedMs = System.currentTimeMillis();
     parseCallSpecificAppData();
+
+    updateEnrichedCallSession();
   }
 
   private static int translateState(int state) {
@@ -413,6 +436,12 @@
       for (DialerCallListener listener : mListeners) {
         listener.onDialerCallDisconnect();
       }
+      EnrichedCallComponent.get(mContext)
+          .getEnrichedCallManager()
+          .unregisterCapabilitiesListener(this);
+      EnrichedCallComponent.get(mContext)
+          .getEnrichedCallManager()
+          .unregisterCapabilitiesListener(this);
     } else {
       for (DialerCallListener listener : mListeners) {
         listener.onDialerCallUpdate();
@@ -952,6 +981,10 @@
     return isRemotelyHeld;
   }
 
+  public boolean isMergeInProcess() {
+    return isMergeInProcess;
+  }
+
   public boolean isIncoming() {
     return mLogState.isIncoming;
   }
@@ -960,6 +993,30 @@
     return mLatencyReport;
   }
 
+  public int getAnswerAndReleaseButtonDisplayedTimes() {
+    return answerAndReleaseButtonDisplayedTimes;
+  }
+
+  public void increaseAnswerAndReleaseButtonDisplayedTimes() {
+    answerAndReleaseButtonDisplayedTimes++;
+  }
+
+  public boolean getReleasedByAnsweringSecondCall() {
+    return releasedByAnsweringSecondCall;
+  }
+
+  public void setReleasedByAnsweringSecondCall(boolean releasedByAnsweringSecondCall) {
+    this.releasedByAnsweringSecondCall = releasedByAnsweringSecondCall;
+  }
+
+  public int getSecondCallWithoutAnswerAndReleasedButtonTimes() {
+    return secondCallWithoutAnswerAndReleasedButtonTimes;
+  }
+
+  public void increaseSecondCallWithoutAnswerAndReleasedButtonTimes() {
+    secondCallWithoutAnswerAndReleasedButtonTimes++;
+  }
+
   @Nullable
   public EnrichedCallCapabilities getEnrichedCallCapabilities() {
     return mEnrichedCallCapabilities;
@@ -1172,6 +1229,71 @@
     TelecomAdapter.getInstance().setAudioRoute(CallAudioState.ROUTE_SPEAKER);
   }
 
+  @Override
+  public void onCapabilitiesUpdated() {
+    if (getNumber() == null) {
+      return;
+    }
+    EnrichedCallCapabilities capabilities =
+        EnrichedCallComponent.get(mContext).getEnrichedCallManager().getCapabilities(getNumber());
+    if (capabilities != null) {
+      setEnrichedCallCapabilities(capabilities);
+      update();
+    }
+  }
+
+  @Override
+  public void onEnrichedCallStateChanged() {
+    updateEnrichedCallSession();
+  }
+
+  private void updateEnrichedCallSession() {
+    if (getNumber() == null) {
+      return;
+    }
+    if (getEnrichedCallSession() != null) {
+      // State changes to existing sessions are currently handled by the UI components (which have
+      // their own listeners). Someday instead we could remove those and just call update() here and
+      // have the usual onDialerCallUpdate update the UI.
+      dispatchOnEnrichedCallSessionUpdate();
+      return;
+    }
+
+    EnrichedCallManager manager = EnrichedCallComponent.get(mContext).getEnrichedCallManager();
+
+    Filter filter =
+        isIncoming()
+            ? manager.createIncomingCallComposerFilter()
+            : manager.createOutgoingCallComposerFilter();
+
+    Session session = manager.getSession(getUniqueCallId(), getNumber(), filter);
+    if (session == null) {
+      return;
+    }
+
+    session.setUniqueDialerCallId(getUniqueCallId());
+    setEnrichedCallSession(session);
+
+    LogUtil.i(
+        "DialerCall.updateEnrichedCallSession",
+        "setting session %d's dialer id to %s",
+        session.getSessionId(),
+        getUniqueCallId());
+
+    dispatchOnEnrichedCallSessionUpdate();
+  }
+
+  private void dispatchOnEnrichedCallSessionUpdate() {
+    for (DialerCallListener listener : mListeners) {
+      listener.onEnrichedCallSessionUpdate();
+    }
+  }
+
+  void onRemovedFromCallList() {
+    // Ensure we clean up when this call is removed.
+    mVideoTechManager.dispatchRemovedFromCallList();
+  }
+
   /**
    * Specifies whether a number is in the call history or not. {@link #CALL_HISTORY_STATUS_UNKNOWN}
    * means there is no result.
@@ -1372,6 +1494,7 @@
 
       String phoneNumber = call.getNumber();
       phoneNumber = phoneNumber != null ? phoneNumber : "";
+      phoneNumber = phoneNumber.replaceAll("[^+0-9]", "");
 
       // Insert order here determines the priority of that video tech option
       videoTechs = new ArrayList<>();
@@ -1390,7 +1513,10 @@
 
       videoTechs.add(
           new LightbringerTech(
-              LightbringerComponent.get(call.mContext).getLightbringer(), call, phoneNumber));
+              LightbringerComponent.get(call.mContext).getLightbringer(),
+              call,
+              call.mTelecomCall,
+              phoneNumber));
     }
 
     VideoTech getVideoTech() {
@@ -1414,6 +1540,12 @@
         videoTech.onCallStateChanged(context, newState);
       }
     }
+
+    void dispatchRemovedFromCallList() {
+      for (VideoTech videoTech : videoTechs) {
+        videoTech.onRemovedFromCallList();
+      }
+    }
   }
 
   /** Called when canned text responses have been loaded. */
diff --git a/java/com/android/incallui/call/DialerCallListener.java b/java/com/android/incallui/call/DialerCallListener.java
index ed321be..5d24a4d 100644
--- a/java/com/android/incallui/call/DialerCallListener.java
+++ b/java/com/android/incallui/call/DialerCallListener.java
@@ -36,4 +36,6 @@
   void onHandoverToWifiFailure();
 
   void onInternationalCallOnWifi();
+
+  void onEnrichedCallSessionUpdate();
 }
diff --git a/java/com/android/incallui/call/TelecomAdapter.java b/java/com/android/incallui/call/TelecomAdapter.java
index ebf4ecf..4fc9f81 100644
--- a/java/com/android/incallui/call/TelecomAdapter.java
+++ b/java/com/android/incallui/call/TelecomAdapter.java
@@ -20,12 +20,13 @@
 import android.content.Intent;
 import android.os.Looper;
 import android.support.annotation.MainThread;
+import android.support.annotation.VisibleForTesting;
 import android.telecom.InCallService;
 import com.android.dialer.common.LogUtil;
 import java.util.List;
 
 /** Wrapper around Telecom APIs. */
-public final class TelecomAdapter implements InCallServiceListener {
+public class TelecomAdapter implements InCallServiceListener {
 
   private static final String ADD_CALL_MODE_KEY = "add_call_mode";
 
@@ -45,6 +46,11 @@
     return sInstance;
   }
 
+  @VisibleForTesting(otherwise = VisibleForTesting.NONE)
+  public static void setInstanceForTesting(TelecomAdapter telecomAdapter) {
+    sInstance = telecomAdapter;
+  }
+
   @Override
   public void setInCallService(InCallService inCallService) {
     mInCallService = inCallService;
diff --git a/java/com/android/incallui/calllocation/impl/DownloadMapImageTask.java b/java/com/android/incallui/calllocation/impl/DownloadMapImageTask.java
index 801b0d3..b093a1b 100644
--- a/java/com/android/incallui/calllocation/impl/DownloadMapImageTask.java
+++ b/java/com/android/incallui/calllocation/impl/DownloadMapImageTask.java
@@ -21,6 +21,7 @@
 import android.net.TrafficStats;
 import android.os.AsyncTask;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.constants.TrafficStatsTags;
 import com.android.incallui.calllocation.impl.LocationPresenter.LocationUi;
 import java.io.InputStream;
 import java.lang.ref.WeakReference;
diff --git a/java/com/android/incallui/calllocation/impl/LocationHelper.java b/java/com/android/incallui/calllocation/impl/LocationHelper.java
index 3a14789..99a759b 100644
--- a/java/com/android/incallui/calllocation/impl/LocationHelper.java
+++ b/java/com/android/incallui/calllocation/impl/LocationHelper.java
@@ -24,6 +24,7 @@
 import android.os.Handler;
 import android.support.annotation.IntDef;
 import android.support.annotation.MainThread;
+import android.support.v4.os.UserManagerCompat;
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.util.PermissionsUtil;
@@ -87,6 +88,12 @@
       LogUtil.i("LocationHelper.canGetLocation", "location service is disabled.");
       return false;
     }
+
+    if (!UserManagerCompat.isUserUnlocked(context)) {
+      LogUtil.i("LocationHelper.canGetLocation", "location unavailable in FBE mode.");
+      return false;
+    }
+
     return true;
   }
 
diff --git a/java/com/android/incallui/calllocation/impl/ReverseGeocodeTask.java b/java/com/android/incallui/calllocation/impl/ReverseGeocodeTask.java
index eb5957b..060ec0b 100644
--- a/java/com/android/incallui/calllocation/impl/ReverseGeocodeTask.java
+++ b/java/com/android/incallui/calllocation/impl/ReverseGeocodeTask.java
@@ -20,6 +20,7 @@
 import android.net.TrafficStats;
 import android.os.AsyncTask;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.constants.TrafficStatsTags;
 import com.android.incallui.calllocation.impl.LocationPresenter.LocationUi;
 import java.lang.ref.WeakReference;
 import org.json.JSONArray;
diff --git a/java/com/android/incallui/commontheme/res/anim/blinking.xml b/java/com/android/incallui/commontheme/res/anim/blinking.xml
deleted file mode 100644
index 4b921c6..0000000
--- a/java/com/android/incallui/commontheme/res/anim/blinking.xml
+++ /dev/null
@@ -1,10 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<set xmlns:android="http://schemas.android.com/apk/res/android">
-  <alpha
-    android:duration="800"
-    android:fromAlpha="0.26"
-    android:interpolator="@android:anim/linear_interpolator"
-    android:repeatCount="infinite"
-    android:repeatMode="reverse"
-    android:toAlpha="0.6"/>
-</set>
\ No newline at end of file
diff --git a/java/com/android/incallui/commontheme/res/drawable-hdpi/ic_phone_audio_white_36dp.png b/java/com/android/incallui/commontheme/res/drawable-hdpi/ic_phone_audio_white_36dp.png
deleted file mode 100644
index 26f3fe0..0000000
--- a/java/com/android/incallui/commontheme/res/drawable-hdpi/ic_phone_audio_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/commontheme/res/drawable-mdpi/ic_phone_audio_white_36dp.png b/java/com/android/incallui/commontheme/res/drawable-mdpi/ic_phone_audio_white_36dp.png
deleted file mode 100644
index 5b0a9d6..0000000
--- a/java/com/android/incallui/commontheme/res/drawable-mdpi/ic_phone_audio_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/commontheme/res/drawable-xhdpi/ic_phone_audio_white_36dp.png b/java/com/android/incallui/commontheme/res/drawable-xhdpi/ic_phone_audio_white_36dp.png
deleted file mode 100644
index d595b19..0000000
--- a/java/com/android/incallui/commontheme/res/drawable-xhdpi/ic_phone_audio_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/commontheme/res/drawable-xxhdpi/ic_phone_audio_white_36dp.png b/java/com/android/incallui/commontheme/res/drawable-xxhdpi/ic_phone_audio_white_36dp.png
deleted file mode 100644
index fb7cf16..0000000
--- a/java/com/android/incallui/commontheme/res/drawable-xxhdpi/ic_phone_audio_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/commontheme/res/drawable-xxxhdpi/ic_phone_audio_white_36dp.png b/java/com/android/incallui/commontheme/res/drawable-xxxhdpi/ic_phone_audio_white_36dp.png
deleted file mode 100644
index 4bb58d9..0000000
--- a/java/com/android/incallui/commontheme/res/drawable-xxxhdpi/ic_phone_audio_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/commontheme/res/values-af/strings.xml b/java/com/android/incallui/commontheme/res/values-af/strings.xml
index 0dfdbc7..0721869 100644
--- a/java/com/android/incallui/commontheme/res/values-af/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-af/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Beëindig oproep"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video aan"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video af"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Verwissel video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Luidspreker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Klank"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-am/strings.xml b/java/com/android/incallui/commontheme/res/values-am/strings.xml
index 3155c39..9d748e3 100644
--- a/java/com/android/incallui/commontheme/res/values-am/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-am/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ጥሪ ጨርስ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ቪዲዮ በርቷል"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ቪዲዮ ጠፍቷል"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ቪዲዮ አገላብጥ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"የድምጽ ማጉያ"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ድምፅ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ar/strings.xml b/java/com/android/incallui/commontheme/res/values-ar/strings.xml
index ecb3608..693bfc5 100644
--- a/java/com/android/incallui/commontheme/res/values-ar/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ar/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"إنهاء المكالمة"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"الفيديو قيد التشغيل"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"الفيديو ليس قيد التشغيل"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"تبديل الفيديو"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"مكبر الصوت"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"صوت"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-az/strings.xml b/java/com/android/incallui/commontheme/res/values-az/strings.xml
index d935a6c..a1d88ce 100644
--- a/java/com/android/incallui/commontheme/res/values-az/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-az/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Zəngi sonlandırın"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video aktivdir"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video deaktivdir"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Videonu dəyişdirin"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Dinamik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Səs"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/commontheme/res/values-b+sr+Latn/strings.xml
index 36430c4..05ae59c 100644
--- a/java/com/android/incallui/commontheme/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-b+sr+Latn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Završi poziv"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Uključi video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Isključi video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Zameni video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Zvučnik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvuk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-be/strings.xml b/java/com/android/incallui/commontheme/res/values-be/strings.xml
index 9609a63..e772e27 100644
--- a/java/com/android/incallui/commontheme/res/values-be/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-be/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Завяршыць выклік"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Відэа ўкл."</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Відэа выкл."</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Пераключыць відэа"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Вонк.дынамік"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Гук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-bg/strings.xml b/java/com/android/incallui/commontheme/res/values-bg/strings.xml
index 1a0f3e3..63364f8 100644
--- a/java/com/android/incallui/commontheme/res/values-bg/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-bg/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Край на обаждането"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Видеото е включено"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Видеото е изключено"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Размяна на видеото"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Високогов."</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Звук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-bn/strings.xml b/java/com/android/incallui/commontheme/res/values-bn/strings.xml
index ef2408f..9871ea4 100644
--- a/java/com/android/incallui/commontheme/res/values-bn/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-bn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"কল কেটে দিন"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ভিডিও চালু আছে"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ভিডিও বন্ধ আছে"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ভিডিও অদল বদল করুন"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"স্পিকার"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"শব্দ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-bs/strings.xml b/java/com/android/incallui/commontheme/res/values-bs/strings.xml
index bfaff98..76f991d 100644
--- a/java/com/android/incallui/commontheme/res/values-bs/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-bs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Prekini poziv"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Kamera je uključena"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Kamera je isključena"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Zamijeni kameru"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Zvučnik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvuk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ca/strings.xml b/java/com/android/incallui/commontheme/res/values-ca/strings.xml
index 1b6ed44..832027d 100644
--- a/java/com/android/incallui/commontheme/res/values-ca/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ca/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Finalitza la trucada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo activat"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desactivat"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Canvia de vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altaveu"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"So"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-cs/strings.xml b/java/com/android/incallui/commontheme/res/values-cs/strings.xml
index 1f10d85..7afdcba 100644
--- a/java/com/android/incallui/commontheme/res/values-cs/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-cs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Ukončit hovor"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Zapnuté video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vypnuté video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Přepnout video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Reproduktor"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvuk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-da/strings.xml b/java/com/android/incallui/commontheme/res/values-da/strings.xml
index 35d01e3..bd26e90 100644
--- a/java/com/android/incallui/commontheme/res/values-da/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-da/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Afslut opkald"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video til"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video fra"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Byt video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Højttaler"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Lyd"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-de/strings.xml b/java/com/android/incallui/commontheme/res/values-de/strings.xml
index 57a95b7..3fd10f0 100644
--- a/java/com/android/incallui/commontheme/res/values-de/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-de/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Anruf beenden"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video an"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video aus"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Video wechseln"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Lautsprecher"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Tonausgabe"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-el/strings.xml b/java/com/android/incallui/commontheme/res/values-el/strings.xml
index 6bb9edc..71c0be9 100644
--- a/java/com/android/incallui/commontheme/res/values-el/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-el/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Τερματισμός"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Εικόνα βίντεο ενεργοποιημένη"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Εικόνα βίντεο απενεργοποιημένη"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Εναλλαγή βίντεο"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Ηχείο"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Ήχος"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-en-rAU/strings.xml b/java/com/android/incallui/commontheme/res/values-en-rAU/strings.xml
index 8133185..4869c3f 100644
--- a/java/com/android/incallui/commontheme/res/values-en-rAU/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-en-rAU/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"End call"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video on"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video off"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Swap video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Speaker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sound"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-en-rGB/strings.xml b/java/com/android/incallui/commontheme/res/values-en-rGB/strings.xml
index 8133185..4869c3f 100644
--- a/java/com/android/incallui/commontheme/res/values-en-rGB/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-en-rGB/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"End call"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video on"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video off"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Swap video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Speaker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sound"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-en-rIN/strings.xml b/java/com/android/incallui/commontheme/res/values-en-rIN/strings.xml
index 8133185..4869c3f 100644
--- a/java/com/android/incallui/commontheme/res/values-en-rIN/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-en-rIN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"End call"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video on"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video off"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Swap video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Speaker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sound"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-es-rUS/strings.xml b/java/com/android/incallui/commontheme/res/values-es-rUS/strings.xml
index 45f2e2f..a9596d9 100644
--- a/java/com/android/incallui/commontheme/res/values-es-rUS/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-es-rUS/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Finalizar llamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video activado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video desactivado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Intercambiar video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altavoz"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sonido"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-es/strings.xml b/java/com/android/incallui/commontheme/res/values-es/strings.xml
index 56c8b28..aa84c62 100644
--- a/java/com/android/incallui/commontheme/res/values-es/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-es/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Finalizar llamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo activado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desactivado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Cambiar de vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altavoz"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sonido"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-et/strings.xml b/java/com/android/incallui/commontheme/res/values-et/strings.xml
index 069f3b5..ae2e1ba 100644
--- a/java/com/android/incallui/commontheme/res/values-et/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-et/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Kõne lõpetamine"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video on sees"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video on väljas"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Video vahetamine"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Kõlar"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Heli"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-eu/strings.xml b/java/com/android/incallui/commontheme/res/values-eu/strings.xml
index bbcf5dc..0dd126c 100644
--- a/java/com/android/incallui/commontheme/res/values-eu/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-eu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Amaitu deia"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Aktibatuta dago bideoa"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Desaktibatuta dago bideoa"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Aldatu bideoa"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Bozgorailua"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Soinua"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-fa/strings.xml b/java/com/android/incallui/commontheme/res/values-fa/strings.xml
index ea967bb..1996ad4 100644
--- a/java/com/android/incallui/commontheme/res/values-fa/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-fa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"پایان تماس"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ویدئو فعال"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ویدئو غیرفعال"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"جابه‌جایی ویدئو"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"بلندگو"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"صدا"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-fi/strings.xml b/java/com/android/incallui/commontheme/res/values-fi/strings.xml
index f0da44f..5a57981 100644
--- a/java/com/android/incallui/commontheme/res/values-fi/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-fi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Päätä puhelu"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Videokuva käytössä"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Videokuva poissa käytöstä"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Vaihda videota"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Kaiutin"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Ääni"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-fr-rCA/strings.xml b/java/com/android/incallui/commontheme/res/values-fr-rCA/strings.xml
index bf74dfb..a1db306 100644
--- a/java/com/android/incallui/commontheme/res/values-fr-rCA/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-fr-rCA/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Mettre fin à l\'appel"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vidéo activée"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vidéo désactivée"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Permuter la vidéo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Haut-parleur"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Son"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-fr/strings.xml b/java/com/android/incallui/commontheme/res/values-fr/strings.xml
index fb674a4..e169a3d 100644
--- a/java/com/android/incallui/commontheme/res/values-fr/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-fr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Mettre fin à l\'appel"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vidéo activée"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vidéo désactivée"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Permuter la vidéo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Haut-parleur"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Audio"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-gl/strings.xml b/java/com/android/incallui/commontheme/res/values-gl/strings.xml
index c7e2214..ba98a98 100644
--- a/java/com/android/incallui/commontheme/res/values-gl/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-gl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Finalizar chamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo activado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desactivado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Alternar vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altofalante"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Son"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-gu/strings.xml b/java/com/android/incallui/commontheme/res/values-gu/strings.xml
index 75584ea..194590c 100644
--- a/java/com/android/incallui/commontheme/res/values-gu/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-gu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"કૉલ સમાપ્ત કરો"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"વિડિઓ ચાલુ"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"વિડિઓ બંધ"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"વિડિઓ સ્વેપ કરો"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"સ્પીકર"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ધ્વનિ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-hi/strings.xml b/java/com/android/incallui/commontheme/res/values-hi/strings.xml
index f7ea68a..207bbf2 100644
--- a/java/com/android/incallui/commontheme/res/values-hi/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-hi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"कॉल समाप्त करें"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"वीडियो चालू"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"वीडियो बंद"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"वीडियो स्वैप करें"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"स्‍पीकर"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ध्वनि"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-hr/strings.xml b/java/com/android/incallui/commontheme/res/values-hr/strings.xml
index c30f397..c58ab85 100644
--- a/java/com/android/incallui/commontheme/res/values-hr/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-hr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Prekid poziva"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Videopoziv uključen"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Videopoziv isključen"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Zamijeni videopoziv"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Zvučnik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvuk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-hu/strings.xml b/java/com/android/incallui/commontheme/res/values-hu/strings.xml
index 9ee2300..ba7fec7 100644
--- a/java/com/android/incallui/commontheme/res/values-hu/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-hu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Hívás befejezése"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Videó be"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Videó ki"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Videó cseréje"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Hangszóró"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Hang"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-hy/strings.xml b/java/com/android/incallui/commontheme/res/values-hy/strings.xml
index 96a0cab..81262e4 100644
--- a/java/com/android/incallui/commontheme/res/values-hy/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-hy/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Ավարտել զանգը"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Տեսախցիկը միացած է"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Տեսախցիկն անջատած է"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Փոխարկել խցիկը"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Բարձրախոս"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Ձայն"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-in/strings.xml b/java/com/android/incallui/commontheme/res/values-in/strings.xml
index 4536f5d..fb3fc56 100644
--- a/java/com/android/incallui/commontheme/res/values-in/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-in/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Akhiri panggilan"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video aktif"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video nonaktif"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Tukar Video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Speaker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Suara"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-is/strings.xml b/java/com/android/incallui/commontheme/res/values-is/strings.xml
index 357f90e..438b143 100644
--- a/java/com/android/incallui/commontheme/res/values-is/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-is/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Ljúka símtali"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Kveikja á mynd"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Slökkva á mynd"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Skipta um mynd"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Hátalari"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Hljóð"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-it/strings.xml b/java/com/android/incallui/commontheme/res/values-it/strings.xml
index a63d314..b7c1d3f 100644
--- a/java/com/android/incallui/commontheme/res/values-it/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-it/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Termina chiamata"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video attivo"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video non attivo"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Scambia video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altoparlante"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Suono"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-iw/strings.xml b/java/com/android/incallui/commontheme/res/values-iw/strings.xml
index 1e2b7f2..cbd6d75 100644
--- a/java/com/android/incallui/commontheme/res/values-iw/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-iw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"סיים שיחה"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"הווידאו מופעל"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"הווידאו מושבת"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"החלף וידאו"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"רמקול"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"קול"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ja/strings.xml b/java/com/android/incallui/commontheme/res/values-ja/strings.xml
index 658b513..4ea9495 100644
--- a/java/com/android/incallui/commontheme/res/values-ja/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ja/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"通話を終了"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ビデオが ON になっています"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ビデオが OFF になっています"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ビデオを切り替える"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"スピーカー"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"音声"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ka/strings.xml b/java/com/android/incallui/commontheme/res/values-ka/strings.xml
index ffba7ce..3163476 100644
--- a/java/com/android/incallui/commontheme/res/values-ka/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ka/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ზარის დასრულება"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ვიდეო ჩართულია"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ვიდეო გამორთულია"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ვიდეოს შენაცვლება"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"სპიკერი"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ხმა"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-kk/strings.xml b/java/com/android/incallui/commontheme/res/values-kk/strings.xml
index ace83ec..23b3a2a 100644
--- a/java/com/android/incallui/commontheme/res/values-kk/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-kk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Қоңырауды аяқтау"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Бейне қосулы"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Бейне өшірулі"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Бейнені ауыстыру"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Динамик"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Дыбыс"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-km/strings.xml b/java/com/android/incallui/commontheme/res/values-km/strings.xml
index e28f120..55cfa0a 100644
--- a/java/com/android/incallui/commontheme/res/values-km/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-km/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"បញ្ចប់​ការ​ហៅ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"បើក​វីដេអូ​"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"បិទ​វីដេអូ"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ប្ដូរ​វីដេអូ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ឧបករណ៍​បំពង​សំឡេង"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"សំឡេង"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-kn/strings.xml b/java/com/android/incallui/commontheme/res/values-kn/strings.xml
index 59186e0..685ef64 100644
--- a/java/com/android/incallui/commontheme/res/values-kn/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-kn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ಕರೆ ಅಂತ್ಯಗೊಳಿಸಿ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ವೀಡಿಯೊ ಆನ್"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ವೀಡಿಯೊ ಆಫ್"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ವೀಡಿಯೊ ಬದಲಾಯಿಸಿ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ಸ್ಪೀಕರ್‌"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ಶಬ್ದ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ko/strings.xml b/java/com/android/incallui/commontheme/res/values-ko/strings.xml
index 0a0e3c9..088746d 100644
--- a/java/com/android/incallui/commontheme/res/values-ko/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ko/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"통화 종료"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"동영상 켜짐"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"동영상 꺼짐"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"동영상 전환"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"스피커"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"소리"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ky/strings.xml b/java/com/android/incallui/commontheme/res/values-ky/strings.xml
index ac697e4..5dd4d0c 100644
--- a/java/com/android/incallui/commontheme/res/values-ky/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ky/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Чалууну бүтүрүү"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Видео күйүк"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Видео өчүк"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Видеону иштетүү/өчүрүү"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Катуу сүйлөткүч"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Добуш"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-lo/strings.xml b/java/com/android/incallui/commontheme/res/values-lo/strings.xml
index da2050a..2f0b94b 100644
--- a/java/com/android/incallui/commontheme/res/values-lo/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-lo/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ວາງສາຍ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ວິດີໂອເປີດ"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ວິດີໂອປິດ"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ສະຫຼັບວິດີໂອ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ລຳໂພງ"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ສຽງ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-lt/strings.xml b/java/com/android/incallui/commontheme/res/values-lt/strings.xml
index bda53d6..d0a5e0d 100644
--- a/java/com/android/incallui/commontheme/res/values-lt/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-lt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Baigti skambutį"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vaizdas įjungtas"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vaizdas išjungtas"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Sukeisti vaizdą"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Garsiakalbis"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Garsas"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-lv/strings.xml b/java/com/android/incallui/commontheme/res/values-lv/strings.xml
index beaf35c..443ac5e 100644
--- a/java/com/android/incallui/commontheme/res/values-lv/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-lv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Beigt zvanu"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video ieslēgts"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video izslēgts"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Mainīt video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Skaļrunis"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Skaņa"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-mk/strings.xml b/java/com/android/incallui/commontheme/res/values-mk/strings.xml
index 5b4f6d0..d9a339e 100644
--- a/java/com/android/incallui/commontheme/res/values-mk/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-mk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Завршете го повикот"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Видеото е вклучено"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Видеото е исклучено"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Заменете го видеото"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Звучник"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Звук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ml/strings.xml b/java/com/android/incallui/commontheme/res/values-ml/strings.xml
index 0242667..0f2d889 100644
--- a/java/com/android/incallui/commontheme/res/values-ml/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ml/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"കോള്‍ അവസാനിപ്പിക്കൂ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"വീഡിയോ ഓണാണ്"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"വീഡിയോ ഓഫാണ്"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"വീഡിയോ സ്വാപ്പുചെയ്യുക"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"സ്പീക്കർ"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ശബ്‌ദം"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-mn/strings.xml b/java/com/android/incallui/commontheme/res/values-mn/strings.xml
index cd286ed..3665fcf 100644
--- a/java/com/android/incallui/commontheme/res/values-mn/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-mn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Дуудлагыг таслах"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Видео идэвхтэй"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Видео идэвхгүй"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Видеог солих"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Чанга яригч"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Дуу"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-mr/strings.xml b/java/com/android/incallui/commontheme/res/values-mr/strings.xml
index 2c626ed..f749809 100644
--- a/java/com/android/incallui/commontheme/res/values-mr/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-mr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"कॉल समाप्त करा"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"व्हिडिओ चालू"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"व्हिडिओ बंद"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"व्हिडिओ बदला"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"स्पीकर"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ध्वनी"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ms/strings.xml b/java/com/android/incallui/commontheme/res/values-ms/strings.xml
index f6c358d..fb38fa9d 100644
--- a/java/com/android/incallui/commontheme/res/values-ms/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ms/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Tamatkan panggilan"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video dihidupkan"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video dimatikan"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Silih video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Pmbsr suara"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Bunyi"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-my/strings.xml b/java/com/android/incallui/commontheme/res/values-my/strings.xml
index 6b6614c..5b396be 100644
--- a/java/com/android/incallui/commontheme/res/values-my/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-my/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ခေါ်ဆိုမှုအပြီးသတ်ရန်"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ဗီဒီယိုဖွင့်ထားသည်"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ဗီဒီယိုပိတ်ထားသည်"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ဗီဒီယိုဖလှယ်ရန်"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"စပီကာ"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"အသံ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-nb/strings.xml b/java/com/android/incallui/commontheme/res/values-nb/strings.xml
index 4974411..506b15e 100644
--- a/java/com/android/incallui/commontheme/res/values-nb/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-nb/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Avslutt samtalen"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video på"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video av"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Bytt video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Høyttaler"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Lyd"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ne/strings.xml b/java/com/android/incallui/commontheme/res/values-ne/strings.xml
index 5cd91b3..fa9d87f 100644
--- a/java/com/android/incallui/commontheme/res/values-ne/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ne/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"कल अन्त्य गर्नुहोस्"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"सक्रिय भिडियो"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"निष्क्रिय भिडियो"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"भिडियो साट्नुहोस्"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"स्पिकर"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"आवाज"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-nl/strings.xml b/java/com/android/incallui/commontheme/res/values-nl/strings.xml
index d33d600..192c47b 100644
--- a/java/com/android/incallui/commontheme/res/values-nl/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-nl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Oproep beëindigen"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video aan"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video uit"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Video wisselen"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Luidspreker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Geluid"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-no/strings.xml b/java/com/android/incallui/commontheme/res/values-no/strings.xml
index 4974411..506b15e 100644
--- a/java/com/android/incallui/commontheme/res/values-no/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-no/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Avslutt samtalen"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video på"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video av"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Bytt video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Høyttaler"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Lyd"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-pa/strings.xml b/java/com/android/incallui/commontheme/res/values-pa/strings.xml
index 7e59e61..77ceb25 100644
--- a/java/com/android/incallui/commontheme/res/values-pa/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-pa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ਕਾਲ ਸਮਾਪਤ ਕਰੋ"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ਵੀਡੀਓ ਚਾਲੂ"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ਵੀਡੀਓ ਬੰਦ"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ਵੀਡੀਓ ਦੀ ਅਦਲਾ ਬਦਲੀ ਕਰੋ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ਸਪੀਕਰ"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ਧੁਨੀ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-pl/strings.xml b/java/com/android/incallui/commontheme/res/values-pl/strings.xml
index 4ab1d24..d9b037e 100644
--- a/java/com/android/incallui/commontheme/res/values-pl/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-pl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Zakończ połączenie"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Wideo włączone"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Wideo wyłączone"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Przełącz wideo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Głośnik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Dźwięk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-pt-rBR/strings.xml b/java/com/android/incallui/commontheme/res/values-pt-rBR/strings.xml
index 67f3674..2c1834e 100644
--- a/java/com/android/incallui/commontheme/res/values-pt-rBR/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-pt-rBR/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Encerrar chamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo ativado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desativado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Trocar vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Alto-falante"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Som"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-pt-rPT/strings.xml b/java/com/android/incallui/commontheme/res/values-pt-rPT/strings.xml
index 27c5649..f0c14d0 100644
--- a/java/com/android/incallui/commontheme/res/values-pt-rPT/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-pt-rPT/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Terminar chamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo ativado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desativado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Alternar vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altifalante"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Som"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-pt/strings.xml b/java/com/android/incallui/commontheme/res/values-pt/strings.xml
index 67f3674..2c1834e 100644
--- a/java/com/android/incallui/commontheme/res/values-pt/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-pt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Encerrar chamada"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vídeo ativado"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Vídeo desativado"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Trocar vídeo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Alto-falante"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Som"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ro/strings.xml b/java/com/android/incallui/commontheme/res/values-ro/strings.xml
index b7fec9a..f7c8f72 100644
--- a/java/com/android/incallui/commontheme/res/values-ro/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ro/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Încheiați apelul"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Imaginea video este activată"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Imaginea video este dezactivată"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Schimbați imaginea video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Difuzor"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sunet"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ru/strings.xml b/java/com/android/incallui/commontheme/res/values-ru/strings.xml
index 5d1807f..1853ad2 100644
--- a/java/com/android/incallui/commontheme/res/values-ru/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ru/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Завершить вызов"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Камера включена"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Камера выключена"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Включить/выключить камеру"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Динамик"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Звук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-si/strings.xml b/java/com/android/incallui/commontheme/res/values-si/strings.xml
index 0a0f35c..ae13cc4 100644
--- a/java/com/android/incallui/commontheme/res/values-si/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-si/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"ඇමතුම අවසන් කරන්න"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"වීඩියෝව ක්‍රියාත්මකයි"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"වීඩියෝව ක්‍රියාවිරහිතයි"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"වීඩියෝව මාරු කරන්න"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ස්පීකරය"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"හඬ"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sk/strings.xml b/java/com/android/incallui/commontheme/res/values-sk/strings.xml
index 97eabeb..cd9aa99 100644
--- a/java/com/android/incallui/commontheme/res/values-sk/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Ukončiť hovor"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video je zapnuté"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video je vypnuté"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Zameniť video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Reproduktor"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvuk"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sl/strings.xml b/java/com/android/incallui/commontheme/res/values-sl/strings.xml
index 46cf2e8..0aa6e69 100644
--- a/java/com/android/incallui/commontheme/res/values-sl/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Končaj klic"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Vklopi video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Izklopi video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Zamenjaj video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Zvočnik"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Zvok"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sq/strings.xml b/java/com/android/incallui/commontheme/res/values-sq/strings.xml
index 17ec081..b9c97d1 100644
--- a/java/com/android/incallui/commontheme/res/values-sq/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sq/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Mbylle telefonatën"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Videoja aktive"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Videoja joaktive"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Shkëmbe video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Altoparlanti"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Tingulli"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sr/strings.xml b/java/com/android/incallui/commontheme/res/values-sr/strings.xml
index 2928bc9..67586b7 100644
--- a/java/com/android/incallui/commontheme/res/values-sr/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Заврши позив"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Укључи видео"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Искључи видео"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Замени видео"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Звучник"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Звук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sv/strings.xml b/java/com/android/incallui/commontheme/res/values-sv/strings.xml
index 17b5d37..957a2f8 100644
--- a/java/com/android/incallui/commontheme/res/values-sv/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Avsluta samtal"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video på"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video av"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Byt video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Högtalare"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Ljud"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-sw/strings.xml b/java/com/android/incallui/commontheme/res/values-sw/strings.xml
index 165d576..8752c2d 100644
--- a/java/com/android/incallui/commontheme/res/values-sw/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-sw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Kata simu"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Washa video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Zima video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Badilisha video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Spika"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Sauti"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ta/strings.xml b/java/com/android/incallui/commontheme/res/values-ta/strings.xml
index fa2dfb2..69258d2 100644
--- a/java/com/android/incallui/commontheme/res/values-ta/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ta/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"அழைப்பைத் துண்டிக்கும்"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"வீடியோ இயக்கப்பட்டது"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"வீடியோ முடக்கப்பட்டது"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"வீடியோவிற்கு மாற்றும்"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ஸ்பீக்கர்"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ஒலி"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-te/strings.xml b/java/com/android/incallui/commontheme/res/values-te/strings.xml
index 3ce431c..9454e15 100644
--- a/java/com/android/incallui/commontheme/res/values-te/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-te/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"కాల్‌ను ముగిస్తుంది"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"వీడియో ఆన్‌లో ఉంది"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"వీడియో ఆఫ్‌లో ఉంది"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"వీడియోను మారుస్తుంది"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"స్పీకర్"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"ధ్వని"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-th/strings.xml b/java/com/android/incallui/commontheme/res/values-th/strings.xml
index 1fa145c..8235310 100644
--- a/java/com/android/incallui/commontheme/res/values-th/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-th/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"วางสาย"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"เปิดวิดีโอ"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ปิดวิดีโอ"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"สลับวิดีโอ"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"ลำโพง"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"เสียง"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-tl/strings.xml b/java/com/android/incallui/commontheme/res/values-tl/strings.xml
index a53e11c..f368e3a 100644
--- a/java/com/android/incallui/commontheme/res/values-tl/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-tl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Tapusin ang tawag"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Naka-on ang video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Naka-off ang video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Pagpalitin ang video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Speaker"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Tunog"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-tr/strings.xml b/java/com/android/incallui/commontheme/res/values-tr/strings.xml
index 0955273..cbf5502 100644
--- a/java/com/android/incallui/commontheme/res/values-tr/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-tr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Çağrıyı sonlandırın"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video açık"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video kapalı"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Videoyu değiştirin"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Hoparlör"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Ses"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-uk/strings.xml b/java/com/android/incallui/commontheme/res/values-uk/strings.xml
index e17e781..2bcd04c 100644
--- a/java/com/android/incallui/commontheme/res/values-uk/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-uk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Завершити виклик"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Відео ввімкнено"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Відео вимкнено"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Поміняти відео"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Динамік"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Звук"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-ur/strings.xml b/java/com/android/incallui/commontheme/res/values-ur/strings.xml
index 5082e9d..bd8cf68 100644
--- a/java/com/android/incallui/commontheme/res/values-ur/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-ur/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"کال ختم کریں"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"ویڈیو آن ہے"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"ویڈیو آف ہے"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"ویڈیو کا تبادلہ کریں"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"اسپیکر"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"آواز"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-uz/strings.xml b/java/com/android/incallui/commontheme/res/values-uz/strings.xml
index d349d3f..9bc995d 100644
--- a/java/com/android/incallui/commontheme/res/values-uz/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-uz/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Qo‘ng‘iroqni tugatish"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Video yoniq"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Video o‘chiq"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Videoni yoqish/ochirish"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Karnay"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Tovush"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-vi/strings.xml b/java/com/android/incallui/commontheme/res/values-vi/strings.xml
index 3bd39ae..caf8f34 100644
--- a/java/com/android/incallui/commontheme/res/values-vi/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-vi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Kết thúc cuộc gọi"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Bật video"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Tắt video"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Hoán đổi video"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Loa"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Âm báo"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-zh-rCN/strings.xml b/java/com/android/incallui/commontheme/res/values-zh-rCN/strings.xml
index 0f57120..4d8bda6 100644
--- a/java/com/android/incallui/commontheme/res/values-zh-rCN/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-zh-rCN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"结束通话"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"视频已开启"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"视频已关闭"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"切换视频"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"免提"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"音频路径"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-zh-rHK/strings.xml b/java/com/android/incallui/commontheme/res/values-zh-rHK/strings.xml
index a3809eb..175b3e6 100644
--- a/java/com/android/incallui/commontheme/res/values-zh-rHK/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-zh-rHK/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"結束通話"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"視像已開啟"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"視像已關閉"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"切換視像"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"喇叭"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"音效"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-zh-rTW/strings.xml b/java/com/android/incallui/commontheme/res/values-zh-rTW/strings.xml
index 983dddd..dee1b9c 100644
--- a/java/com/android/incallui/commontheme/res/values-zh-rTW/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-zh-rTW/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"結束通話"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"開啟視訊畫面"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"關閉視訊畫面"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"切換視訊畫面"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"擴音"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"音訊"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values-zu/strings.xml b/java/com/android/incallui/commontheme/res/values-zu/strings.xml
index 2dd2c89..9535962 100644
--- a/java/com/android/incallui/commontheme/res/values-zu/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values-zu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_content_description_end_call" msgid="8232796487777787200">"Qeda ikholi"</string>
@@ -15,4 +31,6 @@
     <string name="incall_content_description_video_on" msgid="899266487647420613">"Ividiyo ivuliwe"</string>
     <string name="incall_content_description_video_off" msgid="762985912616707076">"Ividiyo ivaliwe"</string>
     <string name="incall_content_description_swap_video" msgid="297943299827908998">"Shintsha ividiyo"</string>
+    <string name="incall_label_speaker" msgid="1814254833253409394">"Isipikha"</string>
+    <string name="incall_label_audio" msgid="5923781170533336820">"Umsindo"</string>
 </resources>
diff --git a/java/com/android/incallui/commontheme/res/values/strings.xml b/java/com/android/incallui/commontheme/res/values/strings.xml
index 6f346a3..94a8c90 100644
--- a/java/com/android/incallui/commontheme/res/values/strings.xml
+++ b/java/com/android/incallui/commontheme/res/values/strings.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
 <resources>
 
   <string name="incall_content_description_end_call">End call</string>
@@ -32,4 +47,11 @@
 
   <string name="incall_content_description_swap_video">Swap video</string>
 
+  <!-- Button shown during a phone to route audio from earpiece to speaker phone.
+     [CHAR LIMIT=12] -->
+  <string name="incall_label_speaker">Speaker</string>
+  <!-- Button shown during a phone to switch the audio route.
+     [CHAR LIMIT=12] -->
+  <string name="incall_label_audio">Sound</string>
+
 </resources>
diff --git a/java/com/android/incallui/contactgrid/BottomRow.java b/java/com/android/incallui/contactgrid/BottomRow.java
index 228c786..d0ff192 100644
--- a/java/com/android/incallui/contactgrid/BottomRow.java
+++ b/java/com/android/incallui/contactgrid/BottomRow.java
@@ -22,7 +22,6 @@
 import android.text.BidiFormatter;
 import android.text.TextDirectionHeuristics;
 import android.text.TextUtils;
-import com.android.contacts.common.compat.PhoneNumberUtilsCompat;
 import com.android.incallui.call.DialerCall.State;
 import com.android.incallui.incall.protocol.PrimaryCallState;
 import com.android.incallui.incall.protocol.PrimaryInfo;
@@ -137,7 +136,7 @@
   }
 
   private static CharSequence spanDisplayNumber(String displayNumber) {
-    return PhoneNumberUtilsCompat.createTtsSpannable(
+    return PhoneNumberUtils.createTtsSpannable(
         BidiFormatter.getInstance().unicodeWrap(displayNumber, TextDirectionHeuristics.LTR));
   }
 
diff --git a/java/com/android/incallui/contactgrid/ContactGridManager.java b/java/com/android/incallui/contactgrid/ContactGridManager.java
index 1322d58..502cc52 100644
--- a/java/com/android/incallui/contactgrid/ContactGridManager.java
+++ b/java/com/android/incallui/contactgrid/ContactGridManager.java
@@ -20,10 +20,8 @@
 import android.graphics.drawable.Animatable;
 import android.graphics.drawable.Drawable;
 import android.os.SystemClock;
-import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.support.v4.view.ViewCompat;
-import android.telecom.TelecomManager;
 import android.text.TextUtils;
 import android.view.View;
 import android.view.accessibility.AccessibilityEvent;
@@ -78,6 +76,7 @@
   private boolean hideAvatar;
   private boolean showAnonymousAvatar;
   private boolean middleRowVisible = true;
+  private boolean isTimerStarted;
 
   private PrimaryInfo primaryInfo = PrimaryInfo.createEmptyPrimaryInfo();
   private PrimaryCallState primaryCallState = PrimaryCallState.createEmptyPrimaryCallState();
@@ -105,6 +104,7 @@
 
     contactGridLayout = (View) contactNameTextView.getParent();
     letterTile = new LetterTileDrawable(context.getResources());
+    isTimerStarted = false;
   }
 
   public void show() {
@@ -213,7 +213,7 @@
    * </ul>
    */
   private void updateTopRow() {
-    TopRow.Info info = TopRow.getInfo(context, primaryCallState);
+    TopRow.Info info = TopRow.getInfo(context, primaryCallState, primaryInfo);
     if (TextUtils.isEmpty(info.label)) {
       // Use INVISIBLE here to prevent the rows below this one from moving up and down.
       statusTextView.setVisibility(View.INVISIBLE);
@@ -233,26 +233,6 @@
   }
 
   /**
-   * Returns the appropriate LetterTileDrawable.TYPE_ based on a given call state.
-   *
-   * <p>If no special state is detected, yields TYPE_DEFAULT.
-   */
-  private static @LetterTileDrawable.ContactType int getContactTypeForPrimaryCallState(
-      @NonNull PrimaryCallState callState, @NonNull PrimaryInfo primaryInfo) {
-    if (callState.isVoiceMailNumber) {
-      return LetterTileDrawable.TYPE_VOICEMAIL;
-    } else if (callState.isBusinessNumber) {
-      return LetterTileDrawable.TYPE_BUSINESS;
-    } else if (primaryInfo.numberPresentation == TelecomManager.PRESENTATION_RESTRICTED) {
-      return LetterTileDrawable.TYPE_GENERIC_AVATAR;
-    } else if (callState.isConference) {
-      return LetterTileDrawable.TYPE_CONFERENCE;
-    } else {
-      return LetterTileDrawable.TYPE_DEFAULT;
-    }
-  }
-
-  /**
    * Updates row 1. For example:
    *
    * <ul>
@@ -295,8 +275,12 @@
               primaryInfo.name,
               primaryInfo.contactInfoLookupKey,
               LetterTileDrawable.SHAPE_CIRCLE,
-              getContactTypeForPrimaryCallState(primaryCallState, primaryInfo));
-
+              LetterTileDrawable.getContactTypeFromPrimitives(
+                  primaryCallState.isVoiceMailNumber,
+                  primaryInfo.isSpam,
+                  primaryCallState.isBusinessNumber,
+                  primaryInfo.numberPresentation,
+                  primaryCallState.isConference));
           // By invalidating the avatarImageView we force a redraw of the letter tile.
           // This is required to properly display the updated letter tile iconography based on the
           // contact type, because the background drawable reference cached in the view, and the
@@ -363,15 +347,19 @@
     }
 
     if (info.isTimerVisible) {
-      bottomTextSwitcher.setDisplayedChild(1);
-      bottomTimerView.setBase(
-          primaryCallState.connectTimeMillis
-              - System.currentTimeMillis()
-              + SystemClock.elapsedRealtime());
-      bottomTimerView.start();
+      if (!isTimerStarted) {
+        bottomTextSwitcher.setDisplayedChild(1);
+        bottomTimerView.setBase(
+            primaryCallState.connectTimeMillis
+                - System.currentTimeMillis()
+                + SystemClock.elapsedRealtime());
+        bottomTimerView.start();
+        isTimerStarted = true;
+      }
     } else {
       bottomTextSwitcher.setDisplayedChild(0);
       bottomTimerView.stop();
+      isTimerStarted = false;
     }
   }
 }
diff --git a/java/com/android/incallui/contactgrid/TopRow.java b/java/com/android/incallui/contactgrid/TopRow.java
index 8c3d6b0..ab00357 100644
--- a/java/com/android/incallui/contactgrid/TopRow.java
+++ b/java/com/android/incallui/contactgrid/TopRow.java
@@ -19,10 +19,14 @@
 import android.content.Context;
 import android.graphics.drawable.Drawable;
 import android.support.annotation.Nullable;
+import android.telephony.PhoneNumberUtils;
+import android.text.BidiFormatter;
+import android.text.TextDirectionHeuristics;
 import android.text.TextUtils;
 import com.android.dialer.common.Assert;
 import com.android.incallui.call.DialerCall.State;
 import com.android.incallui.incall.protocol.PrimaryCallState;
+import com.android.incallui.incall.protocol.PrimaryInfo;
 import com.android.incallui.videotech.utils.SessionModificationState;
 import com.android.incallui.videotech.utils.VideoUtils;
 
@@ -55,7 +59,7 @@
 
   private TopRow() {}
 
-  public static Info getInfo(Context context, PrimaryCallState state) {
+  public static Info getInfo(Context context, PrimaryCallState state, PrimaryInfo primaryInfo) {
     CharSequence label = null;
     Drawable icon = state.connectionIcon;
     boolean labelIsSingleLine = true;
@@ -73,6 +77,11 @@
         labelIsSingleLine = false;
       } else {
         label = getLabelForIncoming(context, state);
+        // Show phone number if it's not displayed in name (center row) or location field (bottom
+        // row).
+        if (shouldShowNumber(primaryInfo)) {
+          label = TextUtils.concat(label, " ", spanDisplayNumber(primaryInfo.number));
+        }
       }
     } else if (VideoUtils.hasSentVideoUpgradeRequest(state.sessionModificationState)
         || VideoUtils.hasReceivedVideoUpgradeRequest(state.sessionModificationState)) {
@@ -85,6 +94,8 @@
       label = getLabelForDialing(context, state);
     } else if (state.state == State.ACTIVE && state.isRemotelyHeld) {
       label = context.getString(R.string.incall_remotely_held);
+    } else if (state.state == State.ACTIVE && shouldShowNumber(primaryInfo)) {
+      label = spanDisplayNumber(primaryInfo.number);
     } else {
       // Video calling...
       // [Wi-Fi icon] Starbucks Wi-Fi
@@ -94,9 +105,27 @@
     return new Info(label, icon, labelIsSingleLine);
   }
 
+  private static CharSequence spanDisplayNumber(String displayNumber) {
+    return PhoneNumberUtils.createTtsSpannable(
+        BidiFormatter.getInstance().unicodeWrap(displayNumber, TextDirectionHeuristics.LTR));
+  }
+
+  private static boolean shouldShowNumber(PrimaryInfo primaryInfo) {
+    if (primaryInfo.nameIsNumber) {
+      return false;
+    }
+    if (primaryInfo.location == null) {
+      return false;
+    }
+    if (TextUtils.isEmpty(primaryInfo.number)) {
+      return false;
+    }
+    return true;
+  }
+
   private static CharSequence getLabelForIncoming(Context context, PrimaryCallState state) {
     if (state.isVideoCall) {
-      return getLabelForIncomingVideo(context, state.isWifi);
+      return getLabelForIncomingVideo(context, state.sessionModificationState, state.isWifi);
     } else if (state.isWifi && !TextUtils.isEmpty(state.connectionLabel)) {
       return state.connectionLabel;
     } else if (isAccount(state)) {
@@ -108,11 +137,20 @@
     }
   }
 
-  private static CharSequence getLabelForIncomingVideo(Context context, boolean isWifi) {
-    if (isWifi) {
-      return context.getString(R.string.contact_grid_incoming_wifi_video_call);
+  private static CharSequence getLabelForIncomingVideo(
+      Context context, @SessionModificationState int sessionModificationState, boolean isWifi) {
+    if (sessionModificationState == SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST) {
+      if (isWifi) {
+        return context.getString(R.string.contact_grid_incoming_wifi_video_request);
+      } else {
+        return context.getString(R.string.contact_grid_incoming_video_request);
+      }
     } else {
-      return context.getString(R.string.contact_grid_incoming_video_call);
+      if (isWifi) {
+        return context.getString(R.string.contact_grid_incoming_wifi_video_call);
+      } else {
+        return context.getString(R.string.contact_grid_incoming_video_call);
+      }
     }
   }
 
@@ -154,7 +192,7 @@
       case SessionModificationState.UPGRADE_TO_VIDEO_REQUEST_TIMED_OUT:
         return context.getString(R.string.incall_video_call_request_timed_out);
       case SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST:
-        return getLabelForIncomingVideo(context, state.isWifi);
+        return getLabelForIncomingVideo(context, state.sessionModificationState, state.isWifi);
       case SessionModificationState.NO_REQUEST:
       default:
         Assert.fail();
diff --git a/java/com/android/incallui/contactgrid/res/values-af/strings.xml b/java/com/android/incallui/contactgrid/res/values-af/strings.xml
index 95ec39b..75a8bf3 100644
--- a/java/com/android/incallui/contactgrid/res/values-af/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-af/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Bel via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Hou aan"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video-oproep vanaf"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-video-oproep vanaf"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Versoekvorm vir video-opgradering"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Versoekvorm vir Wi-Fi-video-opgradering"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Oproep vanaf"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Werkoproep vanaf"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Inkomend via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-am/strings.xml b/java/com/android/incallui/contactgrid/res/values-am/strings.xml
index d8060c9..3d11f73 100644
--- a/java/com/android/incallui/contactgrid/res/values-am/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-am/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"በ<xliff:g id="PROVIDER_NAME">%s</xliff:g> በኩል በመደወል ላይ"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ያዝና ቆይ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ቪዲዮ ጥሪ ከ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi ቪዲዮ ጥሪ ከ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"የቪዲዮ ማሻሻል ጥያቄ ከ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"የWi-Fi ቪዲዮ ማሻሻል ጥያቄ ከ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ጥሪ ከ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"የሥራ ጥሪ ከ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"በ<xliff:g id="PROVIDER_NAME">%s</xliff:g> በኩል የገባ"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ar/strings.xml b/java/com/android/incallui/contactgrid/res/values-ar/strings.xml
index 30fd32c..cddd1ec 100644
--- a/java/com/android/incallui/contactgrid/res/values-ar/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ar/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"الاتصال عبر <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"معلقة"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"مكالمة فيديو من"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"‏مكالمة فيديو عبر Wi-Fi من"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"طلب ترقية الفيديو من"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"‏طلب ترقية فيديو Wi-Fi من"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"اتصال من"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"مكالمة عمل من"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"واردة عبر <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-az/strings.xml b/java/com/android/incallui/contactgrid/res/values-az/strings.xml
index 4fe79ee..8c1993d 100644
--- a/java/com/android/incallui/contactgrid/res/values-az/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-az/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> vasitəsilə zəng edilir"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Gözləmədə"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video zəng edən"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video zəng edən"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video təkmilləşdirilməsi üçün təklif"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi video təkmilləşdirilməsi üçün təklif"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Zəng edən"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"İş zəngi edən"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> vasitəsilə gələn"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/contactgrid/res/values-b+sr+Latn/strings.xml
index f1a938e..caa61bd 100644
--- a/java/com/android/incallui/contactgrid/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-b+sr+Latn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Pozivamo preko <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Na čekanju"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video poziv od"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video poziv od"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Zahtev za prelazak na video poziv od"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Zahtev za prelazak na video poziv preko Wi-Fi-ja od"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Poziv od"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Poslovni poziv od"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Dolazni poziv preko <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-be/strings.xml b/java/com/android/incallui/contactgrid/res/values-be/strings.xml
index aec3a31..51f7ea9 100644
--- a/java/com/android/incallui/contactgrid/res/values-be/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-be/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Званкі праз <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"На ўтрыманні"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Відэавыклік ад"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Відэавыклік праз Wi-Fi ад"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Запыт на абнаўленне да відэавыкліка ад"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Запыт на абнаўленне да відэавыкліка па Wi-Fi ад"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Выклік ад"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Рабочы выклік ад"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Уваходны выклік праз <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-bg/strings.xml b/java/com/android/incallui/contactgrid/res/values-bg/strings.xml
index f162e4c..4e313d4 100644
--- a/java/com/android/incallui/contactgrid/res/values-bg/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-bg/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Обаждане чрез <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Задържано"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видеообаждане от"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Видеообаждане по Wi-Fi от"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Заявка за преминаване към видеообаждане от"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Заявка за преминаване към видеообаждане през Wi-Fi от"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Обаждане от"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Служебно обаждане от"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Входящо обаждане чрез <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-bn/strings.xml b/java/com/android/incallui/contactgrid/res/values-bn/strings.xml
index 6d3a50c..8fce2e4 100644
--- a/java/com/android/incallui/contactgrid/res/values-bn/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-bn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> এর মাধ্যমে কল করা হচ্ছে"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"হোল্ডে রয়েছে"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"এর থেকে আগত ভিডিও কল"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"এর থেকে আগত Wi-Fi ভিডিও কল"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"এর থেকে ভিডিও আপগ্রেড করার অনুরোধ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"এর থেকে ওয়াই-ফাই ভিডিও আপগ্রেড করার অনুরোধ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"এর থেকে আগত কল"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"এর থেকে আগত কর্মক্ষেত্রের কল"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> এর মাধ্যমে আগত কল"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-bs/strings.xml b/java/com/android/incallui/contactgrid/res/values-bs/strings.xml
index 2587992..0d4dfb3 100644
--- a/java/com/android/incallui/contactgrid/res/values-bs/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-bs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Pozivanje putem mreže <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Na čekanju"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videopoziv od"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi videopoziv od"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Zahtjev za nadogradnju na videozapis od pozivaoca"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Zahtjev za nadogradnju na Wi-Fi videozapis od pozivaoca"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Poziv od"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Poslovni poziv od"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Dolazni poziv putem <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ca/strings.xml b/java/com/android/incallui/contactgrid/res/values-ca/strings.xml
index 07598a2..b4aa2dd 100644
--- a/java/com/android/incallui/contactgrid/res/values-ca/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ca/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"S\'està trucant amb <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videotrucada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videotrucada per Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Sol·licitud d\'actualització a videotrucada procedent de:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Sol·licitud d\'actualització a videotrucada per Wi-Fi procedent de:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Trucada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Trucada de feina de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Entrant via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-cs/strings.xml b/java/com/android/incallui/contactgrid/res/values-cs/strings.xml
index d27a028..b8698f0 100644
--- a/java/com/android/incallui/contactgrid/res/values-cs/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-cs/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Volání přes poskytovatele <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Podrženo"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Příchozí videohovor:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Příchozí videohovor přes Wi-Fi:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Žádost o upgrade na videohovor od uživatele"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Žádost o upgrade na videohovor přes Wi-Fi od uživatele"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Příchozí hovor:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Příchozí pracovní hovor:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Příchozí hovor přes poskytovatele <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-da/strings.xml b/java/com/android/incallui/contactgrid/res/values-da/strings.xml
index 555a2ac..71a651f 100644
--- a/java/com/android/incallui/contactgrid/res/values-da/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-da/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ringer via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"I venteposition"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videoopkald fra"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videoopkald fra"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Anmodning om opgradering til et videoopkald fra"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Anmodning om opgradering til et Wi-Fi-videoopkald fra"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Opkald fra"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Arbejdsopkald fra"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Indgående opkald via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-de/strings.xml b/java/com/android/incallui/contactgrid/res/values-de/strings.xml
index 3d3838c..d69e0f6 100644
--- a/java/com/android/incallui/contactgrid/res/values-de/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-de/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Anruf über <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Anruf wird gehalten"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videoanruf von"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"WLAN-Videoanruf von"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Anfrage für Upgrade auf Videoanruf von"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Anfrage für Upgrade auf Videoanruf über WLAN von"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Anruf von"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Geschäftlicher Anruf von"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Eingehender Anruf über <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-el/strings.xml b/java/com/android/incallui/contactgrid/res/values-el/strings.xml
index 337da7b..954e7b7 100644
--- a/java/com/android/incallui/contactgrid/res/values-el/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-el/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Κλήση μέσω <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Σε αναμονή"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Βιντεοκλήση από"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Βιντεοκλήση μέσω Wi-Fi από"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Αίτημα αναβάθμισης βίντεο από"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Αίτημα αναβάθμισης βίντεο Wi-Fi από"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Κλήση από"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Κλήση από το γραφείο από"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Εισερχόμενη κλήση μέσω <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-en-rAU/strings.xml b/java/com/android/incallui/contactgrid/res/values-en-rAU/strings.xml
index 3748db2..a1402ff 100644
--- a/java/com/android/incallui/contactgrid/res/values-en-rAU/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-en-rAU/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Calling via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"On hold"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video call from"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video call from"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video upgrade request from"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi video upgrade request from"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Call from"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Work call from"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Incoming via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-en-rGB/strings.xml b/java/com/android/incallui/contactgrid/res/values-en-rGB/strings.xml
index 3748db2..a1402ff 100644
--- a/java/com/android/incallui/contactgrid/res/values-en-rGB/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-en-rGB/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Calling via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"On hold"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video call from"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video call from"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video upgrade request from"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi video upgrade request from"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Call from"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Work call from"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Incoming via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-en-rIN/strings.xml b/java/com/android/incallui/contactgrid/res/values-en-rIN/strings.xml
index 3748db2..a1402ff 100644
--- a/java/com/android/incallui/contactgrid/res/values-en-rIN/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-en-rIN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Calling via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"On hold"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video call from"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video call from"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video upgrade request from"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi video upgrade request from"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Call from"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Work call from"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Incoming via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-es-rUS/strings.xml b/java/com/android/incallui/contactgrid/res/values-es-rUS/strings.xml
index fa56849..abb2b01 100644
--- a/java/com/android/incallui/contactgrid/res/values-es-rUS/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-es-rUS/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Llamada por medio de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videollamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videollamada con Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Actualización a video solicitada por"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Actualización a video con Wi-Fi solicitada por"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Llamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Llamada laboral de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Entrante por medio de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-es/strings.xml b/java/com/android/incallui/contactgrid/res/values-es/strings.xml
index 1d57f9c..ef7c457 100644
--- a/java/com/android/incallui/contactgrid/res/values-es/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-es/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Llamada a través de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videollamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videollamada por Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Solicitud de actualización de videollamada de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Solicitud de actualización de videollamada por Wi-Fi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Llamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Llamada de trabajo de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Recibida a través de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-et/strings.xml b/java/com/android/incallui/contactgrid/res/values-et/strings.xml
index 2d81062..b91f073 100644
--- a/java/com/android/incallui/contactgrid/res/values-et/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-et/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Kõne edastab <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Ootel"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videokõne kontaktilt"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"WiFi-videokõne kontaktilt"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video täiendamise taotlus:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"WiFi kaudu video täiendamise taotlus:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Kõne kontaktilt"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Töökõne kontaktilt"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Sissetulev kõne teenusepakkuja <xliff:g id="PROVIDER_NAME">%s</xliff:g> kaudu"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-eu/strings.xml b/java/com/android/incallui/contactgrid/res/values-eu/strings.xml
index f08347b..ba7995a 100644
--- a/java/com/android/incallui/contactgrid/res/values-eu/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-eu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> bidez deitzen"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Zain"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Bideo-deia:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi bidezko bideo-deia:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Bideo-dei bat egiteko eskaera bidali dizu erabiltzaile honek:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi bidezko bideo-dei bat egiteko eskaera bidali dizu erabiltzaile honek:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Deia:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Laneko deia:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> bidez jasotzen"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-fa/strings.xml b/java/com/android/incallui/contactgrid/res/values-fa/strings.xml
index 0dfc0f4..40873ca 100644
--- a/java/com/android/incallui/contactgrid/res/values-fa/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-fa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"تماس از طریق <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"درانتظار"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"تماس ویدئویی از"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"‏تماس ویدئویی Wi-Fi از"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"درخواست ارتقای تماس ویدیویی از"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"‏در خواست ارتقای تماس ویدیویی Wi-Fi از"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"تماس از"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"تماس کاری از"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"تماس‌های ورودی ازطریق <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-fi/strings.xml b/java/com/android/incallui/contactgrid/res/values-fi/strings.xml
index 00503bf..241fef5 100644
--- a/java/com/android/incallui/contactgrid/res/values-fi/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-fi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Käytetään operaattoria <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Pidossa"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videopuhelu henkilöltä"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videopuhelu henkilöltä"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Videoon siirtymispyyntö, jonka lähettäjä on"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi-videopuheluun siirtymispyyntö, jonka lähettäjän on"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Puhelu henkilöltä"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Työpuhelu henkilöltä"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Saapuva puhelu (<xliff:g id="PROVIDER_NAME">%s</xliff:g>)"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-fr-rCA/strings.xml b/java/com/android/incallui/contactgrid/res/values-fr-rCA/strings.xml
index ee0196d..3ffc1e9 100644
--- a/java/com/android/incallui/contactgrid/res/values-fr-rCA/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-fr-rCA/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Appel par <xliff:g id="PROVIDER_NAME">%s</xliff:g> en cours…"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En attente"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Appel vidéo de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Appel vidéo Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Demande de mise à niveau vidéo de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Demande de mise à niveau vidéo Wi-Fi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Appel de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Appel professionnel de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Appel entrant par <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-fr/strings.xml b/java/com/android/incallui/contactgrid/res/values-fr/strings.xml
index 9849ad6..0db6ae0 100644
--- a/java/com/android/incallui/contactgrid/res/values-fr/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-fr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Appel via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En attente"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Appel vidéo de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Appel vidéo Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Demande de passage en mode vidéo par"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Demande de passage en mode vidéo Wi-Fi par"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Appel de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Appel professionnel de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Appel entrant via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-gl/strings.xml b/java/com/android/incallui/contactgrid/res/values-gl/strings.xml
index c85f336..2970014 100644
--- a/java/com/android/incallui/contactgrid/res/values-gl/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-gl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Chamando a través de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"En espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videochamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videochamada por wifi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Solicitude de actualización a videochamada de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Solicitude de actualización a videochamada por wifi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Chamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Chamada de traballo de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Chamada entrante a través de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-gu/strings.xml b/java/com/android/incallui/contactgrid/res/values-gu/strings.xml
index 5179cc0..220bebe 100644
--- a/java/com/android/incallui/contactgrid/res/values-gu/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-gu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> મારફતે કૉલ કરી રહ્યાં છે"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"હોલ્ડ પર"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"આમના તરફથી વિડિઓ કૉલ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"આમના તરફથી Wi-Fi વિડિઓ કૉલ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"આમના તરફથી વિડિઓ અપગ્રેડની વિનંતી"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"આમના તરફથી Wi-Fi વિડિઓ અપગ્રેડની વિનંતી"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"આમના તરફથી કૉલ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"આમના તરફથી કાર્ય કૉલ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> મારફતે ઇનકમિંગ"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-hi/strings.xml b/java/com/android/incallui/contactgrid/res/values-hi/strings.xml
index dec7b62..da128b6 100644
--- a/java/com/android/incallui/contactgrid/res/values-hi/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-hi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> के माध्यम से कॉल किया जा रहा है"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"होल्ड पर"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"इससे वीडियो कॉल"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"इससे वाई-फ़ाई वीडियो कॉल"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"इसकी ओर से वीडियो में अपग्रेड करने का अनुरोध"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"इसकी ओर से वाई-फ़ाई वीडियो में अपग्रेड करने का अनुरोध"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"इससे कॉल"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"इससे कार्य संबंधी कॉल"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> की ओर से इनकमिंग"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-hr/strings.xml b/java/com/android/incallui/contactgrid/res/values-hr/strings.xml
index d7023ac..24429a2 100644
--- a/java/com/android/incallui/contactgrid/res/values-hr/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-hr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Pozivanje putem operatera <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Na čekanju"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videopoziv s broja"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videopoziv putem Wi-Fi veze s broja"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Video upgrade request from"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi video upgrade request from"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Poziv s broja"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Poslovni poziv s broja"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Dolazni pozivi putem davatelja <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-hu/strings.xml b/java/com/android/incallui/contactgrid/res/values-hu/strings.xml
index f7da923..600b69f 100644
--- a/java/com/android/incallui/contactgrid/res/values-hu/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-hu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Hívás a(z) <xliff:g id="PROVIDER_NAME">%s</xliff:g> szolgáltatón keresztül"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Várakoztatva"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videohívás a következőtől:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videohívás a következőtől:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Videófrissítési kérelem a következőtől"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi-videófrissítési kérelem a következőtől"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Hívás a következőtől:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Munkahelyi hívás a következőről:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Bejövő hívás a következőn keresztül: <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-hy/strings.xml b/java/com/android/incallui/contactgrid/res/values-hy/strings.xml
index 6384fa9..88a49eb 100644
--- a/java/com/android/incallui/contactgrid/res/values-hy/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-hy/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Զանգում է <xliff:g id="PROVIDER_NAME">%s</xliff:g>-ի միջոցով"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Սպասում"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Տեսազանգ հետևյալ բաժանորդից՝"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi տեսազանգ հետևյալ բաժանորդից՝"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Տեսազանգին անցնելու խնդրանք հետևյալ օգտատիրոջից՝"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi-ի միջոցով տեսազանգին անցնելու խնդրանք հետևյալ օգտատիրոջից՝"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Զանգ հետևյալ բաժանորդից՝"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Գործնական զանգ հետևյալ բաժանորդից՝"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Մուտքային զանգ <xliff:g id="PROVIDER_NAME">%s</xliff:g> ցանցից"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-in/strings.xml b/java/com/android/incallui/contactgrid/res/values-in/strings.xml
index 7556838..f673583 100644
--- a/java/com/android/incallui/contactgrid/res/values-in/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-in/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Menelepon melalui <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Ditangguhkan"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video call dari"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Video call Wi-Fi dari"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Permintaan upgrade video dari"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Permintaan upgrade video Wi-Fi dari"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Telepon dari"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Panggilan telepon kerja dari"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Masuk melalui <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-is/strings.xml b/java/com/android/incallui/contactgrid/res/values-is/strings.xml
index 86d577c..9e83031 100644
--- a/java/com/android/incallui/contactgrid/res/values-is/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-is/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Hringt í gegnum <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Í bið"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Myndsímtal berst frá"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi myndsímtal berst frá"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Beiðni um að uppfæra í myndsímtal frá"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Beiðni um að uppfæra í Wi-Fi myndsímtal frá"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Símtal berst frá"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Vinnusímtal berst frá"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Berst í gegnum <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-it/strings.xml b/java/com/android/incallui/contactgrid/res/values-it/strings.xml
index 9576a6d..76958cf 100644
--- a/java/com/android/incallui/contactgrid/res/values-it/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-it/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Chiamate tramite <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"In attesa"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videochiamata da"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videochiamata Wi-Fi da"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Upgrade della videochiamata richiesto da"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Upgrade della videochiamata Wi-Fi richiesto da"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Chiamata da"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Chiamata di lavoro da"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"In arrivo tramite <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-iw/strings.xml b/java/com/android/incallui/contactgrid/res/values-iw/strings.xml
index 62771d1..b06c321 100644
--- a/java/com/android/incallui/contactgrid/res/values-iw/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-iw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"שיחה באמצעות <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"בהמתנה"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"שיחת וידאו מאת"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"‏שיחת וידאו ב-Wi-Fi מאת"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"בקשה לשדרוג לשיחת וידאו מאת"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"‏בקשת לשדרוג לשיחת וידאו ברשת Wi-Fi מאת"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"שיחה מאת"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"שיחת עבודה מאת"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"שיחה נכנסת באמצעות <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ja/strings.xml b/java/com/android/incallui/contactgrid/res/values-ja/strings.xml
index a5d958c..a2fce09 100644
--- a/java/com/android/incallui/contactgrid/res/values-ja/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ja/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> で発信中"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"保留中"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ビデオハングアウトの着信"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi ビデオハングアウトの着信"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ビデオハングアウトへの変更リクエスト"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi ビデオハングアウトへの変更リクエスト"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"着信"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"仕事の通話の着信"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> から着信"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ka/strings.xml b/java/com/android/incallui/contactgrid/res/values-ka/strings.xml
index 7848f59..cb0094d 100644
--- a/java/com/android/incallui/contactgrid/res/values-ka/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ka/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"მიმდინარეობს დარეკვა <xliff:g id="PROVIDER_NAME">%s</xliff:g>-ის მეშვეობით"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"მოცდის რეჟიმში"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ვიდეოზარი აბონენტისგან"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi ვიდეოზარი აბონენტისგან"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ვიდეოზარზე გადასვლის მოთხოვნა კონტაქტისგან:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi ვიდეოზარზე გადასვლის მოთხოვნა კონტაქტისგან:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ზარი აბონენტისგან"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"სამსახურებრივი ზარი აბონენტისგან"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"შემომავალი, <xliff:g id="PROVIDER_NAME">%s</xliff:g>-იდან"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-kk/strings.xml b/java/com/android/incallui/contactgrid/res/values-kk/strings.xml
index aaf260b..3fc68c2 100644
--- a/java/com/android/incallui/contactgrid/res/values-kk/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-kk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> арқылы қоңырау шалу"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Күтуде"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Бейне қоңырау шалушы:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi бейне қоңырау шалушы:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Бейне қоңырауға ауысу өтініші:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi арқылы бейне қоңырауға ауысу өтініші:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Қоңырау шалушы:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Жұмыстан қоңырау шалушы:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> арқылы кіріс"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-km/strings.xml b/java/com/android/incallui/contactgrid/res/values-km/strings.xml
index b2bfc96..7ee21ba 100644
--- a/java/com/android/incallui/contactgrid/res/values-km/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-km/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"កំពុង​ហៅតាម <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"កំពុង​រង់ចាំ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ការ​ហៅ​ជា​វីដេអូ​ពី"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"ការ​ហៅ​ជា​វីដេអូ​តាម Wi-Fi ពី"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ស្នើ​ដំឡើង​កំណែ​វីដេអូ​ពី"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"ស្នើ​ដំឡើង​កំណែ​វីដេអូតាម Wi-Fi ពី"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ការ​ហៅ​ពី"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"ការ​ហៅ​ការងារ​ពី"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"ការ​ហៅ​ចូល​តាម <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-kn/strings.xml b/java/com/android/incallui/contactgrid/res/values-kn/strings.xml
index 0ee73ba..e90bd6b 100644
--- a/java/com/android/incallui/contactgrid/res/values-kn/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-kn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ಮೂಲಕ ಕರೆ ಮಾಡಲಾಗುತ್ತಿದೆ"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ಹೋಲ್ಡ್‌ ಮಾಡಲಾಗಿದೆ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ಇವರಿಂದ ವೀಡಿಯೊ ಕರೆ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"ಇವರಿಂದ ವೈ-ಫೈ ವೀಡಿಯೊ ಕರೆ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ಇದರಿಂದ ವೀಡಿಯೊ ಅಪ್‌ಗ್ರೇಡ್ ವಿನಂತಿ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"ಇದರಿಂದ ವೈಫೈ ವೀಡಿಯೊ ಅಪ್‌ಗ್ರೇಡ್ ವಿನಂತಿ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ಇವರಿಂದ ಕರೆ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"ಇವರಿಂದ ಕೆಲಸದ ಕರೆ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ಮೂಲಕ ಒಳಬರುತ್ತಿರುವ ಕರೆ"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ko/strings.xml b/java/com/android/incallui/contactgrid/res/values-ko/strings.xml
index a5a34e3..85dd613 100644
--- a/java/com/android/incallui/contactgrid/res/values-ko/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ko/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g>을(를) 통해 거는 전화"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"대기 중"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"화상 통화 발신:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi 화상 통화 발신:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"화상 통화로의 업그레이드를 요청한 사용자:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi 화상 통화로의 업그레이드를 요청한 사용자:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"통화 발신:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"업무 통화 발신:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g>을(를) 통해 걸려온 전화"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ky/strings.xml b/java/com/android/incallui/contactgrid/res/values-ky/strings.xml
index a020e70..6028022 100644
--- a/java/com/android/incallui/contactgrid/res/values-ky/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ky/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> аркылуу чалуу"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Күтүү режиминде"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видео чалуу"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi аркылуу видео чалуу:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Видеону кийинки версияга көтөрүү сурамы:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi аркылуу видеомаектешүү сурамы:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Чалып жатат:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Иш боюнча чалып жатат:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> аркылуу чалып жатат"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-lo/strings.xml b/java/com/android/incallui/contactgrid/res/values-lo/strings.xml
index 96c1dcf..6ad1178 100644
--- a/java/com/android/incallui/contactgrid/res/values-lo/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-lo/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"ກຳລັງໂທຜ່ານ <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ຖືສາຍລໍຖ້າ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ການໂທວິດີໂອຈາກ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi video call from"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ຄຳຮ້ອງອັບເກຣດວິດີໂອຈາກ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"ຄຳຮ້ອງອັບເກຣດວິດີໂອ Wi-Fi ຈາກ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ການໂທຈາກ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Work call from"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"ສາຍໂທເຂົ້າ​ຈາກ <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-lt/strings.xml b/java/com/android/incallui/contactgrid/res/values-lt/strings.xml
index e8e42fc..3cca55c 100644
--- a/java/com/android/incallui/contactgrid/res/values-lt/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-lt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Skambinama naudojantis „<xliff:g id="PROVIDER_NAME">%s</xliff:g>“ paslaugomis"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Sulaikytas"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Vaizdo skambutis nuo"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"„Wi-Fi“ vaizdo skambutis nuo"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Vaizdo skambučio naujovinimo užklausa nuo"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"„Wi-Fi“ vaizdo skambučio naujovinimo užklausa nuo"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Skambutis nuo"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Darbo skambutis nuo"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Gaunama per „<xliff:g id="PROVIDER_NAME">%s</xliff:g>“"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-lv/strings.xml b/java/com/android/incallui/contactgrid/res/values-lv/strings.xml
index 1b3823f..87e5c90 100644
--- a/java/com/android/incallui/contactgrid/res/values-lv/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-lv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Zvanu nodrošina <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Aizturēts"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videozvans no:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi videozvans no:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Videozvana jaunināšanas pieprasījums no:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi videozvana jaunināšanas pieprasījums no:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Zvans no:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Darba zvans no:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Ienākošie zvani, ko nodrošina <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-mk/strings.xml b/java/com/android/incallui/contactgrid/res/values-mk/strings.xml
index 1044683..fcab8f4 100644
--- a/java/com/android/incallui/contactgrid/res/values-mk/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-mk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Повикување преку <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"На чекање"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видеоповик од"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Видеоповик преку Wi-Fi од"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Барање за надградба на видеоповик од"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Барање за надградба на видеоповик преку Wi-Fi од"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Повик од"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Работен повик од"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Дојдовни повици преку <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ml/strings.xml b/java/com/android/incallui/contactgrid/res/values-ml/strings.xml
index 519e9f4..1dfb46a 100644
--- a/java/com/android/incallui/contactgrid/res/values-ml/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ml/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> മുഖേന വിളിക്കുന്നു"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ഹോള്‍ഡിലാണ്"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ഈ വ്യക്തിയിൽ നിന്നുള്ള വീഡിയോ കോൾ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"ഈ വ്യക്തിയിൽ നിന്നുള്ള Wi-Fi വീഡിയോ കോൾ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ഇനിപ്പറയുന്നതിൽ നിന്നുള്ള വീഡിയോ അപ്‌ഗ്രേഡ് അഭ്യർത്ഥന"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"ഇനിപ്പറയുന്നതിൽ നിന്നുള്ള Wi-Fi വീഡിയോ അപ്‌ഗ്രേഡ് അഭ്യർത്ഥന"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ഈ വ്യക്തിയിൽ നിന്നുള്ള കോൾ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"ഈ വ്യക്തിയിൽ നിന്നുള്ള ഔദ്യോഗിക കോൾ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> മുഖേനയുള്ള ഇൻകമിംഗ്"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-mn/strings.xml b/java/com/android/incallui/contactgrid/res/values-mn/strings.xml
index c87e071..c93bd46 100644
--- a/java/com/android/incallui/contactgrid/res/values-mn/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-mn/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g>-р залгаж байна"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Хүлээлгэнд байгаа"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видео дуудлага"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi видео дуудлага"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Видеог сайжруулах хүсэлт"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi видеог сайжруулах хүсэлт"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Дуудлага"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Ажлын дуудлага"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g>-р ирж байна"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-mr/strings.xml b/java/com/android/incallui/contactgrid/res/values-mr/strings.xml
index 6a01817..81d76dd 100644
--- a/java/com/android/incallui/contactgrid/res/values-mr/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-mr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> द्वारे कॉल करीत आहे"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"होल्ड वर"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"यावरून व्हिडिओ कॉल"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi व्हिडिओ कॉल"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"याकडून व्हिडिओ श्रेणीसुधारणेची विनंती"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"याकडून Wi-Fi व्हिडिओ श्रेणीसुधारणेची विनंती"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"यावरील कॉल"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"कडून कार्य कॉल"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> द्वारे येणारे"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ms/strings.xml b/java/com/android/incallui/contactgrid/res/values-ms/strings.xml
index 17ca753..815df79 100644
--- a/java/com/android/incallui/contactgrid/res/values-ms/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ms/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Memanggil melalui <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Panggilan ditahan"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Panggilan video daripada"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Panggilan video Wi-Fi daripada"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Permintaan peningkatan video daripada"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Permintaan peningkatan video Wi-Fi daripada"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Panggilan daripada"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Panggilan kerja daripada"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Panggilan masuk melalui <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-my/strings.xml b/java/com/android/incallui/contactgrid/res/values-my/strings.xml
index 14770cf..3c8a88e 100644
--- a/java/com/android/incallui/contactgrid/res/values-my/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-my/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> မှတစ်ဆင့် ခေါ်ဆိုနေသည်"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ဖုန်းကိုင်ထားသည်"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"အောက်ပါထံမှ ဗီဒီယိုခေါ်ဆိုမှု"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"အောက်ပါထံမှ Wi-Fi ဗီဒီယိုခေါ်ဆိုမှု"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"အောက်ပါထံမှ ဗီဒီယိုအဆင့်မြှင့်ခြင်းတောင်းဆိုချက်"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"အောက်ပါထံမှ Wi-Fi ဗီဒီယိုအဆင့်မြှင့်ခြင်းတောင်းဆိုချက်"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"အောက်ပါထံမှ ခေါ်ဆိုမှု"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"အောက်ပါထံမှ အလုပ်ခေါ်ဆိုမှု"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> မှတစ်ဆင့် အဝင်ခေါ်ဆိုမှု"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-nb/strings.xml b/java/com/android/incallui/contactgrid/res/values-nb/strings.xml
index fbf9895..9ad8d0d 100644
--- a/java/com/android/incallui/contactgrid/res/values-nb/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-nb/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ringer via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"På vent"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videoanrop fra"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videoanrop fra"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Forespørsel om videooppdatering fra"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Forespørsel om Wi-Fi-videooppdatering fra"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Anrop fra"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Jobbrelatert anrop fra"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Innkommende via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ne/strings.xml b/java/com/android/incallui/contactgrid/res/values-ne/strings.xml
index d618af4..e6e65c5 100644
--- a/java/com/android/incallui/contactgrid/res/values-ne/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ne/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> मार्फत कल गर्दै"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"होल्डमा छ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"निम्नबाट भिडियो कल आएको छ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"निम्नबाट Wi-Fi मार्फत गरिएको भिडियो कल आएको छ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"निम्नबाट आएको भिडियो अपग्रेडसम्बन्धी अनुरोध"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"निम्नबाट आएको Wi-Fi मार्फत भिडियो अपग्रेडसम्बन्धी अनुरोध"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"निम्नबाट कल आएको छ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"निम्नबाट कार्य सम्बन्धी कल आएको छ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> मार्फत गरिएको आगमन कल"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-nl/strings.xml b/java/com/android/incallui/contactgrid/res/values-nl/strings.xml
index 10dcd13..828a7a2 100644
--- a/java/com/android/incallui/contactgrid/res/values-nl/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-nl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Bellen via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"In de wacht"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videogesprek van"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wifi-videogesprek van"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Upgradeverzoek voor videogesprek van"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Upgradeverzoek voor wifi-videogesprek van"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Oproep van"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Zakelijke oproep van"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Inkomend via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-no/strings.xml b/java/com/android/incallui/contactgrid/res/values-no/strings.xml
index fbf9895..9ad8d0d 100644
--- a/java/com/android/incallui/contactgrid/res/values-no/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-no/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ringer via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"På vent"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videoanrop fra"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videoanrop fra"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Forespørsel om videooppdatering fra"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Forespørsel om Wi-Fi-videooppdatering fra"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Anrop fra"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Jobbrelatert anrop fra"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Innkommende via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-pa/strings.xml b/java/com/android/incallui/contactgrid/res/values-pa/strings.xml
index fb261d6..1d4801c 100644
--- a/java/com/android/incallui/contactgrid/res/values-pa/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-pa/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ਰਾਹੀਂ ਕਾਲ ਕੀਤੀ ਜਾ ਰਹੀ ਹੈ"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ਰੋਕ ਕੇ ਰੱਖੀ ਗਈ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ਇਸ ਤੋਂ ਵੀਡੀਓ ਕਾਲ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"ਇਸ ਤੋਂ Wi-Fi ਵੀਡੀਓ ਕਾਲ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ਇਸ ਤੋਂ ਵੀਡੀਓ ਅੱਪਗ੍ਰੇਡ ਬੇਨਤੀ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"ਇਸ ਤੋਂ Wi-Fi ਵੀਡੀਓ ਅੱਪਗ੍ਰੇਡ ਬੇਨਤੀ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"ਇਸ ਤੋਂ ਕਾਲ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"ਇਸ ਤੋਂ ਕੰਮ ਸਬੰਧੀ ਕਾਲ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ਰਾਹੀਂ ਇਨਕਮਿੰਗ"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-pl/strings.xml b/java/com/android/incallui/contactgrid/res/values-pl/strings.xml
index 998e49e..586f39e 100644
--- a/java/com/android/incallui/contactgrid/res/values-pl/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-pl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Dzwonię przez <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Oczekujące"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Rozmowa wideo z:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Rozmowa wideo przez Wi-Fi z:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Prośba o przejście na rozmowę wideo wysłana przez:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Prośba o przejście na rozmowę wideo przez Wi-Fi wysłana przez:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Połączenie z:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Połączenie służbowe z:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Przychodzące z sieci <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-pt-rBR/strings.xml b/java/com/android/incallui/contactgrid/res/values-pt-rBR/strings.xml
index 4365cba..a445cdf 100644
--- a/java/com/android/incallui/contactgrid/res/values-pt-rBR/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-pt-rBR/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ligando via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Em espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videochamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videochamada via Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Solicitação de upgrade de vídeo de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Solicitação de upgrade de vídeo por Wi-Fi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Chamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Chamada de trabalho de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Chamada de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-pt-rPT/strings.xml b/java/com/android/incallui/contactgrid/res/values-pt-rPT/strings.xml
index 55d3c26..ca07b3f 100644
--- a/java/com/android/incallui/contactgrid/res/values-pt-rPT/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-pt-rPT/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"A telefonar através de <xliff:g id="PROVIDER_NAME">%s</xliff:g>…"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Em espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videochamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videochamada a partir de rede Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Pedido de atualização para videochamada de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Pedido de atualização para videochamada por Wi-Fi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Chamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Chamada de trabalho de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Chamada recebida através de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-pt/strings.xml b/java/com/android/incallui/contactgrid/res/values-pt/strings.xml
index 4365cba..a445cdf 100644
--- a/java/com/android/incallui/contactgrid/res/values-pt/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-pt/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ligando via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Em espera"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videochamada de"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videochamada via Wi-Fi de"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Solicitação de upgrade de vídeo de"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Solicitação de upgrade de vídeo por Wi-Fi de"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Chamada de"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Chamada de trabalho de"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Chamada de <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ro/strings.xml b/java/com/android/incallui/contactgrid/res/values-ro/strings.xml
index f8d1c9b..180a01f 100644
--- a/java/com/android/incallui/contactgrid/res/values-ro/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ro/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Se apelează prin <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"În așteptare"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Apel video de la"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Apel video prin Wi-Fi de la"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Solicitare de upgrade la apel video de la"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Solicitare de upgrade la apel video prin Wi-Fi de la"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Apel primit de la"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Apel de serviciu de la"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Primite prin <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ru/strings.xml b/java/com/android/incallui/contactgrid/res/values-ru/strings.xml
index dfbc088..e0a6351 100644
--- a/java/com/android/incallui/contactgrid/res/values-ru/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ru/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Вызов через <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"На удержании"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видеовызов от"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Видеовызов по Wi-Fi от"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Запрос на переход к видеовстрече от:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Запрос на переход к видеовстрече через Wi-Fi от:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Вызов от"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Рабочий вызов от"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Входящий вызов (оператор: <xliff:g id="PROVIDER_NAME">%s</xliff:g>)"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-si/strings.xml b/java/com/android/incallui/contactgrid/res/values-si/strings.xml
index 00ca2aa..451dc39 100644
--- a/java/com/android/incallui/contactgrid/res/values-si/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-si/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> හරහා අමතමින්"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"රඳවා ගත්"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"වෙතින් වීඩියෝ ඇමතුම"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"වෙතින් Wi-Fi වීඩියෝ ඇමතුම"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"වෙතින් වීඩියෝ උත්ශ්‍රේණි කිරීමේ ඉල්ලීම"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"වෙතින් Wi-Fi වීඩියෝ උත්ශ්‍රේණි කිරීමේ ඉල්ලීම"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"වෙතින් ඇමතුම"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"වෙතින් කාර්යාල ඇමතුම"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> හරහා එන"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sk/strings.xml b/java/com/android/incallui/contactgrid/res/values-sk/strings.xml
index 40039ee..ae21ec8 100644
--- a/java/com/android/incallui/contactgrid/res/values-sk/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Voláte prostredníctvom poskytovateľa <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Podržané"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videohovor od:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videohovor cez Wi-Fi od:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Žiadosť o inováciu na videohovor od používateľa"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Žiadosť o inováciu na videohovor cez Wi-Fi od používateľa"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Hovor od:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Pracovný hovor od:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Prichádzajúci hovor prostredníctvom poskytovateľa <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sl/strings.xml b/java/com/android/incallui/contactgrid/res/values-sl/strings.xml
index f76b5cd..1d93d21 100644
--- a/java/com/android/incallui/contactgrid/res/values-sl/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Klicanje prek ponudnika <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Zadržano"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videoklic osebe"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Videoklic prek omrežja Wi-Fi osebe"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Zahteva za nadgradnjo v video – zahteva osebe"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Zahteva za nadgradnjo v video prek omrežja Wi-Fi – zahteva osebe"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Klic osebe"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Delovni klic osebe"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Dohodni klic prek storitve <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sq/strings.xml b/java/com/android/incallui/contactgrid/res/values-sq/strings.xml
index 34ec2d1..8c28eb7 100644
--- a/java/com/android/incallui/contactgrid/res/values-sq/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sq/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Telefonatë nëpërmjet <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Në pritje"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Telefonatë me video nga"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Telefonatë me video në Wi-Fi nga"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Kërkesë për përmirësimin me video nga"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Kërkesë për përmirësimin me video me Wi-Fi nga"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Telefonatë nga"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Telefonatë pune nga"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Telefonatë hyrëse nëpërmjet <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sr/strings.xml b/java/com/android/incallui/contactgrid/res/values-sr/strings.xml
index 9ad1499..66ea45d 100644
--- a/java/com/android/incallui/contactgrid/res/values-sr/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Позивамо преко <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"На чекању"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Видео позив од"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi видео позив од"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Захтев за прелазак на видео позив од"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Захтев за прелазак на видео позив преко Wi-Fi-ја од"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Позив од"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Пословни позив од"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Долазни позив преко <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sv/strings.xml b/java/com/android/incallui/contactgrid/res/values-sv/strings.xml
index d5dd159..931d9c9 100644
--- a/java/com/android/incallui/contactgrid/res/values-sv/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sv/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ringer med <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Parkerat"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Videosamtal från"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi-videosamtal från"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Begäran om videouppgradering från"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Begäran om uppgradering av Wi-Fi-video från"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Samtal från"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Jobbsamtal från"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Inkommande via <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-sw/strings.xml b/java/com/android/incallui/contactgrid/res/values-sw/strings.xml
index 72bc26f..581d797 100644
--- a/java/com/android/incallui/contactgrid/res/values-sw/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-sw/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Inapiga simu kupitia <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Imesitishwa"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Simu ya video kutoka kwa"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Simu ya video kupitia Wi-Fi kutoka kwa"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Umetumiwa ombi ili ubadilishe utumie simu ya video na"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Umetumiwa ombi ili ubadilishe utumie simu ya video kwenye Wi-Fi na"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Simu kutoka kwa"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Simu ya kazi kutoka kwa"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Simu zinazoingia kupitia <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ta/strings.xml b/java/com/android/incallui/contactgrid/res/values-ta/strings.xml
index 2f5b1b8..37ff876 100644
--- a/java/com/android/incallui/contactgrid/res/values-ta/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ta/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> வழியாக அழைக்கிறது"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ஹோல்டில் உள்ளது"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"வீடியோ அழைப்பு:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"வைஃபை வீடியோ அழைப்பு:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"வீடியோவை மேம்படுத்துவதற்கான கோரிக்கை:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"வைஃபையில் வீடியோவை மேம்படுத்துவதற்கான கோரிக்கை:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"அழைப்பு:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"அழைப்பு (பணி) :"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> மூலம் உள்வரும் அழைப்பு"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-te/strings.xml b/java/com/android/incallui/contactgrid/res/values-te/strings.xml
index 52038db..913c944 100644
--- a/java/com/android/incallui/contactgrid/res/values-te/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-te/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ద్వారా కాల్ చేస్తోంది"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"హోల్డ్‌లో ఉంది"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"వీరి నుండి వీడియో కాల్:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"వీరి నుండి Wi-Fi వీడియో కాల్:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"వీరి నుండి వీడియో అప్‌గ్రేడ్ అభ్యర్థన"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"వీరి నుండి Wi-Fi వీడియో అప్‌గ్రేడ్ అభ్యర్థన"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"వీరి నుండి కాల్:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"వీరి నుండి కార్యాలయ కాల్:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> ద్వారా ఇన్‌కమింగ్ కాల్"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-th/strings.xml b/java/com/android/incallui/contactgrid/res/values-th/strings.xml
index 419db19..6503959 100644
--- a/java/com/android/incallui/contactgrid/res/values-th/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-th/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"โทรผ่าน <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"พักสาย"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"แฮงเอาท์วิดีโอจาก"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"แฮงเอาท์วิดีโอผ่าน Wi-Fi จาก"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"คำขออัปเกรดวิดีโอจาก"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"คำขออัปเกรดวิดีโอผ่าน Wi-Fi จาก"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"โทรจาก"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"โทรเรื่องงานจาก"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"สายเรียกเข้าผ่าน <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-tl/strings.xml b/java/com/android/incallui/contactgrid/res/values-tl/strings.xml
index 282ec10..7fa063b 100644
--- a/java/com/android/incallui/contactgrid/res/values-tl/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-tl/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Tumatawag sa pamamagitan ng <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Naka-hold"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Video call mula kay"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi na video call mula kay"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Kahilingan upang i-upgrade ang video mula kay"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Kahilingan upang i-upgrade ang video gamit ang Wi-Fi mula kay"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Tawag mula kay"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Tawag sa trabaho mula kay"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Papasok sa pamamagitan ng <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-tr/strings.xml b/java/com/android/incallui/contactgrid/res/values-tr/strings.xml
index 5ecbf35..1ce565d 100644
--- a/java/com/android/incallui/contactgrid/res/values-tr/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-tr/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> üzerinden çağrı yapılıyor"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Beklemede"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Gelen video görüşmesi isteği:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Gelen kablosuz video görüşmesi isteği:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Görüntülü görüşmeye geçme isteği alındı:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Kablosuz görüntülü görüşmeye geçme isteği alındı:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Gelen çağrı:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Gelen iş çağrısı:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> adlı sağlayıcı üzerinden gelen çağrı"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-uk/strings.xml b/java/com/android/incallui/contactgrid/res/values-uk/strings.xml
index 7b84fb6..0d4a595 100644
--- a/java/com/android/incallui/contactgrid/res/values-uk/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-uk/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Виклик здійснюється через оператора <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Утримується"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Відеодзвінок від:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Відеодзвінок через Wi-Fi від:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Запит на відеодзвінок від користувача"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Запит на відеодзвінок через Wi-Fi від користувача"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Виклик від:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Виклик на робочий телефон від:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Вхідні виклики через оператора <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-ur/strings.xml b/java/com/android/incallui/contactgrid/res/values-ur/strings.xml
index 6584181..793e487 100644
--- a/java/com/android/incallui/contactgrid/res/values-ur/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-ur/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"کالنگ بذریعہ <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"ہولڈ پر ہے"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"ویڈیو کال منجانب"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"‏Wi-Fi ویڈیو کال منجانب"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"ویڈیو اپ گریڈ کی درخواست منجانب"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"‏Wi-Fi ویڈیو اپ گریڈ کی درخواست منجانب"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"کال منجانب"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"دفتری کال منجانب"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> کے ذریعے آنے والی کال"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-uz/strings.xml b/java/com/android/incallui/contactgrid/res/values-uz/strings.xml
index db11a18..a5ce1ca 100644
--- a/java/com/android/incallui/contactgrid/res/values-uz/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-uz/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"<xliff:g id="PROVIDER_NAME">%s</xliff:g> orqali qo‘ng‘rioq qilinmoqda"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Kutish rejimida"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Kimdan video qo‘ng‘iroq:"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi orqali kimdan video qo‘ng‘iroq:"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Bu foydalanuvchi video suhbatga o‘tishni so‘ramoqda:"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Bu foydalanuvchi Wi-Fi orqali video suhbatga o‘tishni so‘ramoqda:"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Kimdan qo‘ng‘iroq:"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Ish telefoniga kimdan qo‘ng‘iroq:"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Kiruvchi qo‘ng‘iroq (operator: <xliff:g id="PROVIDER_NAME">%s</xliff:g>)"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-vi/strings.xml b/java/com/android/incallui/contactgrid/res/values-vi/strings.xml
index 340a115..9ce0f18 100644
--- a/java/com/android/incallui/contactgrid/res/values-vi/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-vi/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Đang gọi điện qua <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Đang chờ"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Cuộc gọi điện video từ"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Cuộc gọi điện video qua Wi-Fi từ"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Yêu cầu nâng cấp video từ"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Yêu cầu nâng cấp video Wi-Fi từ"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Cuộc gọi từ"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Cuộc gọi về công việc từ"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Cuộc gọi đến qua <xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-zh-rCN/strings.xml b/java/com/android/incallui/contactgrid/res/values-zh-rCN/strings.xml
index 16031b8..af5008a 100644
--- a/java/com/android/incallui/contactgrid/res/values-zh-rCN/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-zh-rCN/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"正在通过<xliff:g id="PROVIDER_NAME">%s</xliff:g>进行通话"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"保持"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"视频通话来自："</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"WLAN 视频通话来自："</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"视频通话升级请求来自："</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"WLAN 视频通话升级请求来自："</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"通话来自："</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"工作通话来自："</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"有人通过 <xliff:g id="PROVIDER_NAME">%s</xliff:g> 来电"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-zh-rHK/strings.xml b/java/com/android/incallui/contactgrid/res/values-zh-rHK/strings.xml
index 14a4441..9f47481 100644
--- a/java/com/android/incallui/contactgrid/res/values-zh-rHK/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-zh-rHK/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"正在透過 <xliff:g id="PROVIDER_NAME">%s</xliff:g> 撥號"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"保留"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"視像通話來自"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi 視像通話來自"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"視像升級要求來自"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi 視像升級要求來自"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"通話來自"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"工作通話來自"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"透過 <xliff:g id="PROVIDER_NAME">%s</xliff:g> 的來電"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-zh-rTW/strings.xml b/java/com/android/incallui/contactgrid/res/values-zh-rTW/strings.xml
index bdee41e..563bb28 100644
--- a/java/com/android/incallui/contactgrid/res/values-zh-rTW/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-zh-rTW/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"正在透過 <xliff:g id="PROVIDER_NAME">%s</xliff:g> 撥號"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"保留中"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"視訊通話來電："</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Wi-Fi 視訊通話來電："</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"視訊升級要求，來自："</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Wi-Fi 視訊升級要求，來自："</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"語音來電："</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"公司來電："</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"有人透過 <xliff:g id="PROVIDER_NAME">%s</xliff:g> 來電"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values-zu/strings.xml b/java/com/android/incallui/contactgrid/res/values-zu/strings.xml
index 150d5cc..19951cc 100644
--- a/java/com/android/incallui/contactgrid/res/values-zu/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values-zu/strings.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_calling_via_template" msgid="3416867359475780924">"Ishaya ucingo nge-<xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
@@ -14,6 +30,8 @@
     <string name="incall_remotely_held" msgid="8561379039177396615">"Ibambile"</string>
     <string name="contact_grid_incoming_video_call" msgid="4935122585117803710">"Ikholi yevidiyo kusukela ku-"</string>
     <string name="contact_grid_incoming_wifi_video_call" msgid="5938822096623593533">"Ikholi yevidiyo ye-Wi-Fi kusukela ku-"</string>
+    <string name="contact_grid_incoming_video_request" msgid="7488892854791471116">"Isicelo sokuthuthukiswa kwevidiyo kusukela"</string>
+    <string name="contact_grid_incoming_wifi_video_request" msgid="4516902096577976768">"Isicelo sokuthuthukiswa kwevidiyo ye-Wi-Fi kusukela"</string>
     <string name="contact_grid_incoming_voice_call" msgid="7165853925114955346">"Ikholi esuka ku-"</string>
     <string name="contact_grid_incoming_work_call" msgid="837605505036615004">"Ikholi yomsebenzi kusukela ku-"</string>
     <string name="contact_grid_incoming_via_template" msgid="7747391077955623969">"Ingena nge-<xliff:g id="PROVIDER_NAME">%s</xliff:g>"</string>
diff --git a/java/com/android/incallui/contactgrid/res/values/strings.xml b/java/com/android/incallui/contactgrid/res/values/strings.xml
index 385f843..5a9272c 100644
--- a/java/com/android/incallui/contactgrid/res/values/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values/strings.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2016 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
 <resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
 
   <!-- Title displayed in the overlay for outgoing calls which include the name of the provider.
@@ -50,6 +65,12 @@
   <!-- Displayed in the answer call screen for incoming video calls over Wi-F. -->
   <string name="contact_grid_incoming_wifi_video_call">Wi-Fi video call from</string>
 
+  <!-- Displayed in the answer call screen for incoming requests to upgrade to a video call. -->
+  <string name="contact_grid_incoming_video_request">Video upgrade request from</string>
+
+  <!-- Displayed in the answer call screen for incoming requests to upgrade to a video call over Wi-F. -->
+  <string name="contact_grid_incoming_wifi_video_request">Wi-Fi video upgrade request from</string>
+
   <!-- Displayed in the answer call screen for incoming voice calls. -->
   <string name="contact_grid_incoming_voice_call">Call from</string>
 
diff --git a/java/com/android/incallui/incall/impl/ButtonChooserFactory.java b/java/com/android/incallui/incall/impl/ButtonChooserFactory.java
index 0dcfdb5..99364e2 100644
--- a/java/com/android/incallui/incall/impl/ButtonChooserFactory.java
+++ b/java/com/android/incallui/incall/impl/ButtonChooserFactory.java
@@ -83,11 +83,18 @@
     mapping.put(
         InCallButtonIds.BUTTON_SWITCH_TO_SECONDARY, MappingInfo.builder(4).setSlotOrder(0).build());
     mapping.put(
-        InCallButtonIds.BUTTON_MANAGE_VOICE_CONFERENCE,
-        MappingInfo.builder(4).setSlotOrder(5).build());
-    mapping.put(
         InCallButtonIds.BUTTON_UPGRADE_TO_VIDEO, MappingInfo.builder(4).setSlotOrder(10).build());
-    mapping.put(InCallButtonIds.BUTTON_HOLD, MappingInfo.builder(5).setSlotOrder(0).build());
+
+    /*
+     * Unlike the other configurations, MANAGE_VOICE_CONFERENCE shares a spot with HOLD for GSM.
+     * On GSM, pressing hold while there's a background call just swaps to the background call. It
+     * doesn't make sense to show both SWITCH_TO_SECONDARY and HOLD when they do the same thing, so
+     * we show MANAGE_VOICE_CONFERENCE instead. Previously MANAGE_VOICE_CONFERENCE would not show.
+     */
+    mapping.put(
+        InCallButtonIds.BUTTON_MANAGE_VOICE_CONFERENCE,
+        MappingInfo.builder(5).setSlotOrder(0).build());
+    mapping.put(InCallButtonIds.BUTTON_HOLD, MappingInfo.builder(5).setSlotOrder(5).build());
 
     return new ButtonChooser(new MappedButtonConfig(mapping));
   }
diff --git a/java/com/android/incallui/incall/impl/ButtonController.java b/java/com/android/incallui/incall/impl/ButtonController.java
index 8c11364..b7a47f0 100644
--- a/java/com/android/incallui/incall/impl/ButtonController.java
+++ b/java/com/android/incallui/incall/impl/ButtonController.java
@@ -29,6 +29,8 @@
 import com.android.incallui.incall.protocol.InCallButtonIds;
 import com.android.incallui.incall.protocol.InCallButtonUiDelegate;
 import com.android.incallui.incall.protocol.InCallScreenDelegate;
+import com.android.incallui.speakerbuttonlogic.SpeakerButtonInfo;
+import com.android.incallui.speakerbuttonlogic.SpeakerButtonInfo.IconSize;
 
 /** Manages a single button. */
 interface ButtonController {
@@ -376,36 +378,13 @@
     }
 
     public void setAudioState(CallAudioState audioState) {
-      @StringRes int contentDescriptionResId;
-      if ((audioState.getSupportedRouteMask() & CallAudioState.ROUTE_BLUETOOTH)
-          == CallAudioState.ROUTE_BLUETOOTH) {
-        checkable = false;
-        isChecked = false;
-        label = R.string.incall_label_audio;
+      SpeakerButtonInfo info = new SpeakerButtonInfo(audioState, IconSize.SIZE_36_DP);
 
-        if ((audioState.getRoute() & CallAudioState.ROUTE_BLUETOOTH)
-            == CallAudioState.ROUTE_BLUETOOTH) {
-          icon = R.drawable.quantum_ic_bluetooth_audio_white_36;
-          contentDescriptionResId = R.string.incall_content_description_bluetooth;
-        } else if ((audioState.getRoute() & CallAudioState.ROUTE_SPEAKER)
-            == CallAudioState.ROUTE_SPEAKER) {
-          icon = R.drawable.quantum_ic_volume_up_white_36;
-          contentDescriptionResId = R.string.incall_content_description_speaker;
-        } else if ((audioState.getRoute() & CallAudioState.ROUTE_WIRED_HEADSET)
-            == CallAudioState.ROUTE_WIRED_HEADSET) {
-          icon = R.drawable.quantum_ic_headset_white_36;
-          contentDescriptionResId = R.string.incall_content_description_headset;
-        } else {
-          icon = R.drawable.ic_phone_audio_white_36dp;
-          contentDescriptionResId = R.string.incall_content_description_earpiece;
-        }
-      } else {
-        checkable = true;
-        isChecked = audioState.getRoute() == CallAudioState.ROUTE_SPEAKER;
-        label = R.string.incall_label_speaker;
-        icon = R.drawable.quantum_ic_volume_up_white_36;
-        contentDescriptionResId = R.string.incall_content_description_speaker;
-      }
+      checkable = info.checkable;
+      isChecked = info.isChecked;
+      label = info.label;
+      icon = info.icon;
+      @StringRes int contentDescriptionResId = info.contentDescription;
 
       contentDescription = delegate.getContext().getText(contentDescriptionResId);
       checkedContentDescription =
diff --git a/java/com/android/incallui/incall/impl/InCallFragment.java b/java/com/android/incallui/incall/impl/InCallFragment.java
index c5d7532..e102ee0 100644
--- a/java/com/android/incallui/incall/impl/InCallFragment.java
+++ b/java/com/android/incallui/incall/impl/InCallFragment.java
@@ -42,6 +42,7 @@
 import com.android.dialer.common.FragmentUtils;
 import com.android.dialer.common.LogUtil;
 import com.android.dialer.multimedia.MultimediaData;
+import com.android.dialer.widget.LockableViewPager;
 import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment;
 import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment.AudioRouteSelectorPresenter;
 import com.android.incallui.contactgrid.ContactGridManager;
@@ -473,6 +474,9 @@
     inCallButtonUiDelegate.setAudioRoute(audioRoute);
   }
 
+  @Override
+  public void onAudioRouteSelectorDismiss() {}
+
   @NonNull
   @Override
   public ButtonController getButtonController(@InCallButtonIds int id) {
diff --git a/java/com/android/incallui/incall/impl/InCallPagerAdapter.java b/java/com/android/incallui/incall/impl/InCallPagerAdapter.java
index 0b1088d..bc0c616 100644
--- a/java/com/android/incallui/incall/impl/InCallPagerAdapter.java
+++ b/java/com/android/incallui/incall/impl/InCallPagerAdapter.java
@@ -21,7 +21,6 @@
 import android.support.v4.app.FragmentManager;
 import android.support.v4.app.FragmentStatePagerAdapter;
 import android.support.v4.view.PagerAdapter;
-import android.text.TextUtils;
 import com.android.dialer.multimedia.MultimediaData;
 import com.android.incallui.sessiondata.MultimediaFragment;
 
@@ -47,8 +46,7 @@
 
   @Override
   public int getCount() {
-    if (attachments != null
-        && (!TextUtils.isEmpty(attachments.getText()) || attachments.hasImageData())) {
+    if (attachments != null && attachments.hasData()) {
       return 2;
     }
     return 1;
diff --git a/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml b/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml
index 4443141..c06f709 100644
--- a/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml
+++ b/java/com/android/incallui/incall/impl/res/layout/frag_incall_voice.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
 <FrameLayout
   xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:app="http://schemas.android.com/apk/res-auto"
@@ -62,7 +77,7 @@
         android:layout_height="match_parent"/>
     </LinearLayout>
 
-    <com.android.incallui.incall.impl.LockableViewPager
+    <com.android.dialer.widget.LockableViewPager
       android:id="@+id/incall_pager"
       android:layout_width="match_parent"
       android:layout_height="match_parent"
diff --git a/java/com/android/incallui/incall/impl/res/values-af/strings.xml b/java/com/android/incallui/incall/impl/res/values-af/strings.xml
index fd632fb..64529a5 100644
--- a/java/com/android/incallui/incall/impl/res/values-af/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-af/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video-oproep"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Hou aan"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Voeg oproep by"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Demp"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Beëindig oproep"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Sleutelblok"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Luidspreker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", is aan"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", is af"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Voeg saam"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Bestuur"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Bestuur bellers"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Verwissel"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Klank"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota is gestuur"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-am/strings.xml b/java/com/android/incallui/incall/impl/res/values-am/strings.xml
index 9dfd0e6..66a3868 100644
--- a/java/com/android/incallui/incall/impl/res/values-am/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-am/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"የቪዲዮ ጥሪ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ይዘህ ቆይ"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ጥሪ ያክሉ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ድምፀ-ከል አድርግ"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ጥሪ ጨርስ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ቁልፍ ሰሌዳ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"የድምጽ ማጉያ"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"፣ በርቷል"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"፣ ጠፍቷል"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"አዋህድ"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"አስተዳድር"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ደዋዮችን ያስተዳድሩ"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"አገላብጥ"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ድምፅ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ማስታወሻ ተልኳል"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ar/strings.xml b/java/com/android/incallui/incall/impl/res/values-ar/strings.xml
index a5f448a..e4dbfe4 100644
--- a/java/com/android/incallui/incall/impl/res/values-ar/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ar/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"مكالمة فيديو"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"انتظار"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"إضافة مكالمة"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"كتم"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"إنهاء المكالمة"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"لوحة مفاتيح"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"مكبر الصوت"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"، مشغل"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"، غير مشغل"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"دمج"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"إدارة"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"إدارة المتصلين"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"تبديل"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"الصوت"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"تم إرسال الملاحظة"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-az/strings.xml b/java/com/android/incallui/incall/impl/res/values-az/strings.xml
index 5f1f8cb..9a1f7f8 100644
--- a/java/com/android/incallui/incall/impl/res/values-az/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-az/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video zəng"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Xətdə axlayın"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Zəng əlavə edin"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Susdurun"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Zəngi bitirin"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klaviatura"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Dinamik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", aktivdir"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", deaktivdir"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Birləşdir"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"İdarə edin"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Zəng edənləri idarə edin"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Dəyişdirin"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Səs"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Qeyd göndərildi"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/incall/impl/res/values-b+sr+Latn/strings.xml
index bff7ed0..02d6b7c 100644
--- a/java/com/android/incallui/incall/impl/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-b+sr+Latn/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video poziv"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Na čekanje"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Dodaj poziv"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Isključi zvuk"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Završi poziv"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastatura"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Zvučnik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", uključen"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", isključen"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Objedini"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Upravljaj"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Upravljajte pozivaocima"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Zameni"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvuk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Beleška je poslata"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-be/strings.xml b/java/com/android/incallui/incall/impl/res/values-be/strings.xml
index 394c7c8..45e1e10 100644
--- a/java/com/android/incallui/incall/impl/res/values-be/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-be/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Відэавыклік"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Утрымліваць"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Дадаць выклік"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Адключыць мікрафон"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Сконч. выкл."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Клавіятура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Вонк.дынамік"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", уключана"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", выключана"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Аб\'яднаць"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Кіраваць"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Кіраваць выклікаючымі абанентамі"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Пераключыць"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Гук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Нататка адпраўлена"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-bg/strings.xml b/java/com/android/incallui/incall/impl/res/values-bg/strings.xml
index 4f5933b..c339d3b 100644
--- a/java/com/android/incallui/incall/impl/res/values-bg/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-bg/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видеообажд."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Задържане"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Ново обажд."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Без звук"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Затваряне"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Клавиатура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Високоговорител"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"е включено"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"е изключено"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Обединяване"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Управление"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Управление на обаждащите се"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Размяна"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Звук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Бележката е изпратена"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-bn/strings.xml b/java/com/android/incallui/incall/impl/res/values-bn/strings.xml
index 9453e14..ca5837b 100644
--- a/java/com/android/incallui/incall/impl/res/values-bn/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-bn/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ভিডিও কল"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ধরে থাকুন"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"কল যোগ করুন"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"নিঃশব্দ করুন"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"কল শেষ করুন"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"কীপ্যাড"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"স্পিকার"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", চালু রয়েছে"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", বন্ধ রয়েছে"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"মার্জ করুন"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"পরিচালনা করুন"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"কলারদের পরিচালনা করুন"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"অদল বদল করুন"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"শব্দ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"নোট পাঠানো হয়েছে"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-bs/strings.xml b/java/com/android/incallui/incall/impl/res/values-bs/strings.xml
index 4b47964..26b44ea 100644
--- a/java/com/android/incallui/incall/impl/res/values-bs/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-bs/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videopoziv"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Na čekanju"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Dodaj poziv"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Isključi"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Prekini poziv"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Telefonska tastatura"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Zvučnik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", uključen"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", isključen"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Spoji"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Upravljaj"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Upravljanje pozivaocima"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Zamijeni"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvuk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Bilješka je poslana"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ca/strings.xml b/java/com/android/incallui/incall/impl/res/values-ca/strings.xml
index e10b7bd..9c76a3a 100644
--- a/java/com/android/incallui/incall/impl/res/values-ca/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ca/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videotrucada"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Posa en espera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Afeg. trucada"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Silencia"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Penja"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclat"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altaveu"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", activat"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", desactivat"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Combina"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gestiona"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gestiona les persones que truquen"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Canvia"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"So"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"La nota s\'ha enviat"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-cs/strings.xml b/java/com/android/incallui/incall/impl/res/values-cs/strings.xml
index a00c105..69f3e53 100644
--- a/java/com/android/incallui/incall/impl/res/values-cs/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-cs/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videohovor"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Podržet"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Přidat hovor"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Vyp. mikrof."</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Zavěsit"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klávesnice"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Reproduktor"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"– zapnuto"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"– vypnuto"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Sloučit"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Spravovat"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Spravovat volající"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Přepnout"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvuk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Poznámka byla odeslána"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-da/strings.xml b/java/com/android/incallui/incall/impl/res/values-da/strings.xml
index 08b5cbb..d9328af 100644
--- a/java/com/android/incallui/incall/impl/res/values-da/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-da/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videoopkald"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Parkér"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Tilføj opkald"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Slå lyden fra"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Slut opkald"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastatur"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Højttaler"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", er til"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", er fra"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Flet"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Administrer"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Administrer opkaldere"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Byt"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Lyd"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Noten blev sendt"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-de/strings.xml b/java/com/android/incallui/incall/impl/res/values-de/strings.xml
index 5f3f8c1..30eae96 100644
--- a/java/com/android/incallui/incall/impl/res/values-de/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-de/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videoanruf"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Halten"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Hinzufügen"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Stumm"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Beenden"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Wähltasten"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Lautsprecher"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ist an"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ist aus"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Zusammenf."</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Verwalten"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Anrufer verwalten"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Wechseln"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Audio"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Notiz gesendet"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-el/strings.xml b/java/com/android/incallui/incall/impl/res/values-el/strings.xml
index 0f5a142..b45314f 100644
--- a/java/com/android/incallui/incall/impl/res/values-el/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-el/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Βιντεοκλήση"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Αναμονή"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Προσθ. κλήσ."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Σίγαση"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Τερματισμός"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Πληκτρολόγιο"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Ηχείο"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ενεργό"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ανενεργό"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Συγχώνευση"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Διαχείριση"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Διαχείριση καλούντων"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Ανταλλαγή"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ήχος"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Η σημείωση εστάλη"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-en-rAU/strings.xml b/java/com/android/incallui/incall/impl/res/values-en-rAU/strings.xml
index 89b72df..34323f5 100644
--- a/java/com/android/incallui/incall/impl/res/values-en-rAU/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-en-rAU/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video call"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Hold"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Add call"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Mute"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"End call"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Keypad"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Speaker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", is on"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", is off"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Merge"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Manage"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Manage callers"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Swap"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sound"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Note sent"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-en-rGB/strings.xml b/java/com/android/incallui/incall/impl/res/values-en-rGB/strings.xml
index 89b72df..34323f5 100644
--- a/java/com/android/incallui/incall/impl/res/values-en-rGB/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-en-rGB/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video call"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Hold"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Add call"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Mute"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"End call"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Keypad"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Speaker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", is on"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", is off"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Merge"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Manage"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Manage callers"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Swap"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sound"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Note sent"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-en-rIN/strings.xml b/java/com/android/incallui/incall/impl/res/values-en-rIN/strings.xml
index 89b72df..34323f5 100644
--- a/java/com/android/incallui/incall/impl/res/values-en-rIN/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-en-rIN/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video call"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Hold"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Add call"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Mute"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"End call"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Keypad"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Speaker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", is on"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", is off"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Merge"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Manage"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Manage callers"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Swap"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sound"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Note sent"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-es-rUS/strings.xml b/java/com/android/incallui/incall/impl/res/values-es-rUS/strings.xml
index fe9374c..d39cf2f 100644
--- a/java/com/android/incallui/incall/impl/res/values-es-rUS/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-es-rUS/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videollamada"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Retener"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Agregar llamada"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Silenciar"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Finalizar"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altavoz"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", activado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", desactivado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Combinar"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Administrar"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Administrar números"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Cambiar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sonido"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Se envió la nota"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-es/strings.xml b/java/com/android/incallui/incall/impl/res/values-es/strings.xml
index f2dd09b..db5a7e6 100644
--- a/java/com/android/incallui/incall/impl/res/values-es/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-es/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videollamada"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Retener"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Añadir"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Silenciar"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Finalizar"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altavoz"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", activado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", desactivado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Combinar"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gestionar"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Administrar llamadas"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Cambiar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sonido"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota enviada"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-et/strings.xml b/java/com/android/incallui/incall/impl/res/values-et/strings.xml
index 03fa7de..f4587ad 100644
--- a/java/com/android/incallui/incall/impl/res/values-et/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-et/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videokõne"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Ootele"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Lisa kõne"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Vaigista"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Lõpeta kõne"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klaviatuur"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Kõlar"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", on sees"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", on väljas"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Ühenda"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Halda"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Helistajate haldamine"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Vaheta"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Heli"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Märge on saadetud"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-eu/strings.xml b/java/com/android/incallui/incall/impl/res/values-eu/strings.xml
index 51d300e..28d78a7 100644
--- a/java/com/android/incallui/incall/impl/res/values-eu/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-eu/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Bideo-deia"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Utzi zain"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Gehitu deia"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Des. audioa"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Amaitu deia"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teklatua"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Bozgorailua"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", aktibatuta"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", desaktib."</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Bateratu"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Kudeatu"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Kudeatu deitzaileak"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Aldatu"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Soinua"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Bidali da oharra"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-fa/strings.xml b/java/com/android/incallui/incall/impl/res/values-fa/strings.xml
index a070116..a26ac75 100644
--- a/java/com/android/incallui/incall/impl/res/values-fa/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-fa/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"تماس ویدئویی"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"درحال انتظار"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"افزودن تماس"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"بی‌صدا کردن"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"پایان تماس"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"صفحه کلید"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"بلندگو"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"، فعال است"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"، غیرفعال است"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ادغام"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"مدیریت"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"مدیریت تماس‌گیرندگان"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"جابه‌جایی"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"صدا"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"یادداشت ارسال شد"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-fi/strings.xml b/java/com/android/incallui/incall/impl/res/values-fi/strings.xml
index d81bfbf..9ae5348 100644
--- a/java/com/android/incallui/incall/impl/res/values-fi/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-fi/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videopuhelu"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Pitoon"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Lisää puhelu"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Mykistä"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Päätä puhelu"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Näppäimistö"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Kaiutin"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", käytössä"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ei käytössä"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Yhdistä"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Hallinnoi"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Hallinnoi soittajia"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Vaihda"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ääni"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Muistiinpano lähetettiin."</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-fr-rCA/strings.xml b/java/com/android/incallui/incall/impl/res/values-fr-rCA/strings.xml
index 1278bce..cff6745 100644
--- a/java/com/android/incallui/incall/impl/res/values-fr-rCA/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-fr-rCA/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Appel vidéo"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"En attente"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Autre appel"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Couper son"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Raccrocher"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Clavier"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Haut-parleur"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", activé"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", désactivé"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Fusionner"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gérer"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gérer les appels"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Permuter"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Son"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Note envoyée"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-fr/strings.xml b/java/com/android/incallui/incall/impl/res/values-fr/strings.xml
index 5532032..14e92be 100644
--- a/java/com/android/incallui/incall/impl/res/values-fr/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-fr/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Appel vidéo"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"En attente"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Autre appel"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Couper micro"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Raccrocher"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Clavier"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Haut-parleur"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", activé"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", désactivé"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Fusionner"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gérer"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gérer les appelants"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Permuter"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Son"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Note envoyée"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-gl/strings.xml b/java/com/android/incallui/incall/impl/res/values-gl/strings.xml
index ec99b7c..4b399f4 100644
--- a/java/com/android/incallui/incall/impl/res/values-gl/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-gl/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videochamada"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"En espera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Eng. chamada"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Ignorar"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Finalizar chamada"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altofalante"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"activado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"desactivado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Combinar"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Xestionar"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Xestionar emisores de chamadas"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Cambiar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Son"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Enviouse a nota"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-gu/strings.xml b/java/com/android/incallui/incall/impl/res/values-gu/strings.xml
index fb3999c..438f0f3 100644
--- a/java/com/android/incallui/incall/impl/res/values-gu/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-gu/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"વિડિઓ કૉલ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"હોલ્ડ કરો"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"કૉલ ઉમેરો"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"મ્યૂટ કરો"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"કૉલ સમાપ્ત કરો"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"કીપેડ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"સ્પીકર"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ચાલુ છે"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", બંધ છે"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"મર્જ કરો"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"સંચાલિત કરો"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"કૉલર્સને સંચાલિત કરો"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"સ્વેપ કરો"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ધ્વનિ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"નોંધ મોકલી"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-h580dp/dimens.xml b/java/com/android/incallui/incall/impl/res/values-h580dp/dimens.xml
deleted file mode 100644
index 1f37cd5..0000000
--- a/java/com/android/incallui/incall/impl/res/values-h580dp/dimens.xml
+++ /dev/null
@@ -1,4 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-  <dimen name="incall_avatar_size">88dp</dimen>
-</resources>
diff --git a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml b/java/com/android/incallui/incall/impl/res/values-h600dp/dimens.xml
similarity index 75%
copy from java/com/android/incallui/res/drawable/img_conference_automirrored.xml
copy to java/com/android/incallui/incall/impl/res/values-h600dp/dimens.xml
index 78b2876..904aed2 100644
--- a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml
+++ b/java/com/android/incallui/incall/impl/res/values-h600dp/dimens.xml
@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2016 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -16,6 +15,6 @@
   ~ limitations under the License
   -->
 
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/img_conference"/>
\ No newline at end of file
+<resources>
+  <dimen name="incall_avatar_size">88dp</dimen>
+</resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-h580dp/styles.xml b/java/com/android/incallui/incall/impl/res/values-h650dp/styles.xml
similarity index 100%
rename from java/com/android/incallui/incall/impl/res/values-h580dp/styles.xml
rename to java/com/android/incallui/incall/impl/res/values-h650dp/styles.xml
diff --git a/java/com/android/incallui/incall/impl/res/values-hi/strings.xml b/java/com/android/incallui/incall/impl/res/values-hi/strings.xml
index 6a7538d..39e6e6b 100644
--- a/java/com/android/incallui/incall/impl/res/values-hi/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-hi/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"वीडियो कॉल"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"होल्ड करें"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"कॉल जोड़ें"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"म्यूट करें"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"कॉल समाप्त करें"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"कीपैड"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"स्‍पीकर"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", चालू है"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", बंद है"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"एक बनाएं"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"प्रबंधित करें"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"कॉलर प्रबंधित करें"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"स्वैप करें"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ध्वनि"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"नोट भेज दिया गया है"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-hr/strings.xml b/java/com/android/incallui/incall/impl/res/values-hr/strings.xml
index fc431b3..e440028 100644
--- a/java/com/android/incallui/incall/impl/res/values-hr/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-hr/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videopoziv"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Pauziraj"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Dodaj poziv"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Isklj. zvuk"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Prekini poziv"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tipkovnica"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Zvučnik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", uključeno"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", isključeno"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Spoji"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Upravljanje"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Upravljaj pozivateljima"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Zamijeni"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvuk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Bilješka je poslana"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-hu/strings.xml b/java/com/android/incallui/incall/impl/res/values-hu/strings.xml
index 194c348..e63ce59 100644
--- a/java/com/android/incallui/incall/impl/res/values-hu/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-hu/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videohívás"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Várakoztatás"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Hívás felv."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Némítás"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Hívás vége"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Billentyűzet"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Hangszóró"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", be"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ki"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Egyesítés"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Kezelés"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Hívók kezelése"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Csere"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Hang"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Üzenet elküldve"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-hy/strings.xml b/java/com/android/incallui/incall/impl/res/values-hy/strings.xml
index 0e8054e..ce395e7 100644
--- a/java/com/android/incallui/incall/impl/res/values-hy/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-hy/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Տեսազանգ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Պահել զանգը"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Ավելացնել զանգ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Անջատել"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Ավարտել զանգը"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Ստեղնաշար"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Բարձրախոս"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", միացած է"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", անջատած է"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Միավորել"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Կառավարել"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Զանգողների կառավարում"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Փոխարկել"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ձայն"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Գրառումն ուղարկվեց"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-in/strings.xml b/java/com/android/incallui/incall/impl/res/values-in/strings.xml
index f429cb4..e9d738a 100644
--- a/java/com/android/incallui/incall/impl/res/values-in/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-in/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video call"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Tahan"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Tambahkan panggilan"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Bisukan"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Akhiri panggilan"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Keypad"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Speaker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", aktif"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", Nonaktif"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Gabungkan"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Kelola"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Kelola penelepon"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Tukar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Suara"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Catatan telah dikirim"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-is/strings.xml b/java/com/android/incallui/incall/impl/res/values-is/strings.xml
index 9c3bf89..f262e3f 100644
--- a/java/com/android/incallui/incall/impl/res/values-is/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-is/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Myndsímtal"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Setja í bið"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Bæta við"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Hljóð af"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Ljúka"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Talnaborð"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Hátalari"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", kveikt"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", slökkt"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Sameina"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Stjórna"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Hafa umsjón með hringjendum"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Skipta milli"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Hljóð"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Glósa send"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-it/strings.xml b/java/com/android/incallui/incall/impl/res/values-it/strings.xml
index 1cfb0be..f29a702 100644
--- a/java/com/android/incallui/incall/impl/res/values-it/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-it/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videochiamata"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"In attesa"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Aggiungi chiamata"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Disattiva"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Termina chiamata"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastierino"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altoparlante"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", attivo"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", non attivo"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Unisci"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gestisci"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gestisci chiamanti"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Scambia"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Audio"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota inviata"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-iw/strings.xml b/java/com/android/incallui/incall/impl/res/values-iw/strings.xml
index 2426fc8..bf08e3b 100644
--- a/java/com/android/incallui/incall/impl/res/values-iw/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-iw/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"שיחת וידאו"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"המתנה"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"הוסף שיחה"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"השתק"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"סיום השיחה"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"לוח חיוג"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"רמקול"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", מופעל"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", מושבת"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"מזג"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"נהל"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ניהול המתקשרים"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"החלף"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"צלילים"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ההערה נשלחה"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ja/strings.xml b/java/com/android/incallui/incall/impl/res/values-ja/strings.xml
index 9e313a0..b78ee20 100644
--- a/java/com/android/incallui/incall/impl/res/values-ja/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ja/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ビデオ通話"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"保留"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"通話を追加"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ミュート"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"通話を終了"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"キーパッド"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"スピーカー"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"がオンです"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"がオフです"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"統合"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"管理"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"発信者を管理"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"切り替え"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"音声"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"メモを送信しました"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ka/strings.xml b/java/com/android/incallui/incall/impl/res/values-ka/strings.xml
index d33af5a..f6926f3 100644
--- a/java/com/android/incallui/incall/impl/res/values-ka/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ka/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ვიდეოზარი"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"შეყოვნება"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ზარის დამატ."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"დადუმება"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ზარის დასრ."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"კლავიატურა"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"სპიკერი"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ჩართულია"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", გამორთულია"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"გაერთიანება"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"მართვა"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"აბონენტების მართვა"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"შენაცვლება"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ხმა"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ჩანიშვნა გაიგზავნა"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-kk/strings.xml b/java/com/android/incallui/incall/impl/res/values-kk/strings.xml
index db9c4f6..8da9982 100644
--- a/java/com/android/incallui/incall/impl/res/values-kk/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-kk/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Бейне қоңырау"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Күттіру"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Қоңырау қосу"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Дыбысын өшіру"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Қоңырауды аяқтау"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Пернетақта"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Динамик"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", қосулы"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", өшірулі"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Біріктіру"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Басқару"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Қоңырау шалушыларды басқару"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Ауыстыру"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Дыбыс"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Ескертпе жіберілді"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-km/strings.xml b/java/com/android/incallui/incall/impl/res/values-km/strings.xml
index 6596bdf..88e356a 100644
--- a/java/com/android/incallui/incall/impl/res/values-km/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-km/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ហៅ​ជា​វីដេអូ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"រង់ចាំ"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"បន្ថែម​ការ​ហៅ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"បិទ​សំឡេង"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"បញ្ចប់​ការ​ហៅ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"បន្ទះ​​ចុច​លេខ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ឧបករណ៍​បំពង​សំឡេង"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", បាន​បើក"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", បានបិទ"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"បញ្ចូលគ្នា"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"គ្រប់គ្រង"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"គ្រប់គ្រងអ្នក​ហៅ"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"ប្ដូរ"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"សំឡេង"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"បានផ្ញើចំណាំ"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-kn/strings.xml b/java/com/android/incallui/incall/impl/res/values-kn/strings.xml
index c03ec09..ad29b6d 100644
--- a/java/com/android/incallui/incall/impl/res/values-kn/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-kn/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ವೀಡಿಯೊ ಕರೆ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ಹೋಲ್ಡ್‌‌ ಮಾಡು"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ಕರೆಯನ್ನು ಸೇರಿಸಿ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ಮ್ಯೂಟ್ ಮಾಡಿ"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ಕರೆ ಅಂತ್ಯಗೊಳಿಸಿ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ಕೀಪ್ಯಾಡ್‌"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ಸ್ಪೀಕರ್‌"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ಆನ್ ಆಗಿದೆ"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ಆಫ್ ಆಗಿದೆ"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ವಿಲೀನಗೊಳಿಸು"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"ನಿರ್ವಹಿಸು"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ಕರೆದಾತರನ್ನು ನಿರ್ವಹಿಸಿ"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"ಸ್ವ್ಯಾಪ್‌ ಮಾಡು"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ಧ್ವನಿ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ಟಿಪ್ಪಣಿ ಕಳುಹಿಸಲಾಗಿದೆ"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ko/strings.xml b/java/com/android/incallui/incall/impl/res/values-ko/strings.xml
index e701e77..f9bb20f 100644
--- a/java/com/android/incallui/incall/impl/res/values-ko/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ko/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"화상 통화"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"대기"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"통화 추가"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"음소거"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"통화 종료"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"키패드"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"스피커"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", 켜짐"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", 꺼짐"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"병합"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"관리"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"발신자 관리"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"전환"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"소리"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"메모가 전송되었습니다."</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ky/strings.xml b/java/com/android/incallui/incall/impl/res/values-ky/strings.xml
index e51d4c5..f00264d 100644
--- a/java/com/android/incallui/incall/impl/res/values-ky/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ky/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видео чалуу"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Күттүрүү"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Чалууну кошуу"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Үнүн өчүрүү"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Чалууну бүтүрүү"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Ном. тергич"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Катуу сүйлөткүч"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", күйүк"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", өчүк"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Бириктирүү"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Башкаруу"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Чалуучуларды башкаруу"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Алмаштыруу"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Добуш"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Билдирүү жөнөтүлдү"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-lo/strings.xml b/java/com/android/incallui/incall/impl/res/values-lo/strings.xml
index 52de3ff..2382f32 100644
--- a/java/com/android/incallui/incall/impl/res/values-lo/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-lo/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ໂທດ້ວຍວິດີໂອ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ພັກສາຍຊົ່ວຄາວ"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ເພີ່ມການໂທ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ປີດສຽງ"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ວາງສາຍ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ແປ້ນກົດ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ລຳໂພງ"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ເປີດຢູ່"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ປິດຢູ່"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ຮວມສາຍ"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"ຈັດການ"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ຈັດການຜູ້ໂທ"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"ສະຫຼັບສາຍ"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ສຽງ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ສົ່ງບັນທຶກແລ້ວ"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-lt/strings.xml b/java/com/android/incallui/incall/impl/res/values-lt/strings.xml
index 4cd0356..1a10884 100644
--- a/java/com/android/incallui/incall/impl/res/values-lt/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-lt/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Vaizdo skambutis"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Sulaikyti"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Pr. skambutį"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Nutildyti"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Baig. skamb."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klaviatūra"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Garsiakalbis"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", įjungtas"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", išjungtas"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Sujungti"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Tvarkyti"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Tvarkyti skambintojus"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Sukeisti"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Garsas"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Užrašas išsiųstas"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-lv/strings.xml b/java/com/android/incallui/incall/impl/res/values-lv/strings.xml
index 48f9ae0..c19e7c0 100644
--- a/java/com/android/incallui/incall/impl/res/values-lv/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-lv/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videozvans"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Aizturēt"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Pievienot zvanu"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Izslēgt"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Beigt zvanu"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Cipartast."</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Skaļrunis"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ieslēgts"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", izslēgts"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Apvienot"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Pārvaldīt"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Pārvaldīt zvanītājus"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Pārslēgt"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Skaņa"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Piezīme nosūtīta"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-mk/strings.xml b/java/com/android/incallui/incall/impl/res/values-mk/strings.xml
index 5a61de5..610a308 100644
--- a/java/com/android/incallui/incall/impl/res/values-mk/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-mk/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видеоповик"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"На чекање"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Додај повик"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Исклучи звук"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Заврши повик"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Тастатура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Звучник"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", е вклучен"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", е исклучен"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Спои"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Управувај"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Управувајте со повикувачите"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Замени"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Звук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Белешката е испратена"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ml/strings.xml b/java/com/android/incallui/incall/impl/res/values-ml/strings.xml
index 00586ff..83c2989 100644
--- a/java/com/android/incallui/incall/impl/res/values-ml/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ml/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"വീഡിയോ കോള്‍"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ഹോള്‍ഡുചെയ്യുക"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"കോൾ ചേർക്കുക"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"മ്യൂട്ടുചെയ്യുക"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"കോള്‍ അവസാനിപ്പിക്കൂ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"കീപാഡ്"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"സ്പീക്കർ"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ഓണാണ്"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ഓഫാണ്"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ലയിപ്പിക്കുക"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"മാനേജുചെയ്യുക"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"കോൾ ചെയ്യുന്നവരെ മാനേജുചെയ്യുക"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"സ്വാപ്പുചെയ്യുക"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ശബ്‌ദം"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"കുറിപ്പ് അയച്ചു"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-mn/strings.xml b/java/com/android/incallui/incall/impl/res/values-mn/strings.xml
index 085a405..9427d86 100644
--- a/java/com/android/incallui/incall/impl/res/values-mn/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-mn/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видео хурал"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Саатуулах"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Дуудлага нэмэх"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Дууг хаах"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Дуудлагыг таслах"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Товчлуур"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Чанга яригч"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", асаатай"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", унтраатай"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Нэгтгэх"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Удирдах"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Залгагчдыг удирдах"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Солих"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Дуу"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Тэмдэглэлийг илгээсэн"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-mr/strings.xml b/java/com/android/incallui/incall/impl/res/values-mr/strings.xml
index 8419233..194c192 100644
--- a/java/com/android/incallui/incall/impl/res/values-mr/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-mr/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"व्हिडिओ कॉल"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"होल्ड करा"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"कॉल जोडा"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"नि:शब्द करा"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"कॉल समाप्त करा"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"कीपॅड"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"स्पीकर"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", सुरू आहे"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", बंद आहे"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"विलीन करा"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"व्यवस्थापित करा"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"कॉलर व्यवस्थापित करा"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"अदलाबदल करा"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ध्वनी"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"टीप पाठविली"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ms/strings.xml b/java/com/android/incallui/incall/impl/res/values-ms/strings.xml
index c9db832..a918ded 100644
--- a/java/com/android/incallui/incall/impl/res/values-ms/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ms/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Pgln video"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Tunda"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Tambah pgln"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Redam"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Tamatkn pgln"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Pad kekunci"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Pmbsr suara"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", dihidupkan"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", Dimatikan"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Gabung"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Urus"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Urus pemanggil"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Silih"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Bunyi"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota dihantar"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-my/strings.xml b/java/com/android/incallui/incall/impl/res/values-my/strings.xml
index e0bfb8c..8007029 100644
--- a/java/com/android/incallui/incall/impl/res/values-my/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-my/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ဗီဒီယိုခေါ်ဆိုမှု"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ခဏရပ်ထားရန်"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ထပ်ခေါ်ရန်"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"အသံပိတ်ရန်"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ဖုန်းချရန်"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ခလုတ်ခုံ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"စပီကာ"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"၊ ပွင့်နေသည်"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"၊ ပိတ်နေသည်"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ပေါင်းရန်"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"စီမံရန်"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ခေါ်ဆိုသူများကို စီမံခန့်ခွဲရန်"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"ဖလှယ်ရန်"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"အသံ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"မှတ်စုပို့ပြီးပါပြီ"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-nb/strings.xml b/java/com/android/incallui/incall/impl/res/values-nb/strings.xml
index 7520086..704384e 100644
--- a/java/com/android/incallui/incall/impl/res/values-nb/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-nb/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videosamtale"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Sett på vent"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Nytt anrop"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Ignorer"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Avslutt samtalen"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastatur"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Høyttaler"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"er på"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"er av"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Slå sammen"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Administrer"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Håndter innringere"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Bytt"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Lyd"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Notatet er sendt"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ne/strings.xml b/java/com/android/incallui/incall/impl/res/values-ne/strings.xml
index 6bcfb6d..beffa3e 100644
--- a/java/com/android/incallui/incall/impl/res/values-ne/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ne/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"भिडियो कल"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"होल्ड गर्ने"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"कल थप्नुहोस्"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"म्यूट गर्ने"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"कल अन्त्य गर्ने"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"किप्याड"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"स्पिकर"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", खुला छ"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", बन्द छ"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"मर्ज गर्ने"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"प्रबन्ध गर्ने"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"कल गर्ने व्यक्तिहरूलाई व्यवस्थित गर्नुहोस्"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"साट्नुहोस्"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"आवाज"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"टिपोट पठाइयो"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-nl/strings.xml b/java/com/android/incallui/incall/impl/res/values-nl/strings.xml
index 63f1ebd..e3c919e 100644
--- a/java/com/android/incallui/incall/impl/res/values-nl/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-nl/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videogespr."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"In wacht"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Oproep toev."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Dempen"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Oproep beëindigen"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Toetsenblok"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Luidspreker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", is aan"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", is uit"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Samenvoegen"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Beheren"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Bellers beheren"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Wisselen"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Geluid"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Notitie verzonden"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-no/strings.xml b/java/com/android/incallui/incall/impl/res/values-no/strings.xml
index 7520086..704384e 100644
--- a/java/com/android/incallui/incall/impl/res/values-no/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-no/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videosamtale"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Sett på vent"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Nytt anrop"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Ignorer"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Avslutt samtalen"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastatur"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Høyttaler"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"er på"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"er av"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Slå sammen"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Administrer"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Håndter innringere"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Bytt"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Lyd"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Notatet er sendt"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-pa/strings.xml b/java/com/android/incallui/incall/impl/res/values-pa/strings.xml
index 10a2865..d7e74ed 100644
--- a/java/com/android/incallui/incall/impl/res/values-pa/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-pa/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ਵੀਡੀਓ ਕਾਲ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ਰੋਕ ਕੇ ਰੱਖੋ"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ਕਾਲ ਸ਼ਾਮਲ ਕਰੋ"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ਮਿਊਟ ਕਰੋ"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ਕਾਲ ਖਤਮ ਕਰੋ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ਕੀਪੈਡ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ਸਪੀਕਰ"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ਚਾਲੂ ਹੈ"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ਬੰਦ ਹੈ"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ਰਲਗੱਡ ਕਰੋ"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"ਪ੍ਰਬੰਧਨ ਕਰੋ"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"ਕਾਲਰਾਂ ਦਾ ਪ੍ਰਬੰਧਨ ਕਰੋ"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"ਅਦਲੋ-ਬਦਲੋ"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ਧੁਨੀ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ਨੋਟ-ਕਥਨ ਭੇਜਿਆ ਗਿਆ"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-pl/strings.xml b/java/com/android/incallui/incall/impl/res/values-pl/strings.xml
index 4bf6a58..9971d75 100644
--- a/java/com/android/incallui/incall/impl/res/values-pl/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-pl/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Rozmowa wid."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Wstrzymaj"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Dodaj poł."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Wycisz"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Zakończ"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klawiatura"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Głośnik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"– włączony"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"– wyłączony"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Scal"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Zarządzaj"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Zarządzaj rozmówcami"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Przełącz"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Dźwięk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Notatka wysłana"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-pt-rBR/strings.xml b/java/com/android/incallui/incall/impl/res/values-pt-rBR/strings.xml
index 7ca6b6b..538c20c 100644
--- a/java/com/android/incallui/incall/impl/res/values-pt-rBR/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-pt-rBR/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videocham."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Em espera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Adic chamada"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Desativar"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Encerrar"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Alto-falante"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"ativado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"desativado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Mesclar"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gerenciar"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gerenciar os autores das chamadas"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Trocar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Som"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota enviada"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-pt-rPT/strings.xml b/java/com/android/incallui/incall/impl/res/values-pt-rPT/strings.xml
index 750e57e..376ee84 100644
--- a/java/com/android/incallui/incall/impl/res/values-pt-rPT/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-pt-rPT/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videochamada"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Em espera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Adic. cham."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Desativ. som"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Term. cham."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altifalante"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ativado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", desativado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Unir"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gerir"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gerir autores das chamadas"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Alternar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Som"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota enviada"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-pt/strings.xml b/java/com/android/incallui/incall/impl/res/values-pt/strings.xml
index 7ca6b6b..538c20c 100644
--- a/java/com/android/incallui/incall/impl/res/values-pt/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-pt/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videocham."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Em espera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Adic chamada"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Desativar"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Encerrar"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Teclado"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Alto-falante"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"ativado"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"desativado"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Mesclar"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gerenciar"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gerenciar os autores das chamadas"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Trocar"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Som"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota enviada"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ro/strings.xml b/java/com/android/incallui/incall/impl/res/values-ro/strings.xml
index 1f93da9..81dcdf3 100644
--- a/java/com/android/incallui/incall/impl/res/values-ro/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ro/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Apel video"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"În așteptare"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Încă un apel"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Dezactivați"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Încheiați"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tastatură"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Difuzor"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", e activat"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", dezactivat"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Îmbinați"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Gestionați"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Gestionați apelanții"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Schimbați"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sunet"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Nota a fost trimisă"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ru/strings.xml b/java/com/android/incallui/incall/impl/res/values-ru/strings.xml
index 89192c3..274f8ff 100644
--- a/java/com/android/incallui/incall/impl/res/values-ru/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ru/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видеовызов"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Удерживать"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Добавить вызов"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Выкл. звук"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Завершить вызов"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Клавиатура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Динамик"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", включен"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", отключен"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Объединить"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Управление"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Управление абонентами"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Переключить"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Звук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Сообщение отправлено"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-si/strings.xml b/java/com/android/incallui/incall/impl/res/values-si/strings.xml
index 209bb77..a600c21 100644
--- a/java/com/android/incallui/incall/impl/res/values-si/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-si/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"වීඩියෝ ඇමතුම"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"රඳවා ගන්න"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"ඇමතුම එක් ක."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"නිහඬ කරන්න"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"ඇමතුම නිම ක."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"යතුරු පුවරුව"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ස්පීකරය"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", සක්‍රියයි"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", අක්‍රියයි"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ඒකාබද්ධ කර."</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"කළමනාකරණය ක."</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"අමතන්නන් කළමනාකරණය කරන්න"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"මාරු කරන්න"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"හඬ"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"සටහන යවන ලදී"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sk/strings.xml b/java/com/android/incallui/incall/impl/res/values-sk/strings.xml
index 4e06aee..d74d19e 100644
--- a/java/com/android/incallui/incall/impl/res/values-sk/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sk/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videohovor"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Podržať"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Pridať hovor"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Vypnúť zvuk"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Ukonč. hovor"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klávesnica"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Reproduktor"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", je zapnutý"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", je vypnutý"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Zlúčiť"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Spravovať"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Spravovať volajúcich"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Zameniť"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvuk"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Poznámka bola odoslaná"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sl/strings.xml b/java/com/android/incallui/incall/impl/res/values-sl/strings.xml
index 7cdb6c8..782ce44 100644
--- a/java/com/android/incallui/incall/impl/res/values-sl/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sl/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videoklic"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Zadrži"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Dodaj klic"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Izklopi zvok"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Končaj klic"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tipkovnica"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Zvočnik"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", vklopljen"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", izklopljen"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Združi"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Upravljanje"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Upravljanje klicateljev"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Zamenjaj"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Zvok"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Opomba je poslana"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sq/strings.xml b/java/com/android/incallui/incall/impl/res/values-sq/strings.xml
index 9ba18b5..a0fca36 100644
--- a/java/com/android/incallui/incall/impl/res/values-sq/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sq/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video tel."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Në pritje"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Shto telef."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Hiqi zërin"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Mbyll tel."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Blloku i tasteve"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Altoparlant"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", është aktiv"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", është joaktiv"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Shkri"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Menaxho"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Menaxho telefonuesit"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Shkëmbe"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Tingulli"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Shënimi u dërgua"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sr/strings.xml b/java/com/android/incallui/incall/impl/res/values-sr/strings.xml
index 56a9684..ec70451 100644
--- a/java/com/android/incallui/incall/impl/res/values-sr/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sr/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Видео позив"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"На чекање"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Додај позив"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Искључи звук"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Заврши позив"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Тастатура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Звучник"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", укључен"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", искључен"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Обједини"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Управљај"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Управљајте позиваоцима"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Замени"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Звук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Белешка је послата"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sv/strings.xml b/java/com/android/incallui/incall/impl/res/values-sv/strings.xml
index 27d83b7..ded4522 100644
--- a/java/com/android/incallui/incall/impl/res/values-sv/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sv/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Videosamtal"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Parkera"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Lägg t samt."</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Ljud av"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Avsl. samtal"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Knappsats"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Högtalare"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", är på"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", är av"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Sammanfoga"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Hantera"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Hantera uppringare"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Växla"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ljud"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Anteckning skickad"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-sw/strings.xml b/java/com/android/incallui/incall/impl/res/values-sw/strings.xml
index 136fe17..df634f4 100644
--- a/java/com/android/incallui/incall/impl/res/values-sw/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-sw/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Hangout ya video"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Shikilia"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Ongeza simu"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Zima maikrofoni"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Kata simu"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Vitufe vya Simu"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Spika"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", kimewashwa"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", kimezimwa"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Unganisha"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Dhibiti"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Dhibiti wanaopiga simu"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Badili"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Sauti"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Dokezo limetumwa"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ta/strings.xml b/java/com/android/incallui/incall/impl/res/values-ta/strings.xml
index 342f8d0..5c94abf 100644
--- a/java/com/android/incallui/incall/impl/res/values-ta/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ta/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"வீடியோ கால்"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ஹோல்டில் வை"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"அழைப்பை சேர்"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"முடக்கு"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"அழைப்பை முடி"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"விசைத்தளம்"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ஸ்பீக்கர்"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ஆன்"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ஆஃப்"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"இணை"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"நிர்வகி"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"அழைப்பாளர்களை நிர்வகிக்கும்"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"மாற்று"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"ஒலி"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"குறிப்பு அனுப்பப்பட்டது"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-te/strings.xml b/java/com/android/incallui/incall/impl/res/values-te/strings.xml
index 0048956..0cb3fb8 100644
--- a/java/com/android/incallui/incall/impl/res/values-te/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-te/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"వీడియో కాల్"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"హోల్డ్ చేయి"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"కాల్ జోడించు"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"మ్యూట్ చేయి"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"కాల్ ముగించు"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"కీప్యాడ్"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"స్పీకర్"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ఆన్‌లో ఉంది"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ఆఫ్‌లో ఉంది"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"విలీనం చేయి"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"నిర్వహించు"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"కాలర్‌లను నిర్వహిస్తుంది"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"మార్చు"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"శబ్దం"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"గమనిక పంపబడింది"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-th/strings.xml b/java/com/android/incallui/incall/impl/res/values-th/strings.xml
index a740288..0929cfc 100644
--- a/java/com/android/incallui/incall/impl/res/values-th/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-th/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"แฮงเอาท์วิดีโอ"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"พักสาย"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"เพิ่มการโทร"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"ปิดเสียง"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"วางสาย"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"ปุ่มกด"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"ลำโพง"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"เปิดอยู่"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"ปิดอยู่"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"รวม"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"จัดการ"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"จัดการผู้โทร"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"สลับ"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"เสียง"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"ส่งโน้ตแล้ว"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-tl/strings.xml b/java/com/android/incallui/incall/impl/res/values-tl/strings.xml
index 46ff797..1ac2ef8 100644
--- a/java/com/android/incallui/incall/impl/res/values-tl/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-tl/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video call"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"I-hold"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Mag-add: tawag"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"I-mute"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Tapusin ang tawag"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Keypad"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Speaker"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">",ay On"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ay Off"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"I-merge"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Pamahalaan"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Pamahalaan ang mga tumatawag"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Pagpalitin"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Tunog"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Naipadala ang tala"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-tr/strings.xml b/java/com/android/incallui/incall/impl/res/values-tr/strings.xml
index 89ca330..241b694 100644
--- a/java/com/android/incallui/incall/impl/res/values-tr/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-tr/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Görü. görüş."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Beklemeye al"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Çağrı ekle"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Sesi kapat"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Çğryı sonldr"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Tuş takımı"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Hoparlör"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", Açık"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", Kapalı"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Birleştir"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Yönet"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Arayanları yönetin"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Değiştir"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ses"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Not gönderildi"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-uk/strings.xml b/java/com/android/incallui/incall/impl/res/values-uk/strings.xml
index 516bcb7..1821556 100644
--- a/java/com/android/incallui/incall/impl/res/values-uk/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-uk/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Відеодзвінок"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Утримувати"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Дод. виклик"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Без звуку"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Завер. викл."</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Клавіатура"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Динамік"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", увімкнено"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", вимкнено"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Об’єднати"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Керувати"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Керувати абонентами"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Поміняти"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Звук"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Нотатку надіслано"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-ur/strings.xml b/java/com/android/incallui/incall/impl/res/values-ur/strings.xml
index 53ba190..fed0af6 100644
--- a/java/com/android/incallui/incall/impl/res/values-ur/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-ur/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"ویڈیو کال"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"ہولڈ کریں"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"کال شامل کریں"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"خاموش کریں"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"کال ختم کریں"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"کی پیڈ"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"اسپیکر"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"، آن ہے"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"، آف ہے"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"ضم کریں"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"نظم کریں"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"کالرز کا نظم کریں"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"تبادلہ کریں"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"آواز"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"نوٹ بھیج دیا گیا"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-uz/strings.xml b/java/com/android/incallui/incall/impl/res/values-uz/strings.xml
index 8818489..7d6af27 100644
--- a/java/com/android/incallui/incall/impl/res/values-uz/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-uz/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Video qo‘n."</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Pauza"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Chaqiruv"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Ovozsiz"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Tugatish"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Klaviatura"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Karnay"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", yoniq"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", o‘chiq"</string>
-    <string name="incall_label_merge" msgid="720076442985913175">"Birlashtir."</string>
+    <string name="incall_label_merge" msgid="720076442985913175">"Birlashtirish"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Boshqarish"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Qo‘ng‘iroq qiluvchilarni boshqarish"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Almashish"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Ovoz"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Qayd yuborildi"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-vi/strings.xml b/java/com/android/incallui/incall/impl/res/values-vi/strings.xml
index 29f85ef..42e320a 100644
--- a/java/com/android/incallui/incall/impl/res/values-vi/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-vi/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Gọi điện video"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Giữ"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Thêm cuộc gọi"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Tắt tiếng"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Kết thúc cuộc gọi"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Bàn phím"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Loa"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", đang bật"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", đang tắt"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Hợp nhất"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Quản lý"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Quản lý người gọi"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Hoán đổi"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Âm thanh"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Đã gửi ghi chú"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-w260dp-h520dp/dimens.xml b/java/com/android/incallui/incall/impl/res/values-w260dp-h520dp/dimens.xml
deleted file mode 100644
index e73eb93..0000000
--- a/java/com/android/incallui/incall/impl/res/values-w260dp-h520dp/dimens.xml
+++ /dev/null
@@ -1,7 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-  <dimen name="incall_button_horizontal_padding">16dp</dimen>
-  <dimen name="incall_button_vertical_padding">16dp</dimen>
-  <dimen name="incall_labeled_button_size">64dp</dimen>
-  <dimen name="tools_button_height">92dp</dimen>
-</resources>
diff --git a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml b/java/com/android/incallui/incall/impl/res/values-w260dp-h580dp/dimens.xml
similarity index 66%
copy from java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
copy to java/com/android/incallui/incall/impl/res/values-w260dp-h580dp/dimens.xml
index ecf704e..834ea2f 100644
--- a/java/com/android/contacts/common/res/drawable/ic_back_arrow.xml
+++ b/java/com/android/incallui/incall/impl/res/values-w260dp-h580dp/dimens.xml
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -14,7 +14,10 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-    android:autoMirrored="true"
-    android:src="@drawable/quantum_ic_arrow_back_white_24"
-    android:tint="@color/actionbar_icon_color"/>
\ No newline at end of file
+
+<resources>
+  <dimen name="incall_button_horizontal_padding">16dp</dimen>
+  <dimen name="incall_button_vertical_padding">16dp</dimen>
+  <dimen name="incall_labeled_button_size">64dp</dimen>
+  <dimen name="tools_button_height">92dp</dimen>
+</resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-w300dp-h540dp/dimens.xml b/java/com/android/incallui/incall/impl/res/values-w300dp-h540dp/dimens.xml
deleted file mode 100644
index 502ae72..0000000
--- a/java/com/android/incallui/incall/impl/res/values-w300dp-h540dp/dimens.xml
+++ /dev/null
@@ -1,5 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<resources>
-  <dimen name="incall_button_horizontal_padding">32dp</dimen>
-  <dimen name="incall_button_vertical_padding">32dp</dimen>
-</resources>
diff --git a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml b/java/com/android/incallui/incall/impl/res/values-w300dp-h620dp/dimens.xml
similarity index 74%
copy from java/com/android/incallui/res/drawable/img_conference_automirrored.xml
copy to java/com/android/incallui/incall/impl/res/values-w300dp-h620dp/dimens.xml
index 78b2876..c7ac35e 100644
--- a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml
+++ b/java/com/android/incallui/incall/impl/res/values-w300dp-h620dp/dimens.xml
@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="utf-8"?>
-
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -16,6 +15,7 @@
   ~ limitations under the License
   -->
 
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/img_conference"/>
\ No newline at end of file
+<resources>
+  <dimen name="incall_button_horizontal_padding">32dp</dimen>
+  <dimen name="incall_button_vertical_padding">32dp</dimen>
+</resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-zh-rCN/strings.xml b/java/com/android/incallui/incall/impl/res/values-zh-rCN/strings.xml
index ec64045..f0cca90 100644
--- a/java/com/android/incallui/incall/impl/res/values-zh-rCN/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-zh-rCN/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"视频通话"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"保持"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"添加通话"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"静音"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"结束通话"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"拨号键盘"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"免提"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"，已开启"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"，已关闭"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"合并"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"管理"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"管理来电者"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"切换"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"声音"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"已发送备注"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-zh-rHK/strings.xml b/java/com/android/incallui/incall/impl/res/values-zh-rHK/strings.xml
index 63cd6d8..c38ef35 100644
--- a/java/com/android/incallui/incall/impl/res/values-zh-rHK/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-zh-rHK/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"視像通話"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"保留"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"新增通話"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"靜音"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"結束通話"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"小鍵盤"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"揚聲器"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"，已開啟"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"，已關閉"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"合併"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"管理"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"管理來電者"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"切換"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"音效"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"已傳送筆記"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-zh-rTW/strings.xml b/java/com/android/incallui/incall/impl/res/values-zh-rTW/strings.xml
index be3103b..c04b830 100644
--- a/java/com/android/incallui/incall/impl/res/values-zh-rTW/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-zh-rTW/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"視訊通話"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"保留"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"新增通話"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"靜音"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"結束通話"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"撥號鍵盤"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"擴音模式"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">"，已開啟"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">"，已關閉"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"合併"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"管理"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"管理來電者"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"切換"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"音訊"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"備註已送出"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values-zu/strings.xml b/java/com/android/incallui/incall/impl/res/values-zu/strings.xml
index df3f794..a23a1d5 100644
--- a/java/com/android/incallui/incall/impl/res/values-zu/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values-zu/strings.xml
@@ -1,18 +1,33 @@
 <?xml version="1.0" encoding="UTF-8"?>
+<!-- 
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+   -->
+
 <resources xmlns:android="http://schemas.android.com/apk/res/android"
     xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
     <string name="incall_label_videocall" msgid="2208755440134676113">"Ikholi yevidiyo ye-Hangout"</string>
     <string name="incall_label_hold" msgid="4223472584896867896">"Bamba"</string>
     <string name="incall_label_add_call" msgid="5641663436373994915">"Engeza ikholi"</string>
     <string name="incall_label_mute" msgid="2180667027331706737">"Thulisa"</string>
+    <string name="incall_label_end_call" msgid="5434079261446614887">"Qeda ikholi"</string>
     <string name="incall_label_dialpad" msgid="8609779533654156550">"Ikhiphedi"</string>
-    <string name="incall_label_speaker" msgid="8100402799687856933">"Isipikha"</string>
     <string name="incall_talkback_speaker_on" msgid="5819463769258124228">", ivuliwe"</string>
     <string name="incall_talkback_speaker_off" msgid="7486836772563090186">", ivaliwe"</string>
     <string name="incall_label_merge" msgid="720076442985913175">"Hlanganisa"</string>
     <string name="incall_label_manage" msgid="2175471192903568159">"Phatha"</string>
     <string name="a11y_description_incall_label_manage_content" msgid="8298638893449287602">"Phatha abashayi"</string>
     <string name="incall_label_swap" msgid="10458642864243507">"Shintsha"</string>
-    <string name="incall_label_audio" msgid="8616473242030174797">"Umsindo"</string>
     <string name="incall_note_sent" msgid="4524130323127388367">"Inothi lithunyelwe"</string>
 </resources>
diff --git a/java/com/android/incallui/incall/impl/res/values/strings.xml b/java/com/android/incallui/incall/impl/res/values/strings.xml
index 054ca96..2b30dfa 100644
--- a/java/com/android/incallui/incall/impl/res/values/strings.xml
+++ b/java/com/android/incallui/incall/impl/res/values/strings.xml
@@ -1,4 +1,19 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
 <resources>
 
   <!-- Button shown during a phone call to upgrade to video.
@@ -17,14 +32,14 @@
      [CHAR LIMIT=12] -->
   <string name="incall_label_mute">Mute</string>
 
+  <!-- Button shown during a phone call to end the call.
+     [CHAR LIMIT=12] -->
+  <string name="incall_label_end_call">End call</string>
+
   <!-- Button shown during a phone call to show the dialpad.
      [CHAR LIMIT=12] -->
   <string name="incall_label_dialpad">Keypad</string>
 
-  <!-- Button shown during a phone to route audio from earpiece to speaker phone.
-     [CHAR LIMIT=12] -->
-  <string name="incall_label_speaker">Speaker</string>
-
   <!-- Talkback text for speaker button status. [CHAR LIMIT=12] -->
   <string name="incall_talkback_speaker_on">, is on</string>
 
@@ -45,12 +60,9 @@
      [CHAR LIMIT=12] -->
   <string name="incall_label_swap">Swap</string>
 
-  <!-- Button shown during a phone to switch the audio route.
-     [CHAR LIMIT=12] -->
-  <string name="incall_label_audio">Sound</string>
 
   <!-- Used to inform the user that the note associated with an outgoing call has been sent.
        [CHAR LIMIT=32] -->
   <string name="incall_note_sent">Note sent</string>
 
-</resources>
\ No newline at end of file
+</resources>
diff --git a/java/com/android/incallui/incall/protocol/PrimaryCallState.java b/java/com/android/incallui/incall/protocol/PrimaryCallState.java
index 2ae6a18..26dd388 100644
--- a/java/com/android/incallui/incall/protocol/PrimaryCallState.java
+++ b/java/com/android/incallui/incall/protocol/PrimaryCallState.java
@@ -44,6 +44,7 @@
   public final boolean isVoiceMailNumber;
   public final boolean isRemotelyHeld;
   public final boolean isBusinessNumber;
+  public final boolean supportsCallOnHold;
 
   // TODO: Convert to autovalue. b/34502119
   public static PrimaryCallState createEmptyPrimaryCallState() {
@@ -67,7 +68,8 @@
         0,
         false /* isVoiceMailNumber */,
         false /* isRemotelyHeld */,
-        false /* isBusinessNumber */);
+        false /* isBusinessNumber */,
+        true /* supportsCallOnHold */);
   }
 
   public PrimaryCallState(
@@ -90,7 +92,8 @@
       long connectTimeMillis,
       boolean isVoiceMailNumber,
       boolean isRemotelyHeld,
-      boolean isBusinessNumber) {
+      boolean isBusinessNumber,
+      boolean supportsCallOnHold) {
     this.state = state;
     this.isVideoCall = isVideoCall;
     this.sessionModificationState = sessionModificationState;
@@ -111,6 +114,7 @@
     this.isVoiceMailNumber = isVoiceMailNumber;
     this.isRemotelyHeld = isRemotelyHeld;
     this.isBusinessNumber = isBusinessNumber;
+    this.supportsCallOnHold = supportsCallOnHold;
   }
 
   @Override
diff --git a/java/com/android/incallui/incall/protocol/PrimaryInfo.java b/java/com/android/incallui/incall/protocol/PrimaryInfo.java
index c170950..761dd9a 100644
--- a/java/com/android/incallui/incall/protocol/PrimaryInfo.java
+++ b/java/com/android/incallui/incall/protocol/PrimaryInfo.java
@@ -104,13 +104,14 @@
     return String.format(
         Locale.US,
         "PrimaryInfo, number: %s, name: %s, location: %s, label: %s, "
-            + "photo: %s, photoType: %d, isPhotoVisible: %b",
+            + "photo: %s, photoType: %d, isPhotoVisible: %b, MultimediaData: %s",
         LogUtil.sanitizePhoneNumber(number),
         LogUtil.sanitizePii(name),
         LogUtil.sanitizePii(location),
         label,
         photo,
         photoType,
-        isContactPhotoShown);
+        isContactPhotoShown,
+        multimediaData);
   }
 }
diff --git a/java/com/android/incallui/res/drawable-hdpi/img_conference.png b/java/com/android/incallui/res/drawable-hdpi/img_conference.png
deleted file mode 100644
index 3d9f683..0000000
--- a/java/com/android/incallui/res/drawable-hdpi/img_conference.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-mdpi/img_conference.png b/java/com/android/incallui/res/drawable-mdpi/img_conference.png
deleted file mode 100644
index 0694dbd..0000000
--- a/java/com/android/incallui/res/drawable-mdpi/img_conference.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xhdpi/img_conference.png b/java/com/android/incallui/res/drawable-xhdpi/img_conference.png
deleted file mode 100644
index b0dbcc2..0000000
--- a/java/com/android/incallui/res/drawable-xhdpi/img_conference.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxhdpi/img_conference.png b/java/com/android/incallui/res/drawable-xxhdpi/img_conference.png
deleted file mode 100644
index a8dba5e..0000000
--- a/java/com/android/incallui/res/drawable-xxhdpi/img_conference.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxxhdpi/img_conference.png b/java/com/android/incallui/res/drawable-xxxhdpi/img_conference.png
deleted file mode 100644
index eb42b55..0000000
--- a/java/com/android/incallui/res/drawable-xxxhdpi/img_conference.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/anim/on_going_call.xml b/java/com/android/incallui/res/drawable/on_going_call.xml
similarity index 61%
rename from java/com/android/incallui/res/anim/on_going_call.xml
rename to java/com/android/incallui/res/drawable/on_going_call.xml
index 3a2e2ba..438ba82 100644
--- a/java/com/android/incallui/res/anim/on_going_call.xml
+++ b/java/com/android/incallui/res/drawable/on_going_call.xml
@@ -1,4 +1,20 @@
 <?xml version="1.0" encoding="utf-8"?>
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
+
 <animation-list xmlns:android="http://schemas.android.com/apk/res/android"
   android:oneshot="false">
   <item
@@ -28,4 +44,4 @@
   <item
     android:drawable="@drawable/ic_ongoing_phone_24px_09"
     android:duration="200"/>
-</animation-list>
\ No newline at end of file
+</animation-list>
diff --git a/java/com/android/incallui/res/values-af/strings.xml b/java/com/android/incallui/res/values-af/strings.xml
index 5dacaaa..7d260c3 100644
--- a/java/com/android/incallui/res/values-af/strings.xml
+++ b/java/com/android/incallui/res/values-af/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Gemiste oproep vanaf <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Oproep aan die gang"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Voortdurende werkoproep"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Voortdurende Wi-Fi-oproep"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Voortdurende Wi-Fi-werkoproep"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Voortdurende Wi-Fi-oproep"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Voortdurende Wi-Fi-werkoproep"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Hou aan"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Inkomende oproep"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Inkomende oproep met foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Belangrike inkomende oproep met foto, boodskap en ligging"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Belangrike inkomende oproep met aanhegsels"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Inkomende werkoproep"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Inkomende Wi-Fi-oproep"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Inkomende Wi-Fi-werkoproep"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Inkomende Wi-Fi-oproep"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Inkomende Wi-Fi-werkoproep"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Inkomende verdagte strooipos-oproep"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Inkomende videoversoek"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Geen diens nie"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Neem video-oproep"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Om \'n oproep te maak, skakel eers vliegtuigmodus af."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nie geregistreer op netwerk nie."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Sellulêre netwerk nie beskikbaar nie."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobiele netwerk nie beskikbaar nie."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Voer \'n geldige nommer in om \'n oproep te maak."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Kan nie bel nie."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Begin MMI-volgorde…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Beëindig oproep"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferensie-oproep"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Besig met oproep"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Gaan voort met oproep deur sellulêre data te gebruik …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Kon nie na Wi-Fi-netwerk oorskakel nie"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video-oproep sal op sellulêre netwerk bly. Standaard datakoste kan dalk geld."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Gaan voort met oproep deur mobiele data te gebruik ..."</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Kon nie na Wi-Fi-netwerk oorskakel nie"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video-oproep sal op mobiele netwerk bly. Standaard datakoste kan dalk geld."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Moenie dit weer wys nie"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-am/strings.xml b/java/com/android/incallui/res/values-am/strings.xml
index 249447f..f09fd63 100644
--- a/java/com/android/incallui/res/values-am/strings.xml
+++ b/java/com/android/incallui/res/values-am/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"ያልተመለሰ ጥሪ ከ<xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"እየተካሄደ ያለ ጥሪ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"በሂደት ላይ ያለ የሥራ ጥሪ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"በሂደት ላይ ያለ የWi-Fi ጥሪ"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"በሂደት ላይ ያለ የWi-Fi የሥራ ጥሪ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"በሂደት ላይ ያለ የWi-Fi ጥሪ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"በሂደት ላይ ያለ የWi-Fi የሥራ ጥሪ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ያዝናቆይ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ገቢ ጥሪ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ገቢ ጥሪ ከፎቶ ጋር"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"አስፈላጊ ገቢ ጥሪ ከፎቶ፣ መልዕክት እና አካባቢ ጋር"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"አስፈላጊ ገቢ ጥሪ ከአባሪ ጋር"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ገቢ የሥራ ጥሪ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ገቢ የWi-Fi ጥሪ"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ገቢ የWi-Fi የሥራ ጥሪ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ገቢ የWi-Fi ጥሪ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ገቢ የWi-Fi የሥራ ጥሪ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"መጪ የተጠረጠረ የአይፈለጌ መልዕክት ጥሪ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ገቢ የቪዲዮ ጥያቄ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ምንም አገልግሎት የለም"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"የቪዲዮ ጥሪ ውሰድ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ለመደወል፣ መጀመሪያየአውሮፕላኑን ሁነታ አጥፋ።"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"በአውታረ መረቡ ላይ አልተመዘገበም።"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"የተንቀሳቃሽ ስልክ አውታረ መረብ አይገኝም።"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"የተንቀሳቃሽ ስልክ አውታረ መረብ አይገኝም።"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"አንድ ጥሪ ለማድረግ የሚሰራ ቁጥር ያስገቡ።"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"መደወል አልተቻለም።"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"የMMI sequence…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ጥሪ ጨርስ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"የስብሰባ ጥሪ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"በጥሪ ላይ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ሴሉላር ውሂብ በመጠቀም ጥሪውን በመቀጠል ላይ…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"ወደ Wi-Fi አውታረ መረብ መቀየር አልተቻለም።"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"የቪዲዮ ጥሪ በሴሉላር አውታረመረቡ ላይ ይቆያል። መደበኛ የውሂብ ክፍያዎች ተፈጻሚ ሊሆኑ ይችላሉ።"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"የተንቀሳቃሽ ስልክ ውሂብን በመጠቀም ጥሪውን በመቀጠል ላይ…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"ወደ Wi-Fi አውታረ መረብ መቀየር አልተቻለም"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"የቪዲዮ ጥሪ በተንቀሳቃሽ ስልክ አውታረ መረብ ላይ ይቆያል። መደበኛ የውሂብ ክፍያዎች ተፈጻሚ ሊሆኑ ይችላሉ።"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ይህን በድጋሚ አታሳይ"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ar/strings.xml b/java/com/android/incallui/res/values-ar/strings.xml
index 7c3585c..3928291 100644
--- a/java/com/android/incallui/res/values-ar/strings.xml
+++ b/java/com/android/incallui/res/values-ar/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"مكالمة فائتة من <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"مكالمة حالية"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"مكالمة عمل جارية"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"‏اتصال جارٍ عبر Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"‏مكالمة عمل جارية عبر اتصال Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"‏اتصال جارٍ عبر Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"‏مكالمة عمل جارية عبر اتصال Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"معلقة"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"مكالمة واردة"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"مكالمة واردة مع صورة"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"مكالمة واردة مهمة مع صورة ورسالة وموقع"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"مكالمة واردة مهمة مع مرفقات"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"مكالمة عمل واردة"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"‏اتصال وارد عبر Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"‏مكالمة عمل واردة عبر اتصال Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"‏اتصال وارد عبر Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"‏مكالمة عمل واردة عبر اتصال Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"مكالمة واردة يشتبه في كونها غير مرغوب فيها"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"طلب فيديو وارد"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"لا خدمة"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"الرد على مكالمة فيديو"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"لإجراء مكالمة، أوقف تشغيل وضع الطائرة أولاً."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"غير مسجل على الشبكة."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"شبكة الجوّال غير متاحة."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"شبكة الجوال غير متاحة."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"لإجراء مكالمة، أدخل رقمًا صالحًا."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"يتعذر الاتصال."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"‏جارٍ بدء تسلسل MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"إنهاء الاتصال"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"مكالمة جماعية"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"قيد الاتصال"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"جارٍ استكمال المكالمة باستخدام بيانات الجوّال…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"‏تعذر التبديل إلى شبكة Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ستظل مكالمة الفيديو على شبكة الجوّال. قد يتم فرض رسوم على البيانات القياسية للشبكة."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"جارٍ استكمال المكالمة باستخدام بيانات الجوّال…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"‏تعذر التبديل إلى شبكة Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ستظل مكالمة الفيديو جارية على شبكة الجوال. قد يتم تطبيق رسوم قياسية على استخدام البيانات."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"عدم إظهار هذا مرة أخرى"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-az/strings.xml b/java/com/android/incallui/res/values-az/strings.xml
index dc43014..168dd07 100644
--- a/java/com/android/incallui/res/values-az/strings.xml
+++ b/java/com/android/incallui/res/values-az/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> tərəfindən zəng buraxılıb"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Davam edən zəng"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Davam edən iş çağrısı"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Davam edən Wi-Fi zəngi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Davam edən Wi-Fi iş çağrısı"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Davam edən Wi-Fi zəngi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Davam edən Wi-Fi iş zəngi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Gözləmə mövqeyində"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Gələn zəng"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Foto ilə gələn zəng"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Foto, mesaj və məkan ilə gələn vacib zəng"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Qoşma ilə gələn vacib zəng"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Daxil olan iş çağrısı"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Gələn Wi-Fi zəngi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Daxil olan Wi-Fi iş çağrısı"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Gələn Wi-Fi zəngi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Gələn Wi-Fi iş zəngi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Şübhəli spam zəngi"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Gələn video çağrı"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Xidmət yoxdur"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Video Zəngə cavab verin"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Zəng etmək üçün ilk olaraq Uçuş Rejimini söndürün."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Şəbəkədə qeydə alınmayıb."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobil şəbəkə əlçatan deyil"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobil şəbəkə əlçatımlı deyil."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Zəngi yerləşdirmək üçün düzgün nömrə daxil edin."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Zəng etmək mümkün deyil."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI başlanma ardıcıllığı…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Zəngi sonlandırın"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konfrans zəngi"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Çağrıda"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Mobil data istifadə edərək zəng davam edir…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi şəbəkəsinə qoşulmaq olmadı"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video zəng mobil şəbəkə üzərində qalacaq. Standart data rüsumları tətbiq oluna bilər."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Mobil data istifadə edərək zəngə davam edin…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi şəbəkəsinə qoşulmaq olmadı"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video zəng mobil şəbəkədə qalacaq. Standard data xərcləri tətbiq edilə bilər."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Bunu bi rdaha göstərməyin"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-b+sr+Latn/strings.xml b/java/com/android/incallui/res/values-b+sr+Latn/strings.xml
index 3dddf65..de2ad86 100644
--- a/java/com/android/incallui/res/values-b+sr+Latn/strings.xml
+++ b/java/com/android/incallui/res/values-b+sr+Latn/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Propušten poziv od: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Aktuelni poziv"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Tekući poziv za Work"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Tekući Wi-Fi poziv"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Tekući poziv za Work preko Wi-Fi-ja"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi‑Fi poziv u toku"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Wi‑Fi poslovni poziv u toku"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Na čekanju"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Dolazni poziv"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Dolazni poziv sa slikom"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Važan dolazni poziv sa slikom, porukom i lokacijom"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Važan dolazni poziv sa prilozima"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Dolazni poziv za Work"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Dolazni Wi-Fi poziv"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Dolazni poziv za Work preko Wi-Fi-ja"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Dolazni Wi‑Fi poziv"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Dolazni Wi‑Fi poslovni poziv"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Sumnja na nepoželjan dolazni poziv"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Zahtev za dolazni video poziv"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nema usluge"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Preuzmi video poziv"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Da biste uputili poziv, prvo isključite režim rada u avionu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nije registrovano na mreži."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilna mreža nije dostupna."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilna mreža nije dostupna."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Da biste uputili poziv, unesite važeći broj."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Poziv nije uspeo."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Pokretanje MMI sekvence"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Završite poziv"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferencijski poziv"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"U pozivu"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Poziv se nastavlja pomoću mobilnih podataka…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Prebacivanje na Wi-Fi mrežu nije uspelo"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video poziv će ostati na mobilnoj mreži. Mogu da važe standardne naknade za prenos podataka."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Poziv se nastavlja pomoću mobilnih podataka…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Prebacivanje na Wi‑Fi mrežu nije uspelo"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video poziv će ostati na mobilnoj mreži. Važe standardne naknade za prenos podataka."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne prikazuj ovo ponovo"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-be/strings.xml b/java/com/android/incallui/res/values-be/strings.xml
index 46b5d39..274cac1 100644
--- a/java/com/android/incallui/res/values-be/strings.xml
+++ b/java/com/android/incallui/res/values-be/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Прапушчаны выклiк ад <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Бягучы выклік"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Бягучы выклік па працы"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Бягучы выклік праз Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Бягучы выклік па працы праз Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Бягучы выклік праз Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Бягучы выклік па працы праз Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"У чаканні"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Уваходны выклік"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Уваходны выклік з фота"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важны выклік з фота, паведамленнем і месцам"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важны ўваходны выклік з далучэннямі"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Уваходны выклік па працы"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Уваходны выклік праз Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Уваходны выклік па працы праз Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Уваходны выклік праз Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Уваходны выклік па працы праз Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Уваходны выклiк ад абанента, якога падазраваюць у спаме"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Запыт уваходнага відэавыкліку"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Не абслугоўваецца"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Прыняць відэавыклік"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Каб зрабіць выклік, спачатку выключыце рэжым \"У самалёце\"."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Не зарэгістраваны ў сетцы."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Мабільная сетка недаступная."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мабільная сетка недаступная."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Каб зрабіць выклік, увядзіце сапраўдны нумар."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Выклік немагчымы."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Пачатак паслядоўнасці MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Завяршыць выклік"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Канферэнц-выклік"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"У выкліку"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Працягваецца выклік з выкарыстаннем сотавай перадачы даных…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Немагчыма пераключыцца на сетку Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Відэавыклік застанецца ў мабільнай сетцы. Можа спаганяцца стандартная аплата за перадачу даных."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Працягваецца выклік з выкарыстаннем мабільнай перадачы даных…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Немагчыма пераключыцца на сетку Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Відэавыклік застанецца ў мабільнай сетцы. Можа спаганяцца стандартная аплата за перадачу даных."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Больш не паказваць"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-bg/strings.xml b/java/com/android/incallui/res/values-bg/strings.xml
index 84bffa0..b3c1f3f 100644
--- a/java/com/android/incallui/res/values-bg/strings.xml
+++ b/java/com/android/incallui/res/values-bg/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Пропуснато обаждане от <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Текущо обаждане"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Текущо служебно обаждане"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Текущо обаждане през Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Текущо служебно обаждане през Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Текущо обаждане през Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Текущо служебно обаждане през Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Задържане на обаждането"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Вх. обаждане"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Входящо обаждане със снимка"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важно обаждане с местоположение, снимка, съобщение"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важно входящо обаждане с прикачени файлове"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Входящо служебно обаждане"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Входящо обаждане през Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Входящо служебно обаждане през Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Входящо обаждане през Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Входящо служебно обаждане през Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Входящо обаждане – възможен спам"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Входяща заявка за видеовръзка"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Няма покритие"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Приемане на видеообаждането"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Първо изключете самолетния режим, за да може да осъществите обаждане."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Няма регистрация в мрежата."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Няма достъп до клетъчната мрежа."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Няма мобилна мрежа."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"За да извършите обаждане, въведете валиден номер."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Не може да се извърши обаждане."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Стартира се последователността MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Край на обаждането"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конферентно обаждане"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"В разговор"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Обаждането продължава през мобилната връзка за данни…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Превключването към Wi-Fi мрежа не бе възможно"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видеообаждането ще остане в мобилната мрежа. Важат стандартните тарифи за данни."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Обаждането продължава през мобилната връзка за данни…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Превключването към Wi-Fi мрежа не бе възможно"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видеообаждането ще остане в мобилната мрежа. Важат стандартните тарифи за данни."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Това да не се показва отново"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-bn/strings.xml b/java/com/android/incallui/res/values-bn/strings.xml
index fc93830..a964f81 100644
--- a/java/com/android/incallui/res/values-bn/strings.xml
+++ b/java/com/android/incallui/res/values-bn/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> এর থেকে মিসড কল"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"চালু থাকা কল"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"চলমান কাজের কল"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"চলমান ওয়াই-ফাই কল"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"চলমান ওয়াই-ফাই কাজের কল"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"চালু থাকা ওয়াই-ফাই কল"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"চালু থাকা ওয়াই-ফাই কাজের কল"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"সাময়িকভাবে স্থগিত রাখা হয়েছে"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ইনকামিং কল"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ফটো সহ ইনকামিং কল"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ফটো, বার্তা এবং অবস্থান সহ গুরুত্বপূর্ণ ইনকামিং কল"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"সংযুক্তিগুলি সহ গুরুত্বপূর্ণ ইনকামিং কল"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"আগত কাজের কল"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"আগত ওয়াই-ফাই কল"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"আগত ওয়াই-ফাই কাজের কল"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"আগত ওয়াই-ফাই কল"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"আগত ওয়াই-ফাই কাজের কল"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"আগত সন্দেহভাজন স্প্যাম কল"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"আগত ভিডিও অনুরোধ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"কোনো পরিষেবা নেই"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ভিডিও কলটি নিন"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"একটি কল করতে, প্রথমে বিমান মোড বন্ধ করুন৷"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"নেটওয়ার্কে নিবন্ধিত নয়৷"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"সেলুলার নেটওয়ার্ক উপলব্ধ নয়।"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"মোবাইল নেটওয়ার্ক উপলব্ধ নয়৷"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"কোনো কল স্থাপন করতে, একটি বৈধ নম্বর লিখুন৷"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"কল করা যাবে না৷"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI ক্রম চালু হচ্ছে…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"কল কেটে দিন"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"কনফারেন্স কল"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"কলে থাকাকালীন"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"সেলুলার ডেটা ব্যবহার করে কল করা চালিয়ে যান…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi নেটওয়ার্কে পাল্টানো গেল না"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ভিডিও কল সেলুলার নেটওয়ার্কেই থাকবে৷ স্ট্যান্ডার্ড চার্জ প্রযোজ্য হতে পারে৷"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"মোবাইল ডেটা ব্যবহার করে কল করা চালিয়ে যান…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"ওয়াই-ফাই নেটওয়ার্কে পাল্টানো গেল না"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ভিডিও কল মোবাইল নেটওয়ার্কেই থাকবে৷ স্ট্যান্ডার্ড ডেটা চার্জ প্রযোজ্য হতে পারে৷"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"এটি আমাকে আর দেখাবেন না"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-bs/strings.xml b/java/com/android/incallui/res/values-bs/strings.xml
index c695080..996eb98 100644
--- a/java/com/android/incallui/res/values-bs/strings.xml
+++ b/java/com/android/incallui/res/values-bs/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Propušteni poziv od kontakta <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Poziv u toku"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Poslovni poziv u toku"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi poziv u toku"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Wi-Fi poslovni poziv u toku"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi-Fi poziv je u toku"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Wi-Fi poslovni poziv je u toku"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Na čekanju"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Dolazni poziv"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Dolazni poziv s fotografijom"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Važan poziv s fotografijom, porukom i lokacijom"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Važan dolazni poziv s prilozima"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Dolazni poslovni poziv"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Dolazni Wi-Fi poziv"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Dolazni Wi-Fi poslovni poziv"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Dolazni Wi-Fi poziv"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Dolazni Wi-Fi poslovni poziv"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Mogući neželjeni dolazni poziv"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Zahtjev za dolazni videopoziv"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nema mreže"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Primi videopoziv"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Da uputite poziv, isključite Način rada u avionu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nije registrirano na mreži."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilna mreža nije dostupna."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilna mreža nije dostupna."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Da uputite poziv, upišite važeći broj."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nije moguće pozvati."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Pokretanje MMI sekvence u toku…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Prekini poziv"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferencijski poziv"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Poziv u toku"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Poziv se nastavlja pomoću mobilnih podataka…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Prebacivanje na Wi-Fi mrežu nije moguće"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videopoziv će ostati na mobilnoj mreži. Mogu nastati standardni troškovi prijenosa podataka."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Nastavak poziva prijenosom mobilnih podataka…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Prebacivanje na Wi-Fi mrežu nije moguće"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videopoziv će ostati na mobilnoj mreži. Mogu nastati standardni troškovi prijenosa podataka."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne prikazuj ponovo"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ca/strings.xml b/java/com/android/incallui/res/values-ca/strings.xml
index 5148db5..f4d56a2 100644
--- a/java/com/android/incallui/res/values-ca/strings.xml
+++ b/java/com/android/incallui/res/values-ca/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Trucada perduda de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Trucada en procés"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Trucada de feina en curs"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Trucada Wi-Fi en curs"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Trucada de feina per Wi-Fi en curs"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Trucada per Wi-Fi en curs"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Trucada de feina per Wi-Fi en curs"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Trucada entrant"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Trucada entrant amb foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Trucada entrant important amb foto, missatge i ubicació"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Trucada entrant important amb fitxers adjunts"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Trucada de feina entrant"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Trucada Wi-Fi entrant"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Trucada de feina per Wi-Fi entrant"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Trucada per Wi-Fi entrant"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Trucada de feina per Wi-Fi entrant"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Presumpta trucada brossa entrant"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Sol·licitud de vídeo entrant"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sense servei"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Accepta la videotrucada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Per fer una trucada, primer apagueu el mode d\'avió."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"No registrat a la xarxa."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"La xarxa mòbil no està disponible."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"La xarxa mòbil no està disponible."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Per realitzar una trucada, introdueix un número vàlid."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"No es pot trucar."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"S\'està iniciant la seqüència MMI..."</string>
@@ -125,7 +125,7 @@
     <string name="spam_notification_spam_call_expanded_text" msgid="1062029525759401658">"Segons les nostres sospites, l\'autor de la trucada és un emissor de contingut brossa. Si ens equivoquem, toca NO ÉS BROSSA per informar-nos-en."</string>
     <string name="spam_notification_report_spam_action_text" msgid="4829510418690824538">"Bloqueja i marca"</string>
     <string name="spam_notification_add_contact_action_text" msgid="307315138401483232">"Afegeix un contacte"</string>
-    <string name="spam_notification_not_spam_action_text" msgid="2576048366011852090">"No és contingut brossa"</string>
+    <string name="spam_notification_not_spam_action_text" msgid="2576048366011852090">"No és una trucada brossa"</string>
     <string name="spam_notification_block_spam_action_text" msgid="80045727259264724">"Bloqueja el número"</string>
     <string name="spam_notification_dialog_add_contact_action_text" msgid="5619696845681999506">"Afegeix als contactes"</string>
     <string name="spam_notification_dialog_block_report_spam_action_text" msgid="1821506089128547428">"Bloqueja i marca com a brossa"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Finalitza la trucada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conferència"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"En una trucada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"S\'està continuant la trucada mitjançant dades mòbils…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"No s\'ha pogut canviar a la xarxa Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"La videotrucada es mantindrà a la xarxa mòbil. És possible que s\'apliquin càrrecs de dades estàndard."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"S\'està continuant la trucada mitjançant dades mòbils…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"No s\'ha pogut canviar a la xarxa Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"La videotrucada continuarà a la xarxa mòbil. És possible que s\'hi apliquin càrrecs de dades estàndard."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"No ho tornis a mostrar"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-cs/strings.xml b/java/com/android/incallui/res/values-cs/strings.xml
index 9d69cfa..e604a52 100644
--- a/java/com/android/incallui/res/values-cs/strings.xml
+++ b/java/com/android/incallui/res/values-cs/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Zmeškaný hovor od volajícího <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Probíhající hovor"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Probíhající pracovní hovor"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Probíhající volání přes Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Probíhající pracovní hovor (Wi-Fi)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Probíhající hovor přes Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Probíhající pracovní hovor přes Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Přidržený hovor"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Příchozí hovor"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Příchozí hovor s fotkou"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Důležitý přích. hovor s fotkou, zprávou a polohou"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Důležitý příchozí hovor s přílohami"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Příchozí pracovní hovor"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Příchozí volání přes Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Příchozí pracovní hovor (Wi-Fi)"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Příchozí hovor přes Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Příchozí pracovní hovor přes Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"U příchozího hovoru máme podezření, že se jedná o spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Příchozí žádost o videohovor"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Žádný signál"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Převést videohovor sem"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Chcete-li telefonovat, vypněte nejprve režim Letadlo."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Přihlášení k síti nebylo úspěšné."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilní síť je nedostupná."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilní síť je nedostupná."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Chcete-li uskutečnit hovor, zadejte platné telefonní číslo."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Hovor nelze uskutečnit."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Spouštění sekvence MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Ukončit hovor"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferenční hovor"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Probíhá hovor"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Hovor pokračuje přes mobilní data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Přepnutí na síť Wi-Fi se nezdařilo"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videohovor zůstane na mobilní síti. Za datový přenos mohou být účtovány standardní poplatky."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Hovor pokračuje přes mobilní data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Přepnutí na síť Wi-Fi se nezdařilo"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videohovor zůstane na mobilní síti. Za datový přenos mohou být účtovány standardní poplatky."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Tuto zprávu příště nezobrazovat"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-da/strings.xml b/java/com/android/incallui/res/values-da/strings.xml
index 19de783..fbf7927 100644
--- a/java/com/android/incallui/res/values-da/strings.xml
+++ b/java/com/android/incallui/res/values-da/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Ubesvaret opkald fra <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Igangværende opkald"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Igangværende opkald i forbindelse med arbejde"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Igangværende opkald via Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Igangværende Wi-Fi-opkald i forbindelse med arbejde"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Igangværende Wi-Fi-opkald"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Igangværende Wi-Fi-opkald i forbindelse med arbejde"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ventende"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Indgående opkald"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Indgående opkald med billede"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Vigtigt opkald med billede, besked og placering"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Vigtigt indgående opkald med vedhæftede filer"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Indgående opkald i forbindelse med arbejde"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Indgående opkald via Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Indgående Wi-Fi-opkald i forbindelse med arbejde"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Indgående Wi-Fi-opkald"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Indgående Wi-Fi-opkald i forbindelse med arbejde"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Indgående formodet spamopkald"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Indgående videoanmodning"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ingen dækning"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Besvar videoopkald"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Slå Flytilstand fra først for at foretage et opkald."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ikke registreret på netværk."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilnetværket er ikke tilgængeligt."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilnetværket er ikke tilgængeligt."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Indtast et gyldigt nummer for at foretage et opkald."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Kan ikke ringe op."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Starter MMI-sekvens ..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Afslut opkald"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonmøde"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Opkald i gang"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Fortsætter opkaldet med mobildata…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Der kan ikke skiftes til Wi-Fi-netværk"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videoopkaldet bliver ved med at bruge mobilnetværket. Du skal muligvis betale et standardgebyr for data."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Opkaldet fortsættes med mobildata…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Du kunne ikke skifte til Wi-Fi-netværk"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videoopkaldet bliver ved med at bruge mobilnetværket. Du skal muligvis betale et standardgebyr for data."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Vis ikke dette igen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-de/strings.xml b/java/com/android/incallui/res/values-de/strings.xml
index a5f9602..0dce345 100644
--- a/java/com/android/incallui/res/values-de/strings.xml
+++ b/java/com/android/incallui/res/values-de/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Verpasster Anruf von <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Aktueller Anruf"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Aktueller geschäftlicher Anruf"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Aktiver WLAN-Anruf"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Aktueller geschäftlicher WLAN-Anruf"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Aktiver WLAN-Anruf"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Aktiver geschäftlicher WLAN-Anruf"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Gehaltener Anruf"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Eingehender Anruf"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Eingehender Anruf mit Foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Wichtiger eingehender Anruf mit Foto, Nachricht und Standort"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Wichtiger eingehender Anruf mit Anhängen"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Eingehender geschäftlicher Anruf"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Eingehender WLAN-Anruf"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Eingehender geschäftlicher WLAN-Anruf"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Eingehender WLAN-Anruf"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Eingehender geschäftlicher WLAN-Anruf"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Verdacht auf eingehenden Spam-Anruf"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Eingehende Videoanfrage"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"kein Dienst"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Videoanruf übernehmen"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Deaktiviere zunächst den Flugmodus, um einen Anruf zu tätigen."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nicht in Netzwerk registriert."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilfunknetz nicht verfügbar"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilfunknetz ist nicht verfügbar."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Gib eine gültige Nummer ein."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Anruf nicht möglich."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI-Sequenz wird gestartet..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Anruf beenden"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonkonferenz"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Anruf"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Anruf wird über Mobildaten fortgesetzt…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wechseln zu WLAN nicht möglich"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Der Videoanruf erfolgt weiter über das Mobilfunknetz. Es können Standardgebühren für die Datenübertragung anfallen."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Anruf wird über mobile Daten fortgesetzt…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wechseln zu WLAN nicht möglich"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Der Videoanruf erfolgt weiter über das Mobilfunknetz. Es können Standardgebühren für die Datenübertragung anfallen."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Meldung nicht mehr anzeigen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-el/strings.xml b/java/com/android/incallui/res/values-el/strings.xml
index 8ff6d2f..bc39e2a 100644
--- a/java/com/android/incallui/res/values-el/strings.xml
+++ b/java/com/android/incallui/res/values-el/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Αναπάντητη κλήση από <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Κλήση σε εξέλιξη"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Κλήση εργασίας σε εξέλιξη"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Κλήση Wi-Fi σε εξέλιξη"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Κλήση εργασίας μέσω Wi-Fi σε εξέλιξη"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Κλήση Wi-Fi σε εξέλιξη"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Κλήση εργασίας μέσω Wi-Fi σε εξέλιξη"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Σε αναμονή"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Εισερχόμενη κλήση"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Εισερχόμενη κλήση με φωτογραφία"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Σημαντική εισερχ. κλήση με φωτο, μήνυμα, τοποθεσία"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Σημαντική εισερχόμενη κλήση με συνημμένα"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Εισερχόμενη κλήση εργασίας"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Εισερχόμενη κλήση μέσω Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Εισερχόμενη κλήση εργασίας μέσω Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Εισερχόμενη κλήση μέσω Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Εισερχόμενη κλήση εργασίας μέσω Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Πιθανώς ανεπιθύμητη εισερχόμενη κλήση"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Αίτημα εισερχόμενου βίντεο"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Δίκτυο μη διαθέσιμο"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Λήψη βιντεοκλήσης"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Για να πραγματοποιήσετε μια κλήση, απενεργοποιήστε πρώτα τη λειτουργία πτήσης."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Δεν έχετε εγγραφεί στο δίκτυο."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Το δίκτυο κινητής τηλεφωνίας δεν είναι διαθέσιμο."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Το δίκτυο κινητής τηλεφωνίας δεν είναι διαθέσιμο."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Για να πραγματοποιήσετε μια κλήση, εισαγάγετε έναν έγκυρο αριθμό."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Δεν είναι δυνατή η κλήση."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Έναρξη ακολουθίας MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Τερματισμός κλήσης"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Κλήση συνδιάσκεψης"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Σε κλήση"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Συνέχεια κλήσης με χρήση δεδομένων κινητής τηλεφωνίας…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Δεν ήταν δυνατή η εναλλαγή σε δίκτυο Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Η βιντεοκλήση θα παραμείνει σε δίκτυο δεδομένων κινητής τηλεφωνίας; Ενδέχεται να ισχύουν βασικές χρεώσεις δεδομένων."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Συνέχιση κλήσης με χρήση δεδομένων κινητής τηλεφωνίας…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Δεν ήταν δυνατή η εναλλαγή σε δίκτυο Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Η βιντεοκλήση θα παραμείνει σε δίκτυο δεδομένων κινητής τηλεφωνίας; Ενδέχεται να ισχύουν βασικές χρεώσεις δεδομένων."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Να μην εμφανιστεί ξανά αυτό"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-en-rAU/strings.xml b/java/com/android/incallui/res/values-en-rAU/strings.xml
index 5e0d207..68509f0 100644
--- a/java/com/android/incallui/res/values-en-rAU/strings.xml
+++ b/java/com/android/incallui/res/values-en-rAU/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Missed call from <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"On-going call"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ongoing work call"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ongoing Wi-Fi call"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ongoing Wi-Fi work call"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Ongoing Wi‑Fi call"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Ongoing Wi‑Fi work call"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"On hold"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Incoming call"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Incoming call with photo"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Important call with photo, message and location"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Important incoming call with attachments"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Incoming work call"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Incoming Wi-Fi call"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Incoming Wi-Fi work call"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Incoming Wi‑Fi call"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Incoming Wi‑Fi work call"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Incoming suspected spam call"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Incoming video request"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"No service"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Selected network (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) unavailable"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Answer"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Hang up"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"In-stream video"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video"</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Voice"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Accept"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Decline"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Take video call"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"To place a call, first turn off Aeroplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Not registered on network."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobile network not available."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobile network not available."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"To place a call, enter a valid number."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Can\'t call."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Starting MMI sequence…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"End call"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conference call"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"On a call"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuing call using mobile data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Couldn\'t switch to Wi-Fi network"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video call will remain on mobile network. Standard data charges may apply."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuing call using mobile data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Couldn\'t switch to Wi‑Fi network"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video call will remain on the mobile network. Standard data charges may apply."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Do not show this again"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-en-rGB/strings.xml b/java/com/android/incallui/res/values-en-rGB/strings.xml
index 5e0d207..68509f0 100644
--- a/java/com/android/incallui/res/values-en-rGB/strings.xml
+++ b/java/com/android/incallui/res/values-en-rGB/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Missed call from <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"On-going call"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ongoing work call"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ongoing Wi-Fi call"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ongoing Wi-Fi work call"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Ongoing Wi‑Fi call"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Ongoing Wi‑Fi work call"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"On hold"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Incoming call"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Incoming call with photo"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Important call with photo, message and location"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Important incoming call with attachments"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Incoming work call"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Incoming Wi-Fi call"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Incoming Wi-Fi work call"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Incoming Wi‑Fi call"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Incoming Wi‑Fi work call"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Incoming suspected spam call"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Incoming video request"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"No service"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Selected network (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) unavailable"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Answer"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Hang up"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"In-stream video"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video"</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Voice"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Accept"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Decline"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Take video call"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"To place a call, first turn off Aeroplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Not registered on network."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobile network not available."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobile network not available."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"To place a call, enter a valid number."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Can\'t call."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Starting MMI sequence…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"End call"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conference call"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"On a call"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuing call using mobile data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Couldn\'t switch to Wi-Fi network"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video call will remain on mobile network. Standard data charges may apply."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuing call using mobile data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Couldn\'t switch to Wi‑Fi network"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video call will remain on the mobile network. Standard data charges may apply."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Do not show this again"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-en-rIN/strings.xml b/java/com/android/incallui/res/values-en-rIN/strings.xml
index 5e0d207..68509f0 100644
--- a/java/com/android/incallui/res/values-en-rIN/strings.xml
+++ b/java/com/android/incallui/res/values-en-rIN/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Missed call from <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"On-going call"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ongoing work call"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ongoing Wi-Fi call"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ongoing Wi-Fi work call"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Ongoing Wi‑Fi call"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Ongoing Wi‑Fi work call"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"On hold"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Incoming call"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Incoming call with photo"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Important call with photo, message and location"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Important incoming call with attachments"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Incoming work call"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Incoming Wi-Fi call"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Incoming Wi-Fi work call"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Incoming Wi‑Fi call"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Incoming Wi‑Fi work call"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Incoming suspected spam call"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Incoming video request"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"No service"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Selected network (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) unavailable"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Answer"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Hang up"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"In-stream video"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video"</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Voice"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Accept"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Decline"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Take video call"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"To place a call, first turn off Aeroplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Not registered on network."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobile network not available."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobile network not available."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"To place a call, enter a valid number."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Can\'t call."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Starting MMI sequence…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"End call"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conference call"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"On a call"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuing call using mobile data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Couldn\'t switch to Wi-Fi network"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video call will remain on mobile network. Standard data charges may apply."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuing call using mobile data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Couldn\'t switch to Wi‑Fi network"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video call will remain on the mobile network. Standard data charges may apply."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Do not show this again"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-es-rUS/strings.xml b/java/com/android/incallui/res/values-es-rUS/strings.xml
index d016711..b8584c7 100644
--- a/java/com/android/incallui/res/values-es-rUS/strings.xml
+++ b/java/com/android/incallui/res/values-es-rUS/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Llamada perdida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Llamada en curso"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Llamada de trabajo en curso"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Llamada por Wi-Fi en curso"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Llamada de trabajo con Wi-Fi en curso"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Llamada Wi-Fi en curso"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Llamada de trabajo Wi-Fi en curso"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Llamada entrante"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Llamada entrante con foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Llamada importante con foto, mensaje y ubicación"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Llamada entrante importante con archivos adjuntos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Llamada de trabajo entrante"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Llamada por Wi-Fi entrante"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Llamada de trabajo con Wi-Fi entrante"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Llamada Wi-Fi entrante"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Llamada de trabajo Wi-Fi entrante"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Posible llamada entrante de spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Solicitud de videollamada entrante"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sin servicio"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Atender videollamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para realizar una llamada, primero debes desactivar el modo avión."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"No registrado en la red."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Red móvil no disponible"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"La red móvil no está disponible."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para realizar una llamada, ingresa un número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"No se puede realizar la llamada."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iniciar la secuencia de MMI"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Finalizar llamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conferencia"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"En llamada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuando la llamada con datos móviles…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"No se pudo cambiar a la red Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"La videollamada permanecerá en la red móvil. Es posible que se te cobren cargos estándar por el uso de datos."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuando la llamada con datos móviles…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"No se pudo cambiar a la red Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"La videollamada permanecerá en la red móvil. Es posible que se te cobren cargos estándar por el uso de datos."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"No volver a mostrar esto"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-es/strings.xml b/java/com/android/incallui/res/values-es/strings.xml
index 472ea99..4dc2d72 100644
--- a/java/com/android/incallui/res/values-es/strings.xml
+++ b/java/com/android/incallui/res/values-es/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Llamada perdida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Llamada en curso"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Llamada de trabajo en curso"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Llamada Wi-Fi en curso"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Llamada Wi-Fi de trabajo en curso"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Llamada por Wi-Fi en curso"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Llamada de trabajo por Wi-Fi en curso"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Llamada entrante"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Llamada entrante con foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Llamada importante con foto, mensaje y ubicación"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Llamada entrante importante con archivos adjuntos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Llamada de trabajo entrante"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Llamada Wi-Fi entrante"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Llamada Wi-Fi de trabajo entrante"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Llamada por Wi-Fi entrante"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Llamada de trabajo por Wi-Fi entrante"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Llamada entrante sospechosa de spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Solicitud de videollamada entrante"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sin servicio"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Atender videollamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para realizar una llamada, primero debes desactivar el modo avión."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"No se ha podido conectar a la red"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"La red móvil no está disponible."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"La red móvil no está disponible."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para realizar una llamada, introduce un número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"No se puede establecer la llamada."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iniciando secuencia MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Finalizar llamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conferencia telefónica"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"En una llamada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuando la llamada con datos móviles…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"No se ha podido cambiar a la red Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"La videollamada seguirá mediante la red móvil. Es posible que se apliquen cargos por uso de datos."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuando la llamada con los datos móviles…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"No se ha podido cambiar a la red Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"La videollamada seguirá a través de la red móvil. Es posible que se apliquen cargos por el uso de datos."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"No volver a mostrar"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-et/strings.xml b/java/com/android/incallui/res/values-et/strings.xml
index 9eaa65f..ec1b230 100644
--- a/java/com/android/incallui/res/values-et/strings.xml
+++ b/java/com/android/incallui/res/values-et/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Vastamata kõne helistajalt <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Käimasolev kõne"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Käimasolev töökõne"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Pooleliolev WiFi-kõne"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Käimasolev töökõne WiFi kaudu"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Käimasolev WiFi-kõne"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Käimasolev WiFi-töökõne"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ootel"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Sissetulev kõne"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Sissetulev kõne koos fotoga"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Tähtis sisset. kõne koos foto, sõnumi ja asukohaga"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Tähtis sissetulev kõne koos manustega"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Sissetulev töökõne"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Sissetulev WiFi-kõne"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Sissetulev töökõne WiFi kaudu"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Sissetulev WiFi-kõne"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Sissetulev WiFi-töökõne"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Arvatav sissetulev rämpskõne"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Sissetulev videotaotlus"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Teenus puudub"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Alusta videokõnet"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Helistamiseks lülitage lennurežiim välja."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ei ole võrku registreeritud."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobiilsidevõrk pole saadaval."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobiilsidevõrk pole saadaval."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Helistamiseks sisestage kehtiv number."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Ei saa helistada."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI-jada alustamine ..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Kõne lõpetamine"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konverentskõne"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Pooleliolev kõne"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Kõne jätkatakse mobiilse andmeside kaudu …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Ei saanud WiFi-võrgule lülitada"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videokõne jääb mobiilsidevõrku. Rakenduda võivad tavapärased andmetasud."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Kõnet jätkatakse mobiilse andmeside kaudu …"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"WiFi-võrgule ei saanud lülituda"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videokõne jääb mobiilsidevõrku. Rakenduda võivad tavapärased andmesidetasud."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ära seda enam näita"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-eu/strings.xml b/java/com/android/incallui/res/values-eu/strings.xml
index 4db9e10..c8fe005 100644
--- a/java/com/android/incallui/res/values-eu/strings.xml
+++ b/java/com/android/incallui/res/values-eu/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Deitzaile honen dei bat galdu duzu: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Abian den deia"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Laneko dei bat abian da"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi deia abian"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Wi-Fi bidezko laneko dei bat abian da"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi-Fi bidezko deia"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Wi-Fi bidezko laneko deia"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Zain"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Sarrerako deia"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Jasotako deia, argazkia duena"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Jasotako dei garrant., arg., mez. eta kok. dituena"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Jasotako dei garrantzitsua, eranskinak dituena"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Laneko dei bat jaso da"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Sarrerako Wi-Fi deia"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Wi-Fi bidezko laneko dei bat jaso da"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Jasotako Wi-Fi bidezko deia"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Jasotako Wi-Fi bidezko laneko deia"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Ustezko spam-deia jaso duzu"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Sarrerako bideo-eskaera"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ez dago zerbitzurik"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Erantzun bideo-deiari"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Dei bat egiteko, Hegaldi modua desaktibatu behar duzu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ez dago sarean erregistratuta."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Sare mugikorra ez dago erabilgarri."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Sare mugikorra ez dago erabilgarri."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Deitzeko, idatzi balio duen zenbaki bat."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Ezin da deitu."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI sekuentzia hasten…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Amaitu deia"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferentzia-deia"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Deia abian da"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Datu-konexioren bidez jarraitzen ari da deia egiten…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Ezin izan da aldatu Wi-Fi sarera"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Datu mugikorren bidez egiten jarraituko da bideo-deia. Baliteke datuak erabiltzearen ondorioz ohiko kostuak kobratzea."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Datu-konexioaren bidez egiten jarraituko da deia…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Ezin izan da aldatu Wi-Fi sarera"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Datu-konexioaren bidez egiten jarraituko da bideo-deia. Baliteke datuak erabiltzearen ondorioz ohiko kostuak kobratzea."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ez erakutsi berriro"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-fa/strings.xml b/java/com/android/incallui/res/values-fa/strings.xml
index f816bd0..a36d164 100644
--- a/java/com/android/incallui/res/values-fa/strings.xml
+++ b/java/com/android/incallui/res/values-fa/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"تماس بی‌پاسخ از <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"تماس جاری"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"تماس کاری خروجی"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"‏تماس از طریق Wi-Fi در حال انجام است"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"‏تماس کاری Wi-Fi خروجی"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"‏تماس Wi-Fi درحال انجام"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"‏تماس کاری Wi-Fi درحال انجام"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"در انتظار"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"تماس ورودی"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"تماس ورودی به همراه عکس"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"تماس ورودی مهم به همراه عکس، پیام و مکان"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"تماس ورودی مهم به همراه پیوست"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"تماس کاری ورودی"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"‏تماس Wi-Fi ورودی"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"‏تماس کاری Wi-Fi ورودی"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"‏تماس Wi-Fi ورودی"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"‏تماس کاری Wi-Fi ورودی"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"تماس هرزنامه احتمالی ورودی"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"درخواست تماس ویدئویی ورودی"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"بدون سرویس"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"انتقال تماس ویدئویی"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"برای برقراری یک تماس، ابتدا حالت هواپیما را خاموش کنید."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"در شبکه ثبت نشده است."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"شبکه تلفن همراه در دسترس نیست."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"شبکه تلفن همراه دردسترس نیست."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"برای برقراری تماس، یک شماره معتبر وارد کنید."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"نمی‌توانید تماس بگیرید."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"‏شروع ترتیب MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"پایان تماس"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"تماس کنفرانسی"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"در تماس"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ادامه تماس با استفاده از داده شبکه تلفن همراه..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"‏به شبکه Wi-Fi جابه‌جا نشد"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"تماس ویدئویی همچنان از شبکه تلفن همراه استفاده می‌کند. هزینه‌های داده استاندارد اعمال می‌شود."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ادامه تماس با استفاده از داده شبکه همراه…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"‏جابجایی به شبکه Wi-Fi انجام نشد"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"تماس ویدیویی همچنان ازطریق شبکه تلفن همراه انجام می‌شود. ممکن است هزینه‌های استاندارد داده اعمال شود."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"دوباره نشان داده نشود"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-fi/strings.xml b/java/com/android/incallui/res/values-fi/strings.xml
index 995e7a3..f13ff26 100644
--- a/java/com/android/incallui/res/values-fi/strings.xml
+++ b/java/com/android/incallui/res/values-fi/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Vastaamaton puhelu: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Käynnissä oleva puhelu"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Käynnissä oleva työpuhelu"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Käynnissä oleva Wi-Fi-puhelu"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Käynnissä oleva Wi-Fi-työpuhelu"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Käynnissä oleva Wi-Fi-puhelu"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Käynnissä oleva Wi-Fi-työpuhelu"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Pidossa"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Saapuva puhelu"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Kuvan sisältävä saapuva puhelu"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Tärkeä liitteitä sisältävä saapuva puhelu"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Tärkeä liitteitä sisältävä saapuva puhelu"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Saapuva työpuhelu"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Saapuva Wi-Fi-puhelu"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Saapuva Wi-Fi-työpuhelu"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Saapuva Wi-Fi-puhelu"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Saapuva Wi-Fi-työpuhelu"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Tämä puhelu saattaa olla häirikköpuhelu."</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Saapuva videopyyntö"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Katvealueella"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Vastaa videopuheluun"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Poista lentokonetila käytöstä ennen puhelun soittamista."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ei rekisteröity verkkoon."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Matkapuhelinverkko ei ole käytettävissä."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobiilidataverkko ei ole käytettävissä."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Soita antamalla kelvollinen numero."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Puhelua ei voi soittaa."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Aloitetaan MMI-koodisekvenssiä..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Päätä puhelu"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Puhelinneuvottelu"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Puhelu käynnissä"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Jatketaan puhelua mobiilitiedonsiirron avulla…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Siirtyminen Wi-Fi-verkkoon epäonnistui."</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videopuhelu soitetaan matkapuhelinverkon kautta. Operaattori voi veloittaa tiedonsiirrosta hinnastonsa mukaan."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Jatketaan puhelua mobiilidatayhteydellä…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Vaihto Wi-Fi-verkkoon epäonnistui."</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videopuhelu soitetaan mobiilidatayhteyden kautta. Operaattori voi veloittaa tiedonsiirrosta."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Älä näytä tätä uudelleen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-fr-rCA/strings.xml b/java/com/android/incallui/res/values-fr-rCA/strings.xml
index 6f4d8da..e83658d 100644
--- a/java/com/android/incallui/res/values-fr-rCA/strings.xml
+++ b/java/com/android/incallui/res/values-fr-rCA/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Appel manqué de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Appel en cours"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Appel en cours - travail"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Appel Wi-Fi en cours"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Appel Wi-Fi en cours - travail"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Appel Wi-Fi en cours"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Appel professionnel Wi-Fi en cours"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En attente"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Appel entrant"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Appel entrant avec photo"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Appel important avec photo, message et position"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Appel entrant important avec pièces jointes"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Appel entrant - travail"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Appel Wi-Fi entrant"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Appel Wi-Fi entrant - travail"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Appel Wi-Fi entrant"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Appel professionnel Wi-Fi entrant"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"L\'appel entrant est suspect"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Demande de vidéo reçue"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Aucun service"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Répondre à l\'appel vidéo"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Veuillez désactiver le mode Avion avant de passer un appel."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Non enregistré sur le réseau"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Réseau cellulaire non disponible."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Réseau cellulaire non disponible."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Pour faire un appel, entrez un numéro valide."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Impossible d\'appeler."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Lancement de la séquence IHM..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Mettre fin à l\'appel"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conférence téléphonique"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Appel en cours"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Poursuite de l\'appel à l\'aide de données cellulaires en cours…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Impossible de passer à un réseau Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"L\'appel vidéo restera sur le réseau cellulaire. Des frais de données standards peuvent s\'appliquer."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Poursuite de l\'appel utilisant des données mobiles en cours…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Impossible de passer à un réseau Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"L\'appel vidéo restera sur le réseau cellulaire. Des frais de données standards peuvent s\'appliquer."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne plus afficher"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-fr/strings.xml b/java/com/android/incallui/res/values-fr/strings.xml
index c77fc19..162c242 100644
--- a/java/com/android/incallui/res/values-fr/strings.xml
+++ b/java/com/android/incallui/res/values-fr/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Appel manqué de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Appel en cours"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Appel professionnel en cours"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Appel Wi-Fi en cours"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Appel Wi-Fi professionnel en cours"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Appel Wi-Fi en cours"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Appel Wi-Fi professionnel en cours"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En attente"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Appel entrant"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Appel entrant avec photo"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Appel important avec photo, message et position"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Appel entrant important avec pièces jointes"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Appel professionnel entrant"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Appel Wi-Fi entrant"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Appel Wi-Fi professionnel entrant"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Appel Wi-Fi entrant"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Appel Wi-Fi professionnel entrant"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Appel entrant indésirable suspecté"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Demande de vidéo reçue"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Aucun service"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Répondre à l\'appel vidéo"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Veuillez d\'abord désactiver le mode Avion, afin d\'effectuer un appel."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Non enregistré sur le réseau."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Réseau mobile non disponible."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Réseau mobile non disponible"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Pour émettre un appel, veuillez saisir un numéro valide."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Impossible d\'émettre l\'appel."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Lancement de la séquence IHM..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Mettre fin à l\'appel"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conférence téléphonique"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Appel en cours"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuer l\'appel en utilisant les données mobiles…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Impossible de passer au réseau Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"L\'appel vidéo va continuer sur le réseau mobile. Des frais standard liés à la consommation de données peuvent être facturés."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Poursuite de l\'appel via les données mobiles…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Impossible de passer au réseau Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"L\'appel vidéo va continuer sur le réseau mobile. Des frais standards liés à la consommation de données peuvent être facturés."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne plus afficher"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-gl/strings.xml b/java/com/android/incallui/res/values-gl/strings.xml
index 53278e5..d926b1b 100644
--- a/java/com/android/incallui/res/values-gl/strings.xml
+++ b/java/com/android/incallui/res/values-gl/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Chamada perdida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Chamada en curso"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chamada de traballo saínte"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chamada wifi saínte"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chamada wifi de traballo saínte"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Chamada saínte por wifi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Chamada de traballo saínte por wifi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"En espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Chamada entrante"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Chamada entrante con foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Chamada entrante importante con foto, mensaxe e localización"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Chamada entrante importante con anexos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Chamada de traballo entrante"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Chamada wifi entrante"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Chamada wifi de traballo entrante"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Chamada entrante por wifi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Chamada de traballo entrante por wifi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Chamada entrante sospeitosa de spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Solicitude de vídeo entrante"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sen servizo"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Responder á videochamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para facer unha chamada, primeiro desactiva o modo avión."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Sen rexistro na rede"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rece móbil non dispoñible."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"A rede móbil non está dispoñible."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para realizar unha chamada, introduce un número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Non se pode chamar."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iniciando secuencia MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Finalizar chamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conferencia telefónica"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Chamada en curso"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuando a chamada con datos móbiles…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Non se puido cambiar á rede wifi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"A videochamada permanecerá na rede móbil. É posible que o operador aplique tarifas de datos estándar."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuando a chamada con datos móbiles…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Non se puido cambiar á rede wifi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"A videochamada permanecerá na rede móbil. É posible que se apliquen tarifas de datos estándar."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Non mostrar de novo"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-gu/strings.xml b/java/com/android/incallui/res/values-gu/strings.xml
index 8b1ebe8..4a90fc5 100644
--- a/java/com/android/incallui/res/values-gu/strings.xml
+++ b/java/com/android/incallui/res/values-gu/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> નો કૉલ ચૂકી ગયાં"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"ચાલી રહેલ કૉલ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ચાલી રહેલ કાર્ય કૉલ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ચાલુ Wi-Fi કૉલ"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ચાલી રહેલ Wi-Fi કાર્ય કૉલ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"ચાલી રહેલ Wi-Fi કૉલ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"ચાલી રહેલ Wi-Fi કાર્ય કૉલ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"હોલ્ડ પર"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ઇનકમિંગ કૉલ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ફોટો સાથે ઇનકમિંગ કૉલ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ફોટો, સંદેશ અને સ્થાન સાથે મહત્વનો ઇનકમિંગ કૉલ"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"જોડાણો સાથે મહત્વનો ઇનકમિંગ કૉલ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ઇનકમિંગ કાર્ય કૉલ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ઇનકમિંગ Wi-Fi કૉલ"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ઇનકમિંગ Wi-Fi કાર્ય કૉલ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ઇનકમિંગ Wi-Fi કૉલ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ઇનકમિંગ Wi-Fi કાર્ય કૉલ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ઇનકમિંગ શંકાસ્પદ સ્પામ કૉલ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"આવનાર વિડિઓ વિનંતી"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"કોઈ સેવા નથી"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"વિડિઓ કૉલ લો"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"કૉલ કરવા માટે, પહેલાં એરપ્લેન મોડને બંધ કરો."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"નેટવર્ક પર નોંધણી કરાયેલ નથી."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"સેલ્યુલર નેટવર્ક ઉપલબ્ધ નથી."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"મોબાઇલ નેટવર્ક ઉપલબ્ધ નથી."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"કૉલ કરવા માટે, માન્ય નંબર દાખલ કરો."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"કૉલ કરી શકાતો નથી."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI અનુક્રમ પ્રારંભ કરી રહ્યાં છે…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"કૉલ સમાપ્ત કરો"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"કૉન્ફરન્સ કૉલ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"કૉલમાં"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"સેલ્યુલર ડેટાની મદદથી કૉલ ચાલુ રાખી રહ્યાં છે…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi નેટવર્ક પર સ્વિચ કરી શક્યાં નથી"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"વિડિઓ કૉલ સેલ્યુલર નેટવર્ક પર રહેશે. માનક ડેટા શુલ્ક લાગુ થઈ શકે છે."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"મોબાઇલ ડેટાની મદદથી કૉલ ચાલુ રાખી રહ્યાં છે…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi નેટવર્ક પર સ્વિચ કરી શક્યાં નથી"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"વિડિઓ કૉલ, મોબાઇલ નેટવર્ક પર રહેશે. માનક ડેટા શુલ્ક લાગુ થઈ શકે છે."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"આ ફરીથી બતાવશો નહીં"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-hi/strings.xml b/java/com/android/incallui/res/values-hi/strings.xml
index 09563df..d3a4dcf 100644
--- a/java/com/android/incallui/res/values-hi/strings.xml
+++ b/java/com/android/incallui/res/values-hi/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> के छूटे कॉल"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"चल रही कॉल"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"कार्यस्थल की जारी कॉल"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"चल रहा वाई-फ़ाई कॉल"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"कार्यस्थल की जारी वाई-फ़ाई कॉल"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"जारी Wi‑Fi कॉल"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"जारी Wi‑Fi कार्य कॉल"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"होल्ड पर"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"इनकमिंग कॉल"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"फ़ोटो के साथ इनकमिंग कॉल"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"फोटो, संदेश और स्थान के साथ महत्वपूर्ण इनकमिंग कॉल"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"अटैचमेंट के साथ महत्वपूर्ण इनकमिंग कॉल"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"कार्यस्थल की आवक कॉल"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"इनकमिंग वाई-फ़ाई कॉल"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"कार्यस्थल की वाई-फ़ाई आवक कॉल"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"इनकमिंग Wi‑Fi कॉल"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"इनकमिंग Wi‑Fi कार्य कॉल"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"संदिग्ध आवक स्पैम कॉल"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"इनकमिंग वीडियो अनुरोध"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"कोई सेवा नहीं"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"वीडियो कॉल लें"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"कॉल करने के लिए, पहले विमान मोड बंद करें."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"नेटवर्क पर पंजीकृत नहीं."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"सेल्युलर नेटवर्क उपलब्ध नहीं."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"मोबाइल नेटवर्क उपलब्ध नहीं है."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"कॉल करने के लिए, मान्‍य नंबर डालें."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"कॉल नहीं किया जा सकता."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI अनुक्रम प्रारंभ हो रहा है…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"कॉल समाप्त करें"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"कॉन्फ़्रेंस कॉल"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"कॉल में"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"सेल्युलर डेटा का उपयोग करके कॉल जारी रखा जा रहा है…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"वाई-फ़ाई नेटवर्क में नहीं बदला जा सका"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"वीडियो कॉल सेल्यूलर नेटवर्क पर बना रहेगा. मानक डेटा शुल्क लागू हो सकते हैं."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"मोबाइल डेटा का उपयोग करके कॉल जारी रखा जा रहा है…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi‑Fi नेटवर्क पर स्विच नहीं कर सका"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"वीडियो कॉल मोबाइल नेटवर्क पर बना रहेगा. मानक डेटा शुल्क लागू हो सकते हैं."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"इसे दोबारा न दिखाएं"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-hr/strings.xml b/java/com/android/incallui/res/values-hr/strings.xml
index 7af1613..2d389e6 100644
--- a/java/com/android/incallui/res/values-hr/strings.xml
+++ b/java/com/android/incallui/res/values-hr/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Propušten poziv kontakta <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Poziv u tijeku"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Poslovni poziv u tijeku"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi poziv u tijeku"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Poslovni Wi-Fi poziv u tijeku"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi-Fi poziv u tijeku"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Poslovni Wi-Fi poziv u tijeku"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Na čekanju"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Dolazni poziv"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Dolazni poziv s fotografijom"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Važan poziv s fotografijom, porukom i lokacijom"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Važan dolazni poziv s privicima"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Dolazni poslovni poziv"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Dolazni Wi-Fi poziv"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Dolazni poslovni Wi-Fi poziv"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Dolazni Wi-Fi poziv"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Dolazni poslovni Wi-Fi poziv"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Mogući neželjeni dolazni poziv"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Dolazni zahtjev za videopoziv"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nema usluge"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Preuzimanje videopoziva"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Da biste uspostavili poziv, prvo isključite način rada u zrakoplovu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nije registrirano na mreži."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilna mreža nije dostupna."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilna mreža nije dostupna."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Unesite važeći broj da biste uspostavili poziv."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Pozivanje nije moguće."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Pokretanje MMI sekvence…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Prekid poziva"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferencijski poziv"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Poziv u tijeku"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Poziv se nastavlja pomoću mobilnih podataka..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Prebacivanje na Wi-Fi mrežu nije moguće"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videopoziv će ostati na mobilnoj mreži. Možda ćete morati platiti podatkovni promet."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Poziv se nastavlja pomoću mobilnih podataka..."</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Prebacivanje na Wi-Fi mrežu nije moguće"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videopoziv će ostati na mobilnoj mreži. Možda ćete morati platiti podatkovni promet."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne prikazuj ponovno"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-hu/strings.xml b/java/com/android/incallui/res/values-hu/strings.xml
index 08d374b..fe52421 100644
--- a/java/com/android/incallui/res/values-hu/strings.xml
+++ b/java/com/android/incallui/res/values-hu/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Nem fogadott hívás: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Hívás folyamatban"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Folyamatban lévő munkahelyi hívás"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Folyamatban lévő Wi-Fi-hívás"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Folyamatban lévő munkahelyi hívás Wi-Fin keresztül"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Folyamatban lévő Wi-Fi-hívás"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Folyamatban lévő munkahelyi hívás Wi-Fin keresztül"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Tartásban"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Bejövő hívás"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Bejövő hívás fotóval"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Fontos bejövő hívás fotóval, üzenettel és hellyel"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Fontos bejövő hívás mellékletekkel"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Bejövő munkahelyi hívás"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Beérkező Wi-Fi-hívás"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Bejövő munkahelyi hívás Wi-Fin keresztül"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Beérkező Wi-Fi-hívás"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Bejövő munkahelyi hívás Wi-Fin keresztül"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Bejövő gyanús spamhívás"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Bejövő videokérés"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nincs szolgáltatás"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Videohívás fogadása"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Híváskezdeményezéshez kapcsolja ki a Repülőgép üzemmódot."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nincs regisztrálva a hálózaton."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"A mobilhálózat nem érhető el."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"A mobilhálózat nem érhető el."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Hívásindításhoz adjon meg egy érvényes számot."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"A hívás sikertelen."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI-sorozat indítása..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Hívás befejezése"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferenciahívás"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Hívásban"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Hívás folytatása mobil-adatkapcsolaton keresztül…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nem sikerült Wi-Fi-hálózatra váltani"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"A videohívást továbbra is a mobilhálózaton folytatja. A mobilszolgáltató a normál adatforgalmi díjat számítja fel."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Hívás folytatása mobil-adatkapcsolaton keresztül…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nem sikerült Wi-Fi-hálózatra váltani"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"A videohívást továbbra is a mobilhálózaton folytatja. A mobilszolgáltató a normál adatforgalmi díjat számítja fel."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ne jelenjen meg többé"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-hy/strings.xml b/java/com/android/incallui/res/values-hy/strings.xml
index f6496d1..4287820 100644
--- a/java/com/android/incallui/res/values-hy/strings.xml
+++ b/java/com/android/incallui/res/values-hy/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Բաց թողնված զանգ <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>-ից"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Ընթացիկ զանգը"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ընթացիկ աշխատանքային զանգ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ընթացիկ զանգ Wi-Fi-ի միջոցով"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ընթացիկ աշխատանքային Wi-Fi զանգ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Ընթացիկ զանգ Wi-Fi-ի միջոցով"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Ընթացիկ աշխատանքային զանգ Wi-Fi-ի միջոցով"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Սպասում"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Մուտքային զանգ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Մուտքային զանգ՝ լուսանկարով"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Կարևոր մուտքային զանգ՝ կցորդներով"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Կարևոր մուտքային զանգ՝ կցորդներով"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Մուտքային աշխատանքային զանգ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Մուտքային զանգ Wi-Fi-ի միջոցով"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Մուտքային աշխատանքային Wi-Fi զանգ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Մուտքային զանգ Wi-Fi-ի միջոցով"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Մուտքային աշխատանքային զանգ Wi-Fi-ի միջոցով"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Մուտքային զանգը հավանաբար լցոն է"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Մուտքային տեսազանգի հայցում"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ծառայություններ չկան"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Ընդունել տեսազանգը"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Զանգի կատարման համար նախ անջատեք թռիչքային ռեժիմը:"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ցանցում գրանցված չէ:"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Բջջային ցանցն անհասանելի է:"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Բջջային ցանցն անհասանելի է:"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Զանգ կատարելու համար մուտքագրեք ճիշտ համար:"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Հնարավոր չէ զանգել:"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Մեկնարկում է MMI հաջորդականությունը..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Ավարտել զանգը"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Կոնֆերանս զանգ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Զանգ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Զանգն այժմ բջջային ինտերնետով է ընթանում…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Չհաջողվեց միանալ Wi-Fi ցանցին"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Տեսազանգը կշարունակվի բջջային ցանցով: Գանձումը կկատարվի ըստ ձեր սակագնային պլանի:"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Զանգն այժմ բջջային ինտերնետով է ընթանում…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Չհաջողվեց միանալ Wi-Fi ցանցին"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Տեսազանգը կշարունակվի բջջային ցանցով: Գանձումը կկատարվի ըստ ձեր սակագնային պլանի:"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Այլևս ցույց չտալ"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-in/strings.xml b/java/com/android/incallui/res/values-in/strings.xml
index 279e72d..6de6136 100644
--- a/java/com/android/incallui/res/values-in/strings.xml
+++ b/java/com/android/incallui/res/values-in/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Panggilan tak terjawab dari <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Panggilan yang sedang berlangsung"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Panggilan telepon kerja yang sedang berlangsung"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Panggilan Wi-Fi keluar"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Panggilan Wi-Fi kerja yang sedang berlangsung"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Panggilan Wi-Fi keluar"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Panggilan kerja Wi-Fi yang berlangsung"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ditangguhkan"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Panggilan masuk"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Panggilan masuk dengan foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Panggilan penting dengan foto, pesan, dan lokasi"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Panggilan masuk penting dengan lampiran"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Panggilan telepon kerja yang masuk"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Panggilan Wi-Fi masuk"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Panggilan telepon Wi-Fi kerja yang masuk"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Panggilan Wi-Fi masuk"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Panggilan kerja Wi-Fi masuk"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Panggilan masuk yang diduga spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Permintaan video masuk"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Tidak ada layanan"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Lakukan Video Call"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Untuk melakukan panggilan, pertama-tama matikan mode Pesawat."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Tidak terdaftar pada jaringan."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Jaringan seluler tidak tersedia."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Jaringan seluler tidak tersedia."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Untuk melakukan panggilan telepon, masukkan nomor yang valid."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Tidak dapat menelepon."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Memulai urutan MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Akhiri panggilan"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telewicara"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Sedang menelepon"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Melanjutkan panggilan menggunakan data seluler..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Tidak dapat beralih ke jaringan Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video call akan tetap di jaringan seluler. Biaya data standar mungkin berlaku."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Melanjutkan panggilan menggunakan data seluler..."</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Tidak dapat beralih ke jaringan Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video call akan tetap di jaringan seluler. Tarif data standar mungkin berlaku."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Jangan tampilkan ini lagi"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-is/strings.xml b/java/com/android/incallui/res/values-is/strings.xml
index 795e952..8393510 100644
--- a/java/com/android/incallui/res/values-is/strings.xml
+++ b/java/com/android/incallui/res/values-is/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Ósvarað símtal frá <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Samtal í gangi"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Vinnusímtal í gangi"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi símtal stendur yfir"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Vinnusímtal í gangi um Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi-Fi símtal stendur yfir"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Vinnusímtal í gangi um Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Í bið"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Móttekið símtal"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Móttekið símtal með mynd"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Mikilvægt móttekið símtal með mynd, skilaboðum og staðsetningu"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Mikilvægt móttekið símtal með viðhengjum"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Vinnusímtal berst"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Wi-Fi símtal berst"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Vinnusímtal berst um Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Wi-Fi símtal berst"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Vinnusímtal berst um Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Símtal sem berst er hugsanlega úr ruslnúmeri"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Myndbeiðni berst"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ekkert símasamband"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Þiggja myndsímtal"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Til að hringja símtal þarftu fyrst að slökkva á flugstillingu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ekki skráð á símkerfi."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Farsímakerfi ekki til staðar."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Farsímakerfi ekki tiltækt."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Sláðu inn gilt númer til að hringja símtal."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Ekki hægt að hringja."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Ræsir MMI-runu…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Ljúka símtali"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Símafundur"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Í símtali"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Símtal heldur áfram og notar farsímagögn…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Ekki var hægt að skipta yfir á Wi-Fi-net"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Myndsímtal verður áfram á farsímaneti. Stöðluð gjöld fyrir gagnaflutning kunna að eiga við."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Símtal heldur áfram og notar farsímagögn…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Ekki var hægt að skipta yfir á Wi-Fi-net"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Myndsímtal verður áfram á farsímaneti. Stöðluð gjöld fyrir gagnaflutning kunna að eiga við."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ekki birta þetta aftur"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-it/strings.xml b/java/com/android/incallui/res/values-it/strings.xml
index 836b934..ca2b4b1 100644
--- a/java/com/android/incallui/res/values-it/strings.xml
+++ b/java/com/android/incallui/res/values-it/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Chiamata senza risposta da <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Chiamata in corso"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chiamata di lavoro in corso"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chiamata Wi-Fi in corso"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chiamata di lavoro tramite Wi-Fi in corso"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Chiamata Wi-Fi in corso"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Chiamata di lavoro tramite Wi-Fi in corso"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"In attesa"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Chiamata in arrivo"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Chiamata in arrivo con foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Chiamata importante in arrivo con foto, messaggio e posizione"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Chiamata importante in arrivo con allegati"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Chiamata di lavoro in arrivo"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Chiamata Wi-Fi in arrivo"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Chiamata di lavoro in arrivo tramite Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Chiamata Wi-Fi in arrivo"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Chiamata di lavoro tramite Wi-Fi in arrivo"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Chiamata di presunto spam in arrivo"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Richiesta video in arrivo"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nessun servizio"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Ricevi videochiamata"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Per fare una telefonata, disattiva la modalità aereo."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Non registrato sulla rete."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rete cellulare non disponibile."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rete mobile non disponibile."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Per effettuare una chiamata, inserisci un numero valido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Impossibile chiamare."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Inizio sequenza MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Termina chiamata"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Audioconferenza"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Chiamata in corso"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Proseguimento della chiamata utilizzando la rete dati…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Impossibile passare alla rete Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"La videochiamata rimarrà sulla rete cellulare. Potrebbero essere applicati costi standard per il traffico dati."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Proseguimento della chiamata utilizzando i dati mobili…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Impossibile passare alla rete Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"La videochiamata rimarrà sulla rete mobile. Potrebbero essere applicati costi standard per il traffico dati."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Non mostrare più questo messaggio"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-iw/strings.xml b/java/com/android/incallui/res/values-iw/strings.xml
index 195cb0f..326078a 100644
--- a/java/com/android/incallui/res/values-iw/strings.xml
+++ b/java/com/android/incallui/res/values-iw/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"שיחה שלא נענתה מאת <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"שיחה פעילה"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"שיחת עבודה פעילה"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"‏שיחת Wi-Fi מתבצעת"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"‏שיחת עבודה פעילה ברשת WiFi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"‏שיחת Wi-Fi פעילה"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"‏שיחת עבודה פעילה ברשת Wi‑Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"בהמתנה"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"שיחה נכנסת"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"שיחה נכנסת עם תמונה"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"שיחה נכנסת חשובה עם תמונה, הודעה ומיקום"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"שיחה נכנסת חשובה עם קבצים מצורפים"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"שיחת עבודה נכנסת"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"‏שיחת Wi-Fi נכנסת"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"‏שיחת עבודה נכנסת ברשת WiFi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"‏שיחת Wi-Fi נכנסת"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"‏שיחת עבודה נכנסת ברשת Wi‑Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"השיחה הנכנסת חשודה כספאם"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"בקשת וידאו נכנסת"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"אין שירות"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"קבל את שיחת הווידאו"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"כדי להתקשר, כבה תחילה את מצב טיסה."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"לא רשום ברשת."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"רשת סלולרית אינה זמינה."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"הרשת הסלולרית אינה זמינה."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"כדי להתקשר, הזן מספר טלפון חוקי."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"לא ניתן להתקשר."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"‏מתחיל רצף MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"סיים שיחה"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"שיחת ועידה"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"בשיחה"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ממשיך את השיחה באמצעות הרשת הסלולרית..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"‏לא ניתן לעבור לרשת Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"שיחת הווידאו תמשיך להיות ברשת הסלולרית. ייתכן שתחויב על ידי הספק הסלולרי בגין צריכת נתונים."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ממשיך את השיחה באמצעות הרשת הסלולרית…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"‏לא ניתן לעבור לרשת Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"שיחת הווידאו תמשיך להיות ברשת הסלולרית. ייתכן שתחויב על שימוש בנתונים."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"אל תציג זאת שוב"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ja/strings.xml b/java/com/android/incallui/res/values-ja/strings.xml
index 0e186fa..a54c4e1 100644
--- a/java/com/android/incallui/res/values-ja/strings.xml
+++ b/java/com/android/incallui/res/values-ja/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> さんからの不在着信"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"通話中"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"仕事の通話中"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi通話を発信中"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"仕事の Wi-Fi 通話中"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi-Fi 通話を発信中"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"仕事の Wi-Fi 通話を発信中"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"保留中"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"通話着信"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"着信（写真あり）"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"重要な着信（写真、メッセージ、位置情報あり）"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"重要な着信（添付ファイルあり）"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"仕事の通話が着信中"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Wi-Fi通話が着信中"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"仕事の Wi-Fi 通話が着信中"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Wi-Fi 通話が着信中"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"仕事の Wi-Fi 通話が着信中"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"迷惑電話の疑いがある通話を着信しています"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ビデオハングアウトリクエスト着信"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"通信サービスなし"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ビデオハングアウトを引き継ぐ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"機内モードをOFFにしてから発信してください。"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ご加入の通信サービスがありません"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"モバイルネットワークが利用できません。"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"モバイル ネットワークを利用できません。"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"発信するには、有効な番号を入力してください。"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"発信できません。"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMIシーケンスを開始中..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"通話を終了"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"グループ通話"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"通話中"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"モバイルデータを使用して通話を継続しています…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi ネットワークに切り替えることができませんでした"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"引き続きモバイル ネットワークを使用してビデオ通話を続行します。通常のデータ通信料が適用される場合があります。"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"モバイルデータを使用して通話を継続しています…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi ネットワークに切り替えることができませんでした"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"引き続きモバイル ネットワークを使用してビデオハングアウトを続行します。通常のデータ通信料が適用される場合があります。"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"今後このメッセージを表示しない"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ka/strings.xml b/java/com/android/incallui/res/values-ka/strings.xml
index 6c46bd0..fed398b 100644
--- a/java/com/android/incallui/res/values-ka/strings.xml
+++ b/java/com/android/incallui/res/values-ka/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"გამოტოვებული ზარი <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>-ისგან"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"მიმდინარე ზარი"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"მიმდინარე ზარი (სამსახური)"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"მიმდინარე Wi-Fi ზარი"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"მიმდინარე Wi-Fi ზარი (სამსახური)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"მიმდინარე Wi-Fi ზარი"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"მიმდინარე Wi-Fi ზარი (სამსახური)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"შეყოვნების რეჟიმში"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"შემომავალი ზარი"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"შემომავალი ზარი ფოტოთი"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ზარი ფოტოთი, შეტყობინებით და მდებარეობით"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"მნიშვნელოვანი შემომავალი ზარი დანართებით"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"შემომავალი ზარი (სამსახური)"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"შემომავალი Wi-Fi ზარი"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"შემომავალი Wi-Fi ზარი (სამსახური)"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"შემომავალი Wi-Fi ზარი"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"შემომავალი Wi-Fi ზარი (სამსახური)"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"შემომავალი ზარი - სავარაუდოდ სპამი"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"შემომავალი ვიდეოს მოთხოვნა"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"სერვისი არ არის"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Take ვიდეო ზარი"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ზარის განსახორციელებლად, ჯერ თვითმფრინავის რეჟიმი უნდა გამორთოთ."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ქსელში რეგისტრირებული არ არის."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"ფიჭური ქსელი მიუწვდომელია"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"მობილური ქსელი მიუწვდომელია."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ზარის განხორციელებისათვის, შეიყვანეთ მოქმედი ნომერი."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"არ ირეკება."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI თანმიმდევრობის დაწყება…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ზარის დასრულება"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"საკონფერენციო ზარი"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"მონაწილეობს ზარში"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ზარი გრძელდება მობილური ინტერნეტის გამოყენებით…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi ქსელზე გადართვა ვერ მოხერხდა"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ვიდეოზარი ფიჭურ ქსელში დარჩება. შესაძლოა მოგიწიოთ მობილური ინტერნეტის სტანდარტული ფასის გადახდა."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ზარი გრძელდება მობილური ინტერნეტის გამოყენებით…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi ქსელზე გადართვა ვერ მოხერხდა"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ვიდეოზარი მობილური ინტერნეტის ქსელში დარჩება. შესაძლოა მოგიწიოთ მობილური ინტერნეტის სტანდარტული საფასურის გადახდა."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"აღარ მაჩვენო"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-kk/strings.xml b/java/com/android/incallui/res/values-kk/strings.xml
index 310ba4d..42ac9b0 100644
--- a/java/com/android/incallui/res/values-kk/strings.xml
+++ b/java/com/android/incallui/res/values-kk/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> қоңырауы өткізіп алынған"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Ағымдағы қоңырау"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ағымдағы жұмыс қоңырауы"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ағымдық Wi-Fi қоңырауы"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ағымдағы Wi-Fi жұмыс қоңырауы"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Қазіргі Wi-Fi қоңырауы"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Қазіргі Wi-Fi жұмыс қоңырауы"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Күтуде"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Келген қоңырау"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Сурет тіркелген кіріс қоңырау"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Сурет, хабар және орын дерегі тіркелген маңызды кіріс қоңырау"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Тіркемелері бар маңызды кіріс қоңырау"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Кіріс жұмыс қоңырауы"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Кіріс Wi-Fi қоңырауы"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Кіріс Wi-Fi жұмыс қоңырауы"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Кіріс Wi-Fi қоңырауы"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Кіріс Wi-Fi жұмыс қоңырауы"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Кіріс қоңырауы спам болуы мүмкін"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Кіріс бейне сұрау"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Қызмет көрсетілмейді"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Бейне қоңырауды бері бұру"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Қоңырау шалу үшін алдымен Ұшақ режимін өшіріңіз."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Желіде тіркелмеген."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Ұялы желі қол жетімді емес."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобильдік желі қолжетімсіз."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Қоңырау шалу үшін жарамды нөмірді енгізіңіз."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Қоңырау шалу мүмкін емес."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI қатарын бастау…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Қоңырауды аяқтау"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Мәжіліс қоңырауы"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Бос емес"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Қоңырау ұялы дерек арқылы жалғасады..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi желісіне қосылу мүмкін болмады"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Бейне қоңырау ұялы байланыс желісінде қалады. Стандартты деректер ақысы алынуы мүмкін."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Қоңырау мобильдік желі арқылы жалғасуда…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi желісіне қосылу мүмкін болмады"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Бейне қоңырау мобильдік желіде қалады. Стандартты мобильдік байланыс ақысы алынуы мүмкін."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Мұны қайтадан көрсетпеу"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-km/strings.xml b/java/com/android/incallui/res/values-km/strings.xml
index 4fbafef..c6238de 100644
--- a/java/com/android/incallui/res/values-km/strings.xml
+++ b/java/com/android/incallui/res/values-km/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"ខកខាន​ទទួល​ពី <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"កំពុង​បន្ត​ការ​ហៅ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ការហៅពីកន្លែងការងារកំពុងដំណើរការ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ការហៅតាម Wi-Fi កំពុងបន្ត"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ការហៅតាម Wi-Fi ពីកន្លែងការងារកំពុងដំណើរការ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"ការហៅតាម Wi-Fi កំពុង​ដំណើរការ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"ការហៅតាម Wi-Fi ពីកន្លែងការងារ​កំពុង​ដំណើរការ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"រង់ចាំ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ការ​ហៅ​ចូល"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ការហៅ​ចូល​​ដែល​មាន​រូបថត"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ការ​ហៅ​ចូល​ដែល​សំខាន់​មាន​រូបថត សារ និង​ទីតាំង"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ការហៅ​​ចូល​ដែល​សំខាន់​មាន​ឯកសារ​ភ្ជាប់"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"កំពុងហៅចូលពីកន្លែងការងារ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"មានការហៅចូលមកតាម Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"កំពុងហៅចូលពីកន្លែងការងារតាម Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"មានការហៅចូលមកតាម Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"មាន​ការ​ហៅ​ចូល​ពី​កន្លែង​ការងារ​តាម Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ការ​ហៅ​បន្លំ​​ចូល​​​ដែល​សង្ស័យ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"សំណើ​ការ​ហៅ​ជា​វីដេអូ​ចូល"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"គ្មាន​សេវា"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ទទួល​យក​ការ​ហៅ​វីដេអូ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ដើម្បី​កំណត់​ការ​ហៅ ដំបូង​ត្រូវ​បិទ​របៀប​នៅ​ពេល​ជិះ​យន្តហោះ។"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"មិន​បាន​ចុះ​ឈ្មោះ​នៅ​លើ​បណ្ដាញ។"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"បណ្ដាញ​ចល័ត​មិន​អាច​ប្រើ​បាន។"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"សេវា​ទូរសព្ទ​ចល័ត​មិន​អាច​ប្រើប្រាស់​បាន។"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ដើម្បីធ្វើការហៅ បញ្ចូលលេខដែលមានសុពលភាព។"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"មិនអាចហៅបានទេ។"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"កំពុង​ចាប់ផ្ដើម​លំដាប់ MMI ..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"បញ្ចប់ការហៅ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"ហៅជា​សន្និសីទ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ស្ថិត​​ក្នុង​ការ​ហៅ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"កំពុង​បន្ត​ហៅ​ទូរស័ព្ទ​ដោយ​ប្រើ​ទិន្នន័យ​ទូរស័ព្ទ​ចល័ត..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"មិន​អាច​ប្ដូរ​ទៅ​បណ្ដាញ Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ការហៅ​ជា​វីដេអូ​នឹង​នៅ​តែ​​ស្ថិត​លើ​បណ្ដាញ​ទូរសព្ទ​ចល័ត។ អាច​​នឹង​​គិតថ្លៃ​ទិន្នន័យ​តាម​តម្លៃ​​ស្តង់ដារ។"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"កំពុង​បន្ត​ការហៅ​ទូរសព្ទ​ ដោយ​ប្រើប្រាស់​ទិន្នន័យ​ចល័ត…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"មិន​អាច​ប្ដូរ​ទៅ​បណ្ដាញ Wi-Fi បាន​ទេ"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ការហៅ​តាម​វីដេអូ​នឹង​នៅតែ​មាន​នៅ​លើ​បណ្ដាញ​ទូរសព្ទ។ អាច​នឹង​គិតថ្លៃ​ទិន្នន័យ​តាម​តម្លៃ​ស្តង់ដារ។"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"កុំ​បង្ហាញ​វា​ម្ដង​ទៀត"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-kn/strings.xml b/java/com/android/incallui/res/values-kn/strings.xml
index 5d47c7e..cb47e35 100644
--- a/java/com/android/incallui/res/values-kn/strings.xml
+++ b/java/com/android/incallui/res/values-kn/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> ಅವರಿಂದ ಮಿಸ್ಡ್ ಕಾಲ್"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಕರೆ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ಕೆಲಸದ ಕರೆ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ವೈ-ಫೈ ಕರೆ"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ವೈ-ಫೈ ಕೆಲಸದ ಕರೆ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ವೈ-ಫೈ ಕರೆ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"ಚಾಲ್ತಿಯಲ್ಲಿರುವ ವೈ-ಫೈ ಕೆಲಸದ ಕರೆ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ತಡೆಹಿಡಿಯಲಾಗಿದೆ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ಒಳಬರುವ ಕರೆ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ಫೋಟೋದೊಂದಿಗೆ ಒಳಬರುತ್ತಿರುವ ಕರೆ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ಪೋಟೋ, ಸಂದೇಶ ಮತ್ತು ಸ್ಥಳದೊಂದಿಗೆ ಒಳಬರುತ್ತಿರುವ ಪ್ರಮುಖ ಕರೆ"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ಲಗತ್ತುಗಳೊಂದಿಗೆ ಒಳಬರುತ್ತಿರುವ ಪ್ರಮುಖ ಕರೆ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ಒಳಬರುವ ಕೆಲಸದ ಕರೆ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ಒಳಬರುವ ವೈ-ಫೈ ಕರೆ"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ಒಳಬರುವ ವೈ-ಫೈ ಕೆಲಸದ ಕರೆ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ಒಳಬರುವ ವೈ-ಫೈ ಕರೆ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ಒಳಬರುವ ವೈ-ಫೈ ಕೆಲಸದ ಕರೆ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ಒಳಬರುವ ಶಂಕಿತ ಸ್ಪ್ಯಾಮ್ ಕರೆ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ಒಳಬರುವ ವೀಡಿಯೊ ವಿನಂತಿ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ಯಾವುದೇ ಸೇವೆಯಿಲ್ಲ"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ವೀಡಿಯೊ ಕರೆ ತೆಗೆದುಕೊಳ್ಳಿ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ಕರೆ ಮಾಡಲು, ಮೊದಲು ಏರ್‌ಪ್ಲೇನ್‌‌ ಮೋಡ್‌‌ ಆಫ್‌ ಮಾಡಿ."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ನೆಟ್‌ವರ್ಕ್‌ನಲ್ಲಿ ಇನ್ನೂ ನೋಂದಣಿಯಾಗಿಲ್ಲ."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"ಸೆಲ್ಯುಲಾರ್ ನೆಟ್‌ವರ್ಕ್‌ ಲಭ್ಯವಿಲ್ಲ."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"ಮೊಬೈಲ್‌ ನೆಟ್‌ವರ್ಕ್‌ ಲಭ್ಯವಿಲ್ಲ."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ಕರೆಯನ್ನು ಮಾಡಲು, ಮಾನ್ಯವಾದ ಸಂಖ್ಯೆಯನ್ನು ನಮೂದಿಸಿ."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"ಕರೆ ಮಾಡಲು ಸಾಧ್ಯವಿಲ್ಲ."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI ಅನುಕ್ರಮ ಪ್ರಾರಂಭವಾಗುತ್ತಿದೆ…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ಕರೆ ಅಂತ್ಯಗೊಳಿಸಿ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"ಕಾನ್ಫರೆನ್ಸ್ ಕರೆ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ಕರೆಯಲ್ಲಿ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ಸೆಲ್ಯುಲಾರ್ ಡೇಟಾ ಬಳಸಿಕೊಂಡು ಕರೆ ಮುಂದುವರಿಸಲಾಗುತ್ತಿದೆ…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"ವೈ-ಫೈ ನೆಟ್‍ವರ್ಕ್‌ಗೆ ಬದಲಾಯಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ಸೆಲ್ಯುಲಾರ್ ನೆಟ್‌ವರ್ಕ್‌ಗೆ ವೀಡಿಯೊ ಕರೆ ಹಾಗೆಯೇ ಉಳಿಯುತ್ತದೆ. ಪ್ರಮಾಣಿತ ಡೇಟಾ ಶುಲ್ಕಗಳು ಅನ್ವಯಿಸಬಹುದು."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ಮೊಬೈಲ್ ಡೇಟಾ ಬಳಸಿಕೊಂಡು ಕರೆ ಮುಂದುವರಿಸಲಾಗುತ್ತಿದೆ…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"ವೈ-ಫೈ ನೆಟ್‍ವರ್ಕ್‌ಗೆ ಬದಲಾಯಿಸಲು ಸಾಧ್ಯವಿಲ್ಲ"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ವೀಡಿಯೊ ಕರೆ ಮೊಬೈಲ್ ನೆಟ್‌ವರ್ಕ್‌ನಲ್ಲಿ ಹಾಗೆಯೇ ಉಳಿಯುತ್ತದೆ. ಪ್ರಮಾಣಿತ ಡೇಟಾ ಶುಲ್ಕಗಳು ಅನ್ವಯಿಸಬಹುದು."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ಮತ್ತೆ ಇದನ್ನು ತೋರಿಸಬೇಡ"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ko/strings.xml b/java/com/android/incallui/res/values-ko/strings.xml
index 44c5338..676ba08 100644
--- a/java/com/android/incallui/res/values-ko/strings.xml
+++ b/java/com/android/incallui/res/values-ko/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g>의 부재중 전화"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"현재 통화"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"발신 업무 전화"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi 발신 전화"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"발신 Wi-Fi 업무 전화"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"진행 중인 Wi-Fi 통화"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"진행 중인 Wi-Fi 업무 통화"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"대기 중"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"수신전화"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"사진이 있는 수신 전화"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"사진, 메시지, 위치가 있는 중요한 수신 전화"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"첨부파일이 있는 중요한 수신 전화"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"수신 업무 전화"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Wi-Fi 수신 전화"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"수신 Wi-Fi 업무 전화"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"수신 Wi-Fi 통화"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"수신 Wi-Fi 업무 통화"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"의심스러운 스팸 발신자로부터 온 전화"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"수신 동영상 요청"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"서비스 불가"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"화상 통화 받기"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"전화를 걸려면 먼저 비행기 모드를 해제하세요."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"네트워크에서 등록되지 않았습니다."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"사용 가능한 이동통신망이 없습니다."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"모바일 네트워크를 사용할 수 없습니다."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"전화를 걸려면 올바른 번호를 입력하세요."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"전화를 걸 수 없습니다."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI 시퀀스 시작 중..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"통화 종료"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"다자간 통화"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"통화 중"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"모바일 데이터를 사용하여 계속 통화 중…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi 네트워크로 전환할 수 없습니다."</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"화상 통화가 모바일 네트워크에서 유지됩니다. 표준 데이터 요금이 부과될 수 있습니다."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"모바일 데이터를 사용하여 통화를 계속합니다…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi 네트워크로 전환할 수 없습니다."</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"화상 통화가 모바일 네트워크에서 계속됩니다. 표준 데이터 요금이 부과될 수 있습니다."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"다시 표시하지 않음"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ky/strings.xml b/java/com/android/incallui/res/values-ky/strings.xml
index 0f8ee3c..1f60604 100644
--- a/java/com/android/incallui/res/values-ky/strings.xml
+++ b/java/com/android/incallui/res/values-ky/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> дегенден кабыл алынбаган чалуу"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Учурдагы чалуу"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Учурда болуп жаткан чалуу (жумуш боюнча)"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Аткаруудагы Wi-Fi чалуу"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Учурда болуп жаткан Wi-Fi чалуу (жумуш боюнча)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Учурдагы Wi-Fi чалуу"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Учурдагы Wi-Fi чалуу (жумуш боюнча)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Күтүлүүдө"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Кирүүчү чалуу"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Сүрөтү бар кирүүчү чалуу"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Сүрөт, билдирүү жана жайгашкан жер бар маанилүү чалуу"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Тиркемелери бар маанилүү кирүүчү чалуу"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Жумуш боюнча келип жаткан чалуу"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Кирүүчү Wi-Fi чалуу"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Жумуш боюнча келип жаткан Wi-Fi чалуу"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Келип жаткан Wi-Fi чалуу"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Жумуш боюнча келип жаткан Wi-Fi чалуу"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Келип жаткан чалуу спам окшойт"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Келип жаткан видео сурамы"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Байланыш жок"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Видео чалууну кабыл алуу"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Чалуу үчүн, адегенде учак режимин өчүрүңүз."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Тармакта катталган эмес."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Мобилдик тармак жеткиликтүү эмес."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобилдик тармак жок."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Чалуу үчүн, жарактуу номер киргизиңиз."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Чалынбай жатат."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI кезеги башталууда…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Чалууну бүтүрүү"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конференц-чалуу"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Чалууда"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Уюлдук дайындарды пайдалануу менен чалууну улантууда..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi тармагына туташа албай койдук"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видео чалуу уюлдук тармак аркылуу аткарылат. Стандарттык тариф боюнча акы алынышы мүмкүн."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Мобилдик дайындарды пайдалануу менен чалууну улантууда…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi тармагына туташа албай койдук"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видео чалуу мобилдик тармак аркылуу аткарылат. Стандарттык тариф боюнча акы алынышы мүмкүн."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Экинчи көрсөтүлбөсүн"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-lo/strings.xml b/java/com/android/incallui/res/values-lo/strings.xml
index 56335d4..45a2a40 100644
--- a/java/com/android/incallui/res/values-lo/strings.xml
+++ b/java/com/android/incallui/res/values-lo/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"ສາຍບໍ່ໄດ້ຮັບຈາກ <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"ສາຍທີ່ກຳລັງໂທອອກ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ສາຍໂທອອກຈາກບ່ອນເຮັດວຽກ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ການ​ໂທ Wi​-Fi ທີ່ດໍາເນີນຢູ່"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ສາຍໂທອອກ Wi-Fi ຈາກບ່ອນເຮັດວຽກ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"ການໂທ Wi-Fi ທີ່ດໍາເນີນຢູ່"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"ການໂທ Wi-Fi ບ່ອນເຮັດວຽກທີ່ດໍາເນີນຢູ່"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ພັກສາຍຊົ່ວຄາວ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ສາຍໂທເຂົ້າ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ສາຍໂທເຂົ້າພ້ອມຮູບພາບ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ສາຍໂທເຂົ້າສຳຄັນພ້ອມຮູບພາບ, ຂໍ້ຄວາມ ແລະ ສະຖານທີ່"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ສາຍໂທເຂົ້າສຳຄັນພ້ອມໄຟລ໌ແນບ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ສາຍໂທເຂົ້າຈາກບ່ອນເຮັດວຽກ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ສາຍໂທເຂົ້າ Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ສາຍໂທເຂົ້າ Wi-Fi ຈາກບ່ອນເຮັດວຽກ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ສາຍໂທເຂົ້າ Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ສາຍໂທເຂົ້າ Wi-Fi ບ່ອນເຮັດວຽກ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ມີການໂທທີ່ຄາດວ່າເປັນສະແປມໂທເຂົ້າມາ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"​ຄຳ​ຮ້ອງ​ຂໍ​ວິ​ດີ​ໂອ​ເຂົ້າ​ມາ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ບໍ່ມີບໍລິການ"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ຮັບສາຍວິດີໂອ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ເພື່ອໂທລະສັບ, ໃຫ້ປິດໂໝດຢູ່ເທິງຍົນກ່ອນ."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ບໍ່ໄດ້ລົງທະບຽນໃນເຄືອຂ່າຍ."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"ບໍ່​ມີ​ເຄືອ​ຂ່າຍ​ມື​ຖື​ທີ່​ສາ​ມາດ​ໃຊ້​ໄດ້."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"ເຄືອຂ່າຍມືຖືບໍ່ສາມາດໃຊ້ໄດ້."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ເພື່ອ​ທີ່​ຈະ​ໂທ, ປ້ອນ​ເບີ​ໂທ​ທີ່​ໃຊ້​ໄດ້​ເຂົ້າ​ໄປ."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"ບໍ່​ສາ​ມາດ​ໂທ​ໄດ້."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"ກຳລັງເລີ່ມຕົ້ນລຳດັບ MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ວາງສາຍ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"ການປະຊຸມທາງໂທລະສັບ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ຢູ່ໃນສາຍ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ສືບຕໍ່ການໂທໂດຍໃຊ້ອິນເຕີເນັດມືຖື…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"ບໍ່ສາມາດສະຫຼັບໄປໃຊ້ເຄືອຂ່າຍ Wi-Fi ໄດ້"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ການໂທດ້ວຍວິດີໂອຈະຍັງໃຊ້ຜ່ານເຄືອຂ່າຍມືຖືຢູ່ ໂດຍອາດມີການຮຽກເກັບຄ່າບໍລິການຕາມປົກກະຕິ."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ກຳລັງສືບຕໍ່ສາຍໂດຍໃຊ້ອິນເຕີເນັດມືຖື…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"ບໍ່ສາມາດສະຫຼັບໄປໃຊ້ເຄືອຂ່າຍ Wi-Fi ໄດ້"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ການໂທວິດີໂອຈະຍັງຄົງຢູ່ໃນເຄືອຂ່າຍມືຖືຕໍ່ໄປ. ອາດມີການຮຽກເກັບຄ່າບໍລິການມາດຕະຖານ."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ບໍ່ຕ້ອງສະແດງຂໍ້ຄວາມນີ້ອີກ"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-lt/strings.xml b/java/com/android/incallui/res/values-lt/strings.xml
index 4d4a0c0..e63ca70 100644
--- a/java/com/android/incallui/res/values-lt/strings.xml
+++ b/java/com/android/incallui/res/values-lt/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Praleistas skambutis nuo <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Vykstantis pokalbis"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Vykstantis darbo skambutis"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Vykstantis „Wi-Fi“ skambutis"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Vykstantis „Wi-Fi“ darbo skambutis"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Vykstantis „Wi-Fi“ skambutis"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Vykstantis „Wi-Fi“ darbo skambutis"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Sulaikyta"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Gaunamasis skambutis"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Gaunamasis skambutis su nuotrauka"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Svarbus gaunam. skamb. su nuotr., praneš. ir viet."</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Svarbus gaunamasis skambutis su priedais"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Gaunamasis darbo skambutis"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Gaunamasis „Wi-Fi“ skambutis"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Gaunamasis „Wi-Fi“ darbo skambutis"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Gaunamasis „Wi-Fi“ skambutis"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Gaunamasis „Wi-Fi“ darbo skambutis"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Gaunamasis įtartinas šlamšto skambutis"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Gaunama vaizdo skambučio užklausa"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nėra paslaugos"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Pasirinktas tinklas (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) negalimas"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Atsakyti"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Padėti ragelį"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"Vaizdo skambutis"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Vaizdo skam."</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Balsas"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Atsiliepti"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Atmesti"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Atlikti vaizdo skambutį"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Jei norite skambinti, išjunkite lėktuvo režimą."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Neregistruota tinkle."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Korinis tinklas nepasiekiamas"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobiliojo ryšio tinklas nepasiekiamas."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Kad galėtumėte paskambinti, įveskite tinkamą numerį."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nepavyko paskambinti."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Paleidžiama MMI seka..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Baigti skambutį"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferencinis skambutis"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Skambinant"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Skambutis tęsiamas naudojant mobiliojo ryšio duomenis…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nepavyko prisijungti prie „Wi-Fi“ tinklo"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Vaizdo skambutis ir toliau bus vykdomas naudojant mobiliojo ryšio tinklą. Gali būti taikomi įprasti duomenų mokesčiai."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Skambutis tęsiamas naudojant mobiliojo ryšio duomenis…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nepavyko prisijungti prie „Wi-Fi“ tinklo"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Vaizdo skambutis ir toliau bus vykdomas naudojant mobiliojo ryšio tinklą. Gali būti taikomi įprasti duomenų mokesčiai."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Daugiau to nerodyti"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-lv/strings.xml b/java/com/android/incallui/res/values-lv/strings.xml
index 9be46c4..441733a 100644
--- a/java/com/android/incallui/res/values-lv/strings.xml
+++ b/java/com/android/incallui/res/values-lv/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Neatbildēts zvans no: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Pašreizējā saruna"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Notiekošs darba zvans"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Notiekošs Wi-Fi zvans"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Notiekošs darba Wi-Fi zvans"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Notiekošs Wi-Fi zvans"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Notiekošs darba Wi-Fi zvans"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Aizturēts"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Ienākošais zvans"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Ienākošais zvans ar fotoattēlu"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Zvans ar fotoattēlu, ziņojumu un atrašanās vietu"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Svarīgs ienākošais zvans ar pielikumiem"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Ienākošs darba zvans"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Ienākošs Wi-Fi zvans"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Ienākošs darba Wi-Fi zvans"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Ienākošs Wi-Fi zvans"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Ienākošs darba Wi-Fi zvans"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Ienākošs, iespējams, nevēlams zvans"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Ienākošs video pieprasījums"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nav pakalpojuma"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Pārsūtīt videozvanu"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Lai veiktu zvanu, vispirms izslēdziet lidojuma režīmu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Tīklā nav reģistrēts."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilais tīkls nav pieejams."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilais tīkls nav pieejams."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Lai veiktu zvanu, ievadiet derīgu numuru."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nevar veikt zvanu."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Notiek MMI secības startēšana…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Beigt zvanu"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferences zvans"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Notiek zvans"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Zvans tiek turpināts, izmantojot mobilos datus…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nevarēja pārslēgt uz Wi-Fi tīklu"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videozvans tiks turpināts mobilo sakaru tīklā. Var tikt piemērota standarta maksa par datu pārraidi."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Zvans tiek turpināts, izmantojot mobilos datus…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nevarēja pārslēgt uz Wi-Fi tīklu"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videozvans tiks turpināts mobilo sakaru tīklā. Var tikt piemērota standarta maksa par datu pārraidi."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Vairs nerādīt šo ziņojumu"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-mk/strings.xml b/java/com/android/incallui/res/values-mk/strings.xml
index 03be1d9..b712fe0 100644
--- a/java/com/android/incallui/res/values-mk/strings.xml
+++ b/java/com/android/incallui/res/values-mk/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Пропуштен повик од <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Тековен повик"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Тековен работен повик"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Појдовен повик преку Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Тековен работен повик преку Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Тековен повик преку Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Тековен работен повик преку Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"На чекање"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Дојдовен повик"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Дојдовен повик со фотографија"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важен дојдовен повик со фото., порака и локација"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важен дојдовен повик со прилози"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Дојдовен работен повик"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Дојдовен повик преку Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Дојдовен работен повик преку Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Дојдовен повик преку Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Дојдовен работен повик преку Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Дојдовниот повик може да е спам"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Дојдовно побарување за видео"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Нема услуга"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Прифатете видеоповик"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"За да воспоставите повик, прво исклучете режим на работа во авион."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Не е регистриран на мрежа."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Не е достапна мобилна мрежа."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Нема достапна мобилна мрежа."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"За да повикате, внесете важечки број."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Не може да повика."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Започнува MMI низа..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Завршете го повикот"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конференциски повик"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Повик во тек"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Повикот ќе продолжи преку мобилен интернет…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Не можеше да се префрли на Wi-Fi-мрежа"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видеоповикот ќе остане на мобилната мрежа. Може да се наплати за интернет-сообраќај."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Повикот ќе продолжи преку мобилен интернет…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Не можеше да се префрли на Wi-Fi-мрежа"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видеоповикот ќе остане на мобилната мрежа. Може да се наплати за мобилен интернет."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Не го прикажувај ова повторно"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ml/strings.xml b/java/com/android/incallui/res/values-ml/strings.xml
index e207ccd..db9f560 100644
--- a/java/com/android/incallui/res/values-ml/strings.xml
+++ b/java/com/android/incallui/res/values-ml/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> എന്നതിൽ നിന്നുള്ള മിസ്‌ഡ് കോൾ"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"കോൾ സജീവമാണ്"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ഓൺഗോയിംഗ് ഔദ്യോഗിക കോൾ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ഓൺഗോയിംഗ് വൈഫൈ കോൾ"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ഓൺഗോയിംഗ് വൈഫൈ ഔദ്യോഗിക കോൾ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"നിലവിലുള്ള വൈഫൈ കോൾ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"നിലവിലുള്ള വൈഫൈ ഔദ്യോഗിക കോൾ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ഹോള്‍ഡിലാണ്"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ഇന്‍കമിംഗ് കോള്‍"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ഫോട്ടോ ഉൾപ്പെട്ട ഇൻകമിംഗ് കോൾ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ഫോട്ടോയും സന്ദേശവും ലൊക്കേഷനും ഉൾപ്പെട്ട പ്രധാനപ്പെട്ട ഇൻകമിംഗ് കോൾ"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"അറ്റാച്ച്‌മെന്റുകൾ ഉൾപ്പെട്ട പ്രധാനപ്പെട്ട ഇൻകമിംഗ് കോൾ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ഇൻകമിംഗ് ഔദ്യോഗിക കോൾ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ഇൻകമിംഗ് വൈഫൈ കോൾ"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ഇൻകമിംഗ് വൈഫൈ ഔദ്യോഗിക കോൾ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ഇൻകമിംഗ് വൈഫൈ കോൾ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ഇൻകമിംഗ് വൈഫൈ ഔദ്യോഗിക കോൾ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"സംശയാസ്‌പദമായ ഇൻകമിംഗ് സ്‌പാം കോൾ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ഇൻകമിംഗ് വീഡിയോ അഭ്യർത്ഥന"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"സേവനമില്ല"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"വീഡിയോ കോൾ അറ്റൻഡ് ചെയ്യുക"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ഒരു കോൾ വിളിക്കാൻ, ആദ്യം ഫ്ലൈറ്റ് മോഡ് ഓഫുചെയ്യുക."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"നെറ്റ്‌വർക്കിൽ രജിസ്റ്റർ ചെയ്‌തിട്ടില്ല."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"സെല്ലുലാർ നെറ്റ്‌വർക്ക് ലഭ്യമല്ല."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"മൊബൈൽ നെറ്റ്‌വർക്ക് ലഭ്യമല്ല."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ഒരു കോൾ ചെയ്യുന്നതിന്, സാധുതയുള്ള നമ്പർ നൽകുക."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"കോൾ ചെയ്യാനായില്ല."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI സീക്വൻസ് ആരംഭിക്കുന്നു…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"കോള്‍ അവസാനിപ്പിക്കൂ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"കോൺഫറൻസ് കോൾ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"കോളിലാണ്"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"സെല്ലുലാർ ഡാറ്റ ഉപയോഗിച്ച് കോൾ തുടരുന്നു…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi നെറ്റ്‌വർക്കിലേക്ക് മാറാനായില്ല"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"സെല്ലുലാർ നെറ്റ്‌വർക്കിൽത്തന്നെ വീഡിയോ കോൾ തുടരും. സാധാരണ ഡാറ്റ നിരക്കുകൾ ബാധകമാകാം."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"മൊബൈൽ ഡാറ്റ ഉപയോഗിച്ച് കോൾ തുടരുന്നു…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"വൈഫൈ നെറ്റ്‌വർക്കിലേക്ക് മാറാനായില്ല"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"മൊബൈൽ നെറ്റ്‌വർക്കിൽത്തന്നെ വീഡിയോ കോൾ തുടരും. സാധാരണ ഡാറ്റ നിരക്കുകൾ ബാധകമാകാം."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ഇത് വീണ്ടും കാണിക്കരുത്"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-mn/strings.xml b/java/com/android/incallui/res/values-mn/strings.xml
index 0e26917..7757af9 100644
--- a/java/com/android/incallui/res/values-mn/strings.xml
+++ b/java/com/android/incallui/res/values-mn/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g>-н аваагүй дуудлага"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Хийгдэж буй дуудлага"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Залгаж буй албаны дуудлага"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ярьж буй Wi-Fi дуудлага"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Залгаж буй Wi-Fi албаны дуудлага"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Холбогдсон Wi-Fi дуудлага"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Холбогдсон Wi-Fi албаны дуудлага"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Хүлээлгэнд"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Ирж буй дуудлага"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Зураг бүхий орж ирсэн дуудлага"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Зураг, зурвас, байршилтай орж ирсэн чухал дуудлага"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Хавсралт бүхий орж ирсэн чухал дуудлага"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Ирж буй албаны дуудлага"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Орж ирсэн Wi-Fi дуудлага"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Ирж буй Wi-Fi албаны дуудлага"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Ирж буй Wi-Fi дуудлага"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Ирж буй Wi-Fi албаны дуудлага"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Орж ирсэн сэжигтэй спам дуудлага"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Ирж буй видео хүсэлт"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Үйлчилгээ байхгүй"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Видео дуудлага авах"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Дуудлага хийхийн тулд юуны өмнө Нислэгийн төлвийг идэвхгүйжүүлнэ үү."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Сүлжээнд бүртгэгдээгүй."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Үүрэн сүлжээ байхгүй."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобайл сүлжээ байхгүй."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Дуудлага хийхийн тулд хүчин төгөлдөр дугаар оруулна уу."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Дуудлага хийх боломжгүй байна."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI дарааллыг эхлүүлж байна…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Дуудлагыг таслах"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Хурлын дуудлага"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Ярьж байна"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Үүрэн дата ашиглан дуудлагыг үргэлжлүүлж байна..."</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi сүлжээ рүү сэлгэж чадсангүй"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видео дуудлага үүрэн сүлжээнд үлдэнэ. Стандарт датаны төлбөр тооцогдож магадгүй."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Мобайл дата ашиглан дуудлагыг үргэлжлүүлж байна…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi сүлжээ рүү сэлгэж чадсангүй"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видео дуудлага мобайл сүлжээнд үлдэнэ. Стандарт датаны төлбөр тооцогдож магадгүй."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Үүнийг дахин бүү үзүүл"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-mr/strings.xml b/java/com/android/incallui/res/values-mr/strings.xml
index c56c610..e422897 100644
--- a/java/com/android/incallui/res/values-mr/strings.xml
+++ b/java/com/android/incallui/res/values-mr/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> कडील सुटलेला कॉल"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"सुरू असलेला कॉल"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"सुरु असलेला कार्य कॉल"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"सुरु असलेला वाय-फाय कॉल"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"सुरु असलेला वाय-फाय कार्य कॉल"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"सुरु असलेला वाय-फाय कॉल"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"सुरु असलेला वाय-फाय कार्य कॉल"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"होल्ड वर"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"येणारा कॉल"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"फोटोसह येणारा कॉल"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"फोटो, संदेश आणि स्थानासह महत्त्वाचा येणारा कॉल"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"संलग्नकांसह महत्त्वाचा येणारा कॉल"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"येणारा कार्य कॉल"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"येणारा वाय-फाय कॉल"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"येणारा वाय-फाय कार्य कॉल"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"येणारा वाय-फाय कॉल"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"येणारा वाय-फाय कार्य कॉल"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"येणारा संशयित स्पॅम कॉल"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"येणारी व्हिडिओ विनंती"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"सेवा नाही"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"व्हिडिओ कॉल घ्या"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"कॉल करण्यासाठी, प्रथम विमान मोड बंद करा."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"नेटवर्कवर नोंदणीकृत नाही."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"सेल्युलर नेटवर्क उपलब्ध नाही."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"मोबाइल नेटवर्क उपलब्ध नाही."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"कॉल करण्यासाठी, एक वैध नंबर प्रविष्ट करा."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"कॉल करू शकत नाही."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI क्रम प्रारंभ करीत आहे..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"कॉल समाप्त करा"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"परिषद कॉल"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"कॉल मध्ये"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"मोबाइल डेटा वापरून कॉल सुरू ठेवत आहेत…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"वाय-फाय नेटवर्कवर स्विच करणे शक्य झाले नाही"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"व्हिडिओ कॉल मोबाईल नेटवर्कवर असेल. मानक डेटा शुल्क लागू होऊ शकतात."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"मोबाइल डेटा वापरून कॉल करणे सुरु ठेवत आहे..."</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"वाय-फाय नेटवर्कवर स्विच करणे शक्य झाले नाही"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"व्हिडिओ कॉल मोबाइल नेटवर्कवर असेल. मानक डेटा शुल्क लागू शकतात."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"हे पुन्हा दर्शवू नका"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ms/strings.xml b/java/com/android/incallui/res/values-ms/strings.xml
index a5be593..7a5900a 100644
--- a/java/com/android/incallui/res/values-ms/strings.xml
+++ b/java/com/android/incallui/res/values-ms/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Panggilan tidak dijawab daripada <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Panggilan sedang berjalan"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Panggilan sedang berlangsung daripada tempat kerja"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Panggilan Wi-Fi sedang berlangsung"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Panggian Wi-Fi sedang berlangsung daripada tempat kerja"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Panggilan Wi-Fi sedang berlangsung"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Panggilan Wi-Fi daripada tempat kerja sedang berlangsung"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ditunda"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Panggilan masuk"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Panggilan masuk dengan foto"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Panggilan masuk penting dengan foto, mesej dan lokasi"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Panggilan masuk penting dengan lampiran"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Panggilan masuk daripada tempat kerja"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Panggilan Wi-Fi masuk"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Panggilan masuk melalui Wi-Fi daripada tempat kerja"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Panggilan masuk Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Panggilan masuk Wi-Fi daripada tempat kerja"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Disyaki panggilan spam masuk"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Permintaan video masuk"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Tiada perkhidmatan"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Rangkaian pilihan (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) tidak tersedia"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Jawapan"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Letakkan gagang"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video dalam strim"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video"</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Suara"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Terima"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Tolak"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Jawab Panggilan Video"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Untuk membuat panggilan, matikan mod Pesawat terlebih dahulu."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Tidak didaftarkan pada rangkaian."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rangkaian selular tidak tersedia."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rangkaian mudah alih tidak tersedia."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Untuk membuat panggilan, masukkan nombor yang sah."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Tidak dapat memanggil."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Memulakan jujukan MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Tamatkan panggilan"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Panggilan sidang"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Dalam panggilan"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Meneruskan panggilan menggunakan data selular…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Tidak dapat beralih ke rangkaian Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Panggilan video akan menggunakan rangkaian selular. Caj data standard boleh dikenakan."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Meneruskan panggilan menggunakan data mudah alih…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Tidak dapat beralih ke rangkaian Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Panggilan video akan menggunakan rangkaian mudah alih. Caj data standard boleh dikenakan."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Jangan tunjukkan ini lagi"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-my/strings.xml b/java/com/android/incallui/res/values-my/strings.xml
index 5cca498..5513b79 100644
--- a/java/com/android/incallui/res/values-my/strings.xml
+++ b/java/com/android/incallui/res/values-my/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> မှလွတ်သွားသော ခေါ်ဆိုမှု"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"ဆက်သွားနေသော ဖုန်းခေါ်မှု"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ခေါ်နေဆဲ အလုပ်မှ ခေါ်ဆိုမှု"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ခေါ်နေဆဲ ဝိုင်ဖိုင်ခေါ်ဆိုမှု"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ခေါ်နေဆဲ Wi-Fi အလုပ်မှ ခေါ်ဆိုမှု"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"လက်ရှိ Wi-Fi ဖုန်းခေါ်ဆိုမှု"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"လက်ရှိ Wi-Fi အလုပ်ဖုန်းခေါ်ဆိုမှု"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ခဏ ကိုင်ထားစဉ်"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"အဝင်ခေါ်ဆိုမှု"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ဓာတ်ပုံဖြင့် အဝင်ခေါ်ဆိုမှု"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ဓာတ်ပုံ၊မက်ဆေ့ဂျ်၊တည်နေရာဖြင့် အရေးကြီးခေါ်ဆိုမှု"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ပူးတွဲပါဖိုင်များဖြင့် အရေးကြီးသော အဝင်ခေါ်ဆိုမှု"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"အဝင် ခေါ်ဆိုမှု"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ဝင်လာသော ဝိုင်ဖိုင်ခေါ်ဆိုမှု"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Wi-Fi အလုပ်မှ အဝင် ခေါ်ဆိုမှု"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"အဝင် Wi‑Fi ဖုန်းခေါ်ဆိုမှု"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"အဝင် Wi‑Fi အလုပ်ဖုန်းခေါ်ဆိုမှု"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ခေါ်နေသော မသင်္ကာဖွယ်ရာ စပမ်းခေါ်ဆိုမှု"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"အသံ ခေါ်ဆိုမှုအဖြစ် တောင်းဆိုမှု"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ဝန်ဆောင်မှု မရှိပါ"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ဗီဒီယိုခေါ်ဆိုမှုလွှဲယူပါ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ဖုန်းခေါ်ဆိုမှုပြုရန်, လေယာဥ်ပျံပေါ်အသုံးပြုသောစနစ်ကို ပိတ်ပါ"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ကွန်ယက်ပေါ်မှာ မှတ်ပုံတင်မှု မပြုလုပ်ထားပါ"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"ဆဲလ်လူလာ ကွန်ရက် မရှိပါ။"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"မိုဘိုင်းကွန်ရက် မရနိုင်ပါ"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ဖုန်းခေါ်ရန်အတွက်၊ သင့်လျော်သည့်နံပါတ် ရိုက်ထည့်ပါ။"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"မခေါ်ဆိုနိုင်ပါ။"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI အမှတ်စဉ်ကို စတင်နေပါသည်…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ခေါ်ဆိုမှုအပြီးသတ်ရန်"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"အစည်းအဝေးခေါ်ဆိုမှု"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ဖုန်းပြောနေသည်"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ဆယ်လူလာဒေတာသုံးပြီး ဆက်လက်ခေါ်ဆိုနေသည်…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi ကွန်ရက်သို့ မပြောင်းနိုင်ပါ"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ဗီဒီယိုခေါ်ဆိုမှုသည် ဆယ်လူလာကွန်ရက်တွင် ဆက်ရှိနေပါမည်။ ပုံမှန်ဒေတာသုံးစွဲခများ ကျသင့်နိုင်ပါသည်။"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"မိုဘိုင်းဒေတာသုံးပြီး ဆက်လက်ခေါ်ဆိုနေသည်…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi‑Fi ကွန်ရက်သို့ မပြောင်းနိုင်ပါ"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ဗီဒီယိုခေါ်ဆိုမှုသည် မိုဘိုင်းကွန်ရက်တွင် ဆက်ရှိနေပါမည်။ ပုံမှန်ဒေတာသုံးစွဲခများ ကျသင့်နိုင်ပါသည်။"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ဤသည်ကို ထပ်မပြပါနှင့်"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-nb/strings.xml b/java/com/android/incallui/res/values-nb/strings.xml
index d0883a2..4e8d796 100644
--- a/java/com/android/incallui/res/values-nb/strings.xml
+++ b/java/com/android/incallui/res/values-nb/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Tapt anrop fra <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Pågående samtale"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Pågående jobbanrop"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Pågående Wi-Fi-anrop"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Pågående jobbanrop via Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Pågående Wi-Fi-samtale"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Pågående jobbsamtale via Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Parkert"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Innkommende samtale"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Innkommende anrop med bilde"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Viktig anrop med bilde, melding og posisjon"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Viktig innkommende anrop med vedlegg"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Innkommende jobbanrop"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Innkommende anrop via Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Innkommende jobbanrop via Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Innkommende anrop via Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Innkommende jobbanrop via Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Innkommende anrop fra en mulig useriøs oppringer"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Innkommende videoforespørsel"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ingen tjeneste"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Svar på videoanropet"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"For å ringe, slå av flymodus først."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ikke registrert på nettverket."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilnettverket er ikke tilgjengelig."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilnettverket er ikke tilgjengelig."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Skriv inn et gyldig nummer for å plassere en samtale."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Kan ikke ringe."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Begynner MMI-sekvens…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Avslutt samtalen"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonmøte"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Samtale pågår"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Fortsetter samtalen via mobildata …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Kan ikke bytte til Wi-Fi-nettverk"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videosamtalen blir værende på mobilnettet. Standard datakostnader kan påløpe."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Fortsetter samtalen via mobildata …"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Kunne ikke bytte til Wi-Fi-nettverk"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videosamtalen blir værende på mobilnettverket. Standard datakostnader kan påløpe."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ikke vis dette igjen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ne/strings.xml b/java/com/android/incallui/res/values-ne/strings.xml
index b589479..b19c2ae 100644
--- a/java/com/android/incallui/res/values-ne/strings.xml
+++ b/java/com/android/incallui/res/values-ne/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> बाट आएको छुटेको कल"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"चलिरहेको कल"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"चालू रहेको कार्यको कल"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"चालु रहेको WI-Fi कल"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"चालू रहेको Wi-Fi कार्यको कल"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"जारी रहेको WI-Fi कल"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Wi-Fi मार्फत जारी रहेको कार्यालयको कल"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"होल्डमा"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"आगमन कल"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"तस्बिरसहितको आगमन कल"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"तस्बिर, सन्देश र स्थानसहितको महत्त्वपूर्ण आगमन कल"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"समावेश गरिएको वस्तुसहितको महत्त्वपूर्ण आगमन कल"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"आगमन कार्यको कल"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"आगमन Wi-Fi कल"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"आगमन Wi-Fi कार्यको कल"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Wi-Fi मार्फत आगमन कल"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Wi-Fi मार्फत कार्यालयबाट आएको कल"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"शंकास्पद आगमन स्प्याम कल"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"आगमन भिडियो अनुरोध"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"सेवा छैन"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"भिडियो कल लिनुहोस्"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"कल राख्नका लागि, पहिले हवाइजहाज मोड बन्द गर्नुहोस्।"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"नेटवर्कमा दर्ता भएको छैन।"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"सेलुलर सञ्जाल उपलब्ध छैन।"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"मोबाइल नेटवर्क उपलब्ध छैन।"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"एक कल गर्नको लागि, एक वैध नम्बर प्रविष्ट गर्नुहोस्।"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"कल गर्न सक्दैन।"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI अनुक्रम सुरु गर्दै..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"कल अन्त्य गर्नुहोस्"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"सम्मेलन कल"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"कलमा"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"सेलुलर डेटा प्रयोग गरी कललाई निरन्तरता दिइँदै…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi नेटवर्कमा स्विच गर्न सकिएन"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"भिडियो कल सेलुलर नेटवर्कमा रहने छ। मानक डेटा शुल्क लाग्न सक्छ।"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"मोबाइल डेटा प्रयोग गरी कललाई निरन्तरता दिइँदै…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi नेटवर्कमा स्विच गर्न सकिएन"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"भिडियो कल मोबाइल नेटवर्कमा रहने छ। मानक डेटा शुल्क लाग्न सक्छ।"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"यसलाई फेरि नदेखाउनुहोस्"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-nl/strings.xml b/java/com/android/incallui/res/values-nl/strings.xml
index 930acdc..7350881 100644
--- a/java/com/android/incallui/res/values-nl/strings.xml
+++ b/java/com/android/incallui/res/values-nl/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Gemiste oproep van <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Actieve oproep"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Actieve zakelijke oproep"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Actieve wifi-oproep"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Actieve zakelijke oproep via wifi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Actieve wifi-oproep"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Actieve zakelijke oproep via wifi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"In de wacht"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Inkomende oproep"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Inkomende oproep met foto"</string>
@@ -55,15 +55,15 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Belangrijke oproep met foto, bericht en locatie"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Belangrijke inkomende oproep met bijlagen"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Inkomende zakelijke oproep"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Inkomende wifi-oproep"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Inkomende zakelijke oproep via wifi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Inkomende wifi-oproep"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Inkomende zakelijke oproep via wifi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Inkomende vermoedelijke spamoproep"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Binnenkomend videoverzoek"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Geen service"</string>
     <string name="notification_network_selection_text" msgid="7190860774239009625">"Geselecteerd netwerk (<xliff:g id="OPERATOR_NAME">%s</xliff:g>) niet beschikbaar"</string>
     <string name="notification_action_answer" msgid="8748275902211192568">"Antwoord"</string>
     <string name="notification_action_end_call" msgid="7467258454170007765">"Ophangen"</string>
-    <string name="notification_action_answer_video" msgid="8488108892919917287">"InStream-video"</string>
+    <string name="notification_action_answer_video" msgid="8488108892919917287">"Video"</string>
     <string name="notification_action_answer_voice" msgid="6237890905749760509">"Spraak"</string>
     <string name="notification_action_accept" msgid="1272761514200507143">"Accepteren"</string>
     <string name="notification_action_dismiss" msgid="3128241581632616226">"Weigeren"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Videogesprek beantwoorden"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Als je wilt bellen, moet je eerst de Vliegtuigmodus uitschakelen."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Niet geregistreerd op netwerk."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobiel netwerk niet beschikbaar."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobiel netwerk niet beschikbaar."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Als je wilt bellen, moet je een geldig nummer invoeren."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Kan niet bellen."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI-reeks starten..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Oproep beëindigen"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonische vergadering"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"In gesprek"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Gesprek voortzetten via mobiele data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Overschakelen naar wifi-netwerk mislukt"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videogesprek loopt via mobiel netwerk. Er kunnen standaard datakosten in rekening worden gebracht."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Gesprek voortzetten via mobiele data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Overschakelen naar wifi-netwerk mislukt"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videogesprek loopt via mobiel netwerk. Er kunnen standaard datakosten in rekening worden gebracht."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Dit niet meer weergeven"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-no/strings.xml b/java/com/android/incallui/res/values-no/strings.xml
index d0883a2..4e8d796 100644
--- a/java/com/android/incallui/res/values-no/strings.xml
+++ b/java/com/android/incallui/res/values-no/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Tapt anrop fra <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Pågående samtale"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Pågående jobbanrop"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Pågående Wi-Fi-anrop"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Pågående jobbanrop via Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Pågående Wi-Fi-samtale"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Pågående jobbsamtale via Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Parkert"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Innkommende samtale"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Innkommende anrop med bilde"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Viktig anrop med bilde, melding og posisjon"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Viktig innkommende anrop med vedlegg"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Innkommende jobbanrop"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Innkommende anrop via Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Innkommende jobbanrop via Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Innkommende anrop via Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Innkommende jobbanrop via Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Innkommende anrop fra en mulig useriøs oppringer"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Innkommende videoforespørsel"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ingen tjeneste"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Svar på videoanropet"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"For å ringe, slå av flymodus først."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ikke registrert på nettverket."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilnettverket er ikke tilgjengelig."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilnettverket er ikke tilgjengelig."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Skriv inn et gyldig nummer for å plassere en samtale."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Kan ikke ringe."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Begynner MMI-sekvens…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Avslutt samtalen"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonmøte"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Samtale pågår"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Fortsetter samtalen via mobildata …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Kan ikke bytte til Wi-Fi-nettverk"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videosamtalen blir værende på mobilnettet. Standard datakostnader kan påløpe."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Fortsetter samtalen via mobildata …"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Kunne ikke bytte til Wi-Fi-nettverk"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videosamtalen blir værende på mobilnettverket. Standard datakostnader kan påløpe."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ikke vis dette igjen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-pa/strings.xml b/java/com/android/incallui/res/values-pa/strings.xml
index 22cd7da..b21cbd3 100644
--- a/java/com/android/incallui/res/values-pa/strings.xml
+++ b/java/com/android/incallui/res/values-pa/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> ਤੋਂ ਖੁੰਝੀ ਹੋਈ ਕਾਲ"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"ਜਾਰੀ ਕਾਲ"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"ਕੰਮ ਸਬੰਧਿਤ ਜਾਰੀ ਕਾਲ"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"ਜਾਰੀ Wi-Fi ਕਾਲ"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"ਕੰਮ ਸਬੰਧਿਤ ਜਾਰੀ Wi-Fi ਕਾਲ"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"ਜਾਰੀ Wi‑Fi ਕਾਲ"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"ਕੰਮ ਸਬੰਧੀ ਜਾਰੀ Wi‑Fi ਕਾਲ"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ਹੋਲਡ ਤੇ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ਇਨਕਮਿੰਗ ਕਾਲ"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ਫ਼ੋਟੋ ਨਾਲ ਇਨਕਮਿੰਗ ਕਾਲ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ਫ਼ੋਟੋ, ਸੁਨੇਹੇ ਅਤੇ ਟਿਕਾਣੇ ਨਾਲ ਮਹੱਤਵਪੂਰਨ ਇਨਕਮਿੰਗ ਕਾਲ"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ਅਟੈਚਮੈਂਟਾਂ ਨਾਲ ਮਹੱਤਵਪੂਰਨ ਇਨਕਮਿੰਗ ਕਾਲ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ਕੰਮ ਸਬੰਧਿਤ ਆ ਰਹੀ ਕਾਲ"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"ਇਨਕਮਿੰਗ Wi-Fi ਕਾਲ"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ਕੰਮ ਸਬੰਧਿਤ ਆ ਰਹੀ Wi-Fi ਕਾਲ"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ਆ ਰਹੀ Wi‑Fi ਕਾਲ"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ਕੰਮ ਸਬੰਧੀ ਆ ਰਹੀ Wi‑Fi ਕਾਲ"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"ਸ਼ੱਕੀ ਸਪੈਮ ਕਾਲ ਆ ਰਹੀ ਹੈ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ਇਨਕਮਿੰਗ ਵੀਡੀਓ ਬੇਨਤੀ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ਕੋਈ ਸੇਵਾ ਨਹੀਂ"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ਵੀਡੀਓ ਕਾਲ ਲਓ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ਇੱਕ ਕਾਲ ਕਰਨ ਲਈ, ਪਹਿਲਾਂ ਏਅਰਪਲੇਨ ਮੋਡ ਬੰਦ ਕਰੋ।"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ਨੈਟਵਰਕ ਤੇ ਰਜਿਸਟਰ ਨਹੀਂ ਕੀਤਾ।"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"ਸੈਲਿਊਲਰ ਨੈਟਵਰਕ ਉਪਲਬਧ ਨਹੀਂ"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ ਉਪਲਬਧ ਨਹੀਂ ਹੈ।"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ਇੱਕ ਕਾਲ ਕਰਨ ਲਈ, ਇੱਕ ਪ੍ਰਮਾਣਿਕ ਨੰਬਰ ਦਰਜ ਕਰੋ।"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"ਕਾਲ ਨਹੀਂ ਕਰ ਸਕਦਾ।"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI ਕੜੀ ਚਾਲੂ ਕਰ ਰਿਹਾ ਹੈ…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ਕਾਲ ਸਮਾਪਤ ਕਰੋ"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"ਕਾਨਫਰੰਸ ਕਾਲ"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ਕਾਲ ਵਿੱਚ"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"ਸੈਲਿਊਲਰ ਡੈਟੇ ਦੀ ਵਰਤੋਂ ਨਾਲ ਕਾਲ ਜਾਰੀ ਰੱਖੀ ਜਾ ਰਹੀ ਹੈ…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi ਨੈੱਟਵਰਕ \'ਤੇ ਬਦਲੀ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ਵੀਡੀਓ ਕਾਲ ਸੈਲਿਊਲਰ ਨੈੱਟਵਰਕ \'ਤੇ ਰਹੇਗੀ। ਸਧਾਰਨ ਡੈਟਾ ਖਰਚੇ ਲਾਗੂ ਹੋ ਸਕਦੇ ਹਨ।"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ਮੋਬਾਈਲ ਡੈਟੇ ਦੀ ਵਰਤੋਂ ਕਰਕੇ ਕਾਲ ਜਾਰੀ ਰੱਖੀ ਜਾ ਰਹੀ ਹੈ…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi‑Fi ਨੈੱਟਵਰਕ \'ਤੇ ਬਦਲੀ ਨਹੀਂ ਕੀਤੀ ਜਾ ਸਕੀ"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ਵੀਡੀਓ ਕਾਲ ਮੋਬਾਈਲ ਨੈੱਟਵਰਕ \'ਤੇ ਜਾਰੀ ਰਹੇਗੀ। ਮਿਆਰੀ ਡੈਟਾ ਖਰਚੇ ਲਾਗੂ ਹੋ ਸਕਦੇ ਹਨ।"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"ਇਸ ਨੂੰ ਦੁਬਾਰਾ ਨਾ ਵਿਖਾਓ"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-pl/strings.xml b/java/com/android/incallui/res/values-pl/strings.xml
index 77c8339..451c8ba 100644
--- a/java/com/android/incallui/res/values-pl/strings.xml
+++ b/java/com/android/incallui/res/values-pl/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Nieodebrane połączenie od: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Trwa połączenie"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Trwa połączenie służbowe"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Trwające połączenie przez Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Trwa połączenie służbowe przez Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Trwające połączenie przez Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Trwa połączenie służbowe przez Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Oczekujące"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Połączenie"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Połączenie przychodzące ze zdjęciem"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Ważne połączenie przychodzące z załącznikami"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Ważne połączenie przychodzące z załącznikami"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Przychodzące połączenie służbowe"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Przychodzące połączenie przez Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Przychodzące połączenie służbowe przez Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Przychodzące połączenie przez Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Przychodzące połączenie służbowe przez Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Przychodzące połączenie podejrzanie o spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Przychodzące żądanie wideo"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Brak usługi"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Odbierz rozmowę wideo"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Aby rozpocząć połączenie, wyłącz najpierw tryb samolotowy"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Nie zarejestrowano w sieci"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Sieć komórkowa jest niedostępna."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Sieć komórkowa jest niedostępna."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Aby zadzwonić, wybierz prawidłowy numer."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nie można dzwonić."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Rozpoczynanie sekwencji MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Zakończ połączenie"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Połączenie konferencyjne"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"W trakcie rozmowy"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Kontynuuję rozmowę przy użyciu transmisji danych komórkowych…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nie udało się przełączyć na sieć Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Rozmowa wideo pozostanie w sieci komórkowej. Za transfer danych może zostać pobrana opłata."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Kontynuuję rozmowę przy użyciu mobilnej transmisji danych…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nie udało się przełączyć na sieć Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Rozmowa wideo będzie nadal prowadzona przez sieć komórkową. Za transfer danych może zostać pobrana opłata."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Nie pokazuj ponownie tego komunikatu"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-pt-rBR/strings.xml b/java/com/android/incallui/res/values-pt-rBR/strings.xml
index b0e46df..f3c1b23 100644
--- a/java/com/android/incallui/res/values-pt-rBR/strings.xml
+++ b/java/com/android/incallui/res/values-pt-rBR/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Chamada perdida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Chamada em andamento"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chamada de trabalho em andamento"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chamada Wi-Fi em andamento"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chamada trabalho por Wi-Fi em andamento"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Chamada por Wi-Fi em andamento"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Chamada de trabalho por Wi-Fi em andamento"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Em espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Chamada recebida"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Chamada recebida com foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Chamada recebida importante com foto, mensagem e local"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Chamada recebida importante com anexos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Chamada de trabalho recebida"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Chamada Wi-Fi recebida"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Chamada de trabalho recebida por Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Chamada recebida por Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Chamada de trabalho recebida por Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Chamada recebida suspeita (spam)"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Recebendo solicitação de vídeo"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sem serviço"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Atender à videochamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para fazer uma chamada, primeiro desative o modo avião."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Não registrado na rede."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rede celular não disponível."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rede móvel indisponível."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para realizar uma chamada, digite um número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Não é possível realizar chamadas."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iniciando sequência MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Encerrar chamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Teleconferência"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Em chamada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuando a chamada com dados da rede celular…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Não foi possível alternar para a rede Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"A videochamada continuará via rede celular. Sujeito a cobranças por uso de dados."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuando chamada por dados móveis…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Não foi possível alternar para a rede Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"A videochamada continuará via rede móvel. O uso de dados está sujeito a cobranças padrão."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Não exibir novamente"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-pt-rPT/strings.xml b/java/com/android/incallui/res/values-pt-rPT/strings.xml
index b42b0e5..1040432 100644
--- a/java/com/android/incallui/res/values-pt-rPT/strings.xml
+++ b/java/com/android/incallui/res/values-pt-rPT/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Chamada não atendida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Chamada em curso"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chamada de trabalho em curso"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chamada Wi-Fi em curso"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chamada de trabalho por Wi-Fi em curso"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Chamada por Wi-Fi em curso"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Chamada de trabalho por Wi-Fi em curso"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Em espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Chamada recebida"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Chamada recebida com foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"."</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Chamada recebida importante com anexos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Chamada de trabalho recebida"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Chamada Wi-Fi recebida"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Chamada de trabalho recebida por Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Chamada por Wi-Fi recebida"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Chamada de trabalho por Wi-Fi recebida"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"A receber chamada spam suspeita"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Pedido de vídeo recebido"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nenhum serviço"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Aceitar videochamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para efectuar uma chamada, desactive primeiro o modo para Avião."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Sem registo na rede."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rede móvel não disponível."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rede móvel não disponível."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para telefonar, introduza um número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Não é possível telefonar."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"A iniciar sequência de MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Terminar chamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Chamada de conferência"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Numa chamada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"A continuar a chamada com dados móveis…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Não foi possível mudar para a rede Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"As videochamadas continuarão a ser efetuadas através de rede móvel. Poderão ser aplicados custos de dados."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"A continuar a chamada com dados móveis…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Não foi possível mudar para a rede Wi-Fi."</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"As videochamadas irão continuar a ser efetuadas através da rede móvel. Poderão ser aplicados custos de dados padrão."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Não voltar a mostrar este aviso"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-pt/strings.xml b/java/com/android/incallui/res/values-pt/strings.xml
index b0e46df..f3c1b23 100644
--- a/java/com/android/incallui/res/values-pt/strings.xml
+++ b/java/com/android/incallui/res/values-pt/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Chamada perdida de <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Chamada em andamento"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chamada de trabalho em andamento"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chamada Wi-Fi em andamento"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chamada trabalho por Wi-Fi em andamento"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Chamada por Wi-Fi em andamento"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Chamada de trabalho por Wi-Fi em andamento"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Em espera"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Chamada recebida"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Chamada recebida com foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Chamada recebida importante com foto, mensagem e local"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Chamada recebida importante com anexos"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Chamada de trabalho recebida"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Chamada Wi-Fi recebida"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Chamada de trabalho recebida por Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Chamada recebida por Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Chamada de trabalho recebida por Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Chamada recebida suspeita (spam)"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Recebendo solicitação de vídeo"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Sem serviço"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Atender à videochamada"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Para fazer uma chamada, primeiro desative o modo avião."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Não registrado na rede."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rede celular não disponível."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rede móvel indisponível."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Para realizar uma chamada, digite um número válido."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Não é possível realizar chamadas."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iniciando sequência MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Encerrar chamada"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Teleconferência"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Em chamada"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Continuando a chamada com dados da rede celular…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Não foi possível alternar para a rede Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"A videochamada continuará via rede celular. Sujeito a cobranças por uso de dados."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Continuando chamada por dados móveis…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Não foi possível alternar para a rede Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"A videochamada continuará via rede móvel. O uso de dados está sujeito a cobranças padrão."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Não exibir novamente"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ro/strings.xml b/java/com/android/incallui/res/values-ro/strings.xml
index db8be10..b78be2e 100644
--- a/java/com/android/incallui/res/values-ro/strings.xml
+++ b/java/com/android/incallui/res/values-ro/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Apel nepreluat de la <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Apel în desfășurare"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Apel de serviciu în desfășurare"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Apel Wi-Fi în desfășurare"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Apel de serviciu prin Wi-Fi în desfășurare"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Apel Wi-Fi în desfășurare"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Apel de serviciu prin Wi-Fi în desfășurare"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"În așteptare"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Apel de intrare"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Apel primit cu fotografie"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Apel primit important cu poză, mesaj și locație"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Apel primit important cu atașamente"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Apel de serviciu primit"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Apel prin Wi-Fi primit"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Apel de serviciu prin Wi-Fi primit"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Apel primit prin Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Apel de serviciu primit prin Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Un apel primit posibil spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Solicitare de trecere la apel video"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Fără serviciu"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Preluați apelul video"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Pentru a efectua un apel, mai întâi dezactivați modul Avion."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Neînregistrat în rețea."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rețeaua mobilă nu este disponibilă"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rețeaua mobilă nu este disponibilă."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Pentru a apela, introduceți un număr valid."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nu se poate apela."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Se pornește secvența MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Încheiați apelul"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Teleconferință"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Apel în desfășurare"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Se continuă apelul folosind datele mobile…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nu s-a putut comuta la rețeaua Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Apelul video rămâne în rețeaua mobilă. Se pot aplica tarife standard pentru date."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Se continuă apelul folosind datele mobile…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nu s-a putut comuta la rețeaua Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Apelul video continuă prin rețeaua mobilă. Se pot aplica tarife standard pentru date."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Nu mai afișa acest mesaj"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ru/strings.xml b/java/com/android/incallui/res/values-ru/strings.xml
index 8fd924e..06276c6 100644
--- a/java/com/android/incallui/res/values-ru/strings.xml
+++ b/java/com/android/incallui/res/values-ru/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Пропущенные вызовы от абонента <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Текущий вызов"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Текущий звонок (работа)"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Текущий Wi-Fi-звонок"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Текущий Wi-Fi-звонок (работа)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Текущий вызов по Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Текущий вызов по Wi-Fi (работа)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ждет ответа"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Входящий вызов"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Входящий вызов с фотографией"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важный вызов с фото, сообщением и геоданными"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важный входящий вызов с прикрепленными файлами"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Входящий звонок (работа)"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Входящий Wi-Fi-звонок"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Входящий Wi-Fi-звонок (работа)"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Входящий вызов по Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Входящий вызов по Wi-Fi (работа)"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Входящий вызов: подозрение на спам"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Входящий видеовызов"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Сеть не найдена"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Продолжить на этом устройстве"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Перед тем как звонить, отключите режим полета."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Нет регистрации в сети."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Мобильная сеть недоступна."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобильная сеть недоступна."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Недействительный номер."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Не удалось позвонить."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Запуск последовательности MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Завершить вызов"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конференц-вызов"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Вызов"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Переключение на мобильные данные…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Не удалось подключиться к сети Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видеовызов будет выполняться по мобильной сети. Может взиматься стандартная плата за передачу данных."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Переключение на мобильный Интернет…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Не удалось переключиться на сеть Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видеовызов будет выполняться по мобильной сети. Может взиматься стандартная плата за передачу данных."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Больше не показывать"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-si/strings.xml b/java/com/android/incallui/res/values-si/strings.xml
index 989879a..0497b78 100644
--- a/java/com/android/incallui/res/values-si/strings.xml
+++ b/java/com/android/incallui/res/values-si/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> වෙතින් මඟ හැරුණු ඇමතුම"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"කරගෙනය යන ඇමතුම"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"කරගෙන යන කාර්යාල ඇමතුම"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"දැනට ක්‍රියාත්මක Wi-Fi ඇමතුම"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"කරගෙන යන Wi-Fi කාර්යාල ඇමතුම"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"කරගෙන යන Wi-Fi ඇමතුම"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"කරගෙන යන Wi-Fi කාර්යාල ඇමතුම"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"රඳවා ගනිමින්"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"එන ඇමතුම"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ඡායාරූපය සමග එන ඇමතුම"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ඡායාරූපය, පණිවිඩය සහ ස්ථානය සමග වැදගත් එන ඇමතුම"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"ඇමුණුම් සමග වැදගත් එන ඇමතුම"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"පැමිණෙන කාර්යාල ඇමතුම"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"පැමිණෙන Wi-Fi ඇමතුම"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"පැමිණෙන Wi-Fi කාර්යාල ඇමතුම"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"එන Wi-Fi ඇමතුම"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"එන Wi-Fi කාර්යාල ඇමතුම"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"එන සැකසහිත අයාචිත තැපැල් ඇමතුම"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"පැමිණෙන වීඩියෝ ඉල්ලීම"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"සේවාව නැත"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"වීඩියෝ ඇමතුම ගන්න"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"ඇමතුමක් ගැනීමට, මුලින්ම ගුවන්යානා ආකාරය අක්‍රිය කරන්න."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ජාලය මත ලියාපදිංචි වී නැත."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"සෙලියුලර් ජාලය නොමැත"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"ජංගම ජාලය නොමැත."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"ඇමතුමක් ලබාගැනීමට, වලංගු අංකයක් ලබාගන්න."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"ඇමතුම් ගැනීමට නොහැක."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI අනුපිළිවෙල ආරම්භ කරමින්…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"ඇමතුම අවසන් කරන්න"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"සම්මන්ත්‍රණ ඇමතුම"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"ඇමතුමක"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"සෙලියුලර් දත්ත භාවිතයෙන් ඇමතුම දිගටම කරගෙන යමින්…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi ජාලය වෙත මාරු කිරීමට නොහැකි විය"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"වීඩියෝ ඇමතුම සෙලියුලර් ජාලයේ පවතිනු ඇත. සම්මත දත්ත ගාස්තු අදාළ විය හැකිය."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"ජංගම දත්ත භාවිතයෙන් ඇමතුම දිගටම කරගෙන යමින්…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi ජාලය වෙත මාරු කිරීමට නොහැකි විය"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"වීඩියෝ ඇමතුම ජංගම ජාලයේ පවතිනු ඇත. සම්මත දත්ත ගාස්තු අදාළ විය හැකිය."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"නැවත මෙය නොපෙන්වන්න"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sk/strings.xml b/java/com/android/incallui/res/values-sk/strings.xml
index d09ba44..b83cd94 100644
--- a/java/com/android/incallui/res/values-sk/strings.xml
+++ b/java/com/android/incallui/res/values-sk/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Zmeškaný hovor od volajúceho <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Prebiehajúci hovor"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Prebiehajúci pracovný hovor"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Odchádzajúci hovor prostredníctvom siete Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Prebiehajúci pracovný hovor cez Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Prebiehajúci hovor cez Wi‑Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Prebiehajúci pracovný hovor cez Wi‑Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Podržaný hovor"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Prichádzajúci hovor"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Prichádzajúci hovor s fotkou"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Dôležitý prich. hovor s fotkou, správou a polohou"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Dôležitý prichádzajúci hovor s prílohami"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Prichádzajúci pracovný hovor"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Prichádzajúci hovor prostredníctvom siete Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Prichádzajúci pracovný hovor cez Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Prichádzajúci hovor cez Wi‑Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Prichádzajúci pracovný hovor cez Wi‑Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Prichádzajúci hovor, pri ktorom je podozrenie, že ide o spam"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Prichádzajúca žiadosť o video"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Žiadny signál"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Prevziať videohovor"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Ak chcete telefonovať, vypnite najprv režim v lietadle."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Prihlásenie do siete nebolo úspešné."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilná sieť nie je k dispozícii."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilná sieť nie je k dispozícii."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Ak chcete volať, zadajte platné číslo"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Hovor nie je možné uskutočniť"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Prebieha spúšťanie sekvencie MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Ukončiť hovor"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferenčný hovor"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Prebieha hovor"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Pokračuje sa v hovore pomocou mobilných dát…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nepodarilo sa prepnúť na sieť Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videohovor bude pokračovať v mobilnej sieti. Môžu sa účtovať štandardné poplatky za prenos dát."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Pokračuje sa v hovore pomocou mobilných dát…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nepodarilo sa prepnúť na sieť Wi‑Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videohovor bude pokračovať v mobilnej sieti. Môžu sa účtovať štandardné poplatky za prenos dát."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Informácie nabudúce nezobrazovať"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sl/strings.xml b/java/com/android/incallui/res/values-sl/strings.xml
index b083e1b..cf51ff5 100644
--- a/java/com/android/incallui/res/values-sl/strings.xml
+++ b/java/com/android/incallui/res/values-sl/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Neodgovorjeni klic od: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Aktivni klic"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Aktivni delovni klic"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Odhodni klic prek Wi-Fi-ja"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Aktivni delovni klic prek omrežja Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Aktivni klic prek omrežja Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Aktivni delovni klic prek omrežja Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Zadržano"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Dohodni klic"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Dohodni klic s fotografijo"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Pomemben klic s fotografijo, sporočilom, lokacijo"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Pomemben dohodni klic s prilogami"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Dohodni delovni klic"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Dohodni klic prek Wi-Fi-ja"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Dohodni delovni klic prek omrežja Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Dohodni klic prek omrežja Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Dohodni delovni klic prek omrežja Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Domnevno neželeni dohodni klic"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Dohodna zahteva za video"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ni storitve"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Sprejmi videoklic"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Če želite poklicati, najprej izklopite način za letalo."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ni registrirano v omrežju."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobilno omrežje ni na voljo."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobilno omrežje ni na voljo."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Če želite opraviti klic, vnesite veljavno številko."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Klicanje ni mogoče."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Začetek zaporedja MMI ..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Končaj klic"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferenčni klic"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Poteka klic"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Nadaljevanje klica prek prenosa podatkov v mobilnih omrežjih …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Ni bilo mogoče preklopiti v omrežje Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videoklic bo še naprej potekal v mobilnem omrežju. Morda boste morali plačati standardne stroške prenosa podatkov."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Nadaljevanje klica prek prenosa podatkov v mobilnem omrežju …"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Ni bilo mogoče preklopiti v omrežje Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videoklic bo še naprej potekal v mobilnem omrežju. Morda boste morali plačati standardne stroške prenosa podatkov."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Tega ne kaži več"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sq/strings.xml b/java/com/android/incallui/res/values-sq/strings.xml
index fd19642..76bb87b 100644
--- a/java/com/android/incallui/res/values-sq/strings.xml
+++ b/java/com/android/incallui/res/values-sq/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Telefonatë e humbur nga <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Telefonatë në vazhdim"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Telefonatë pune dalëse"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Telefonatë në vazhdim me Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Telefonatë pune dalëse përmes Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Telefonatë në vazhdim me Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Telefonatë pune dalëse me Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Në pritje"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Telefonatë hyrëse"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Telefonatë hyrëse me fotografi"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Tel. e rëndësishme me foto, mesazh e vendndodhje"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Telefonatë hyrëse e rëndësishme me bashkëngjitje"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Telefonatë pune hyrëse"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Telefonatë hyrëse Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Telefonatë pune hyrëse përmes Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Telefonatë hyrëse me Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Telefonatë pune hyrëse me Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Telefonatë e dyshuar si e padëshiruar"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Kërkesë për video hyrëse"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Nuk ka shërbim"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Prano telefonatën me video"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Për të kryer telefonatë, së pari çaktivizo modalitetin e aeroplanit."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"I paregjistruar në rrjet."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Rrjeti celular nuk mundësohet."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Rrjeti celular nuk mundësohet."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Për të kryer një telefonatë, fut një numër të vlefshëm."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Nuk mund të telefonojë."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Po fillon sekuencën MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Mbylle telefonatën"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Telefonatë konferencë"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Në telefonatë"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Po vazhdon telefonatën duke përdorur të dhënat celulare…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Nuk mund të kalonte në rrjetin Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Telefonata me video do të mbetet në rrjetin celular. Mund të zbatohen tarifat standarde."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Po vazhdon telefonatën duke përdorur të dhënat celulare…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Nuk mund të kalonte në rrjetin Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Telefonata me video do të mbetet në rrjetin celular. Mund të zbatohen tarifat standarde të të dhënave."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Mos e shfaq më këtë"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sr/strings.xml b/java/com/android/incallui/res/values-sr/strings.xml
index 4fa7a61..85e76a9 100644
--- a/java/com/android/incallui/res/values-sr/strings.xml
+++ b/java/com/android/incallui/res/values-sr/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Пропуштен позив од: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Актуелни позив"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Текући позив за Work"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Текући Wi-Fi позив"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Текући позив за Work преко Wi-Fi-ја"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Wi‑Fi позив у току"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Wi‑Fi пословни позив у току"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"На чекању"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Долазни позив"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Долазни позив са сликом"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важан долазни позив са сликом, поруком и локацијом"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важан долазни позив са прилозима"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Долазни позив за Work"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Долазни Wi-Fi позив"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Долазни позив за Work преко Wi-Fi-ја"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Долазни Wi‑Fi позив"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Долазни Wi‑Fi пословни позив"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Сумња на непожељан долазни позив"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Захтев за долазни видео позив"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Нема услуге"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Преузми видео позив"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Да бисте упутили позив, прво искључите режим рада у авиону."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Није регистровано на мрежи."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Мобилна мрежа није доступна."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобилна мрежа није доступна."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Да бисте упутили позив, унесите важећи број."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Позив није успео."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Покретање MMI секвенце"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Завршите позив"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конференцијски позив"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"У позиву"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Позив се наставља помоћу мобилних података…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Пребацивање на Wi-Fi мрежу није успело"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Видео позив ће остати на мобилној мрежи. Могу да важе стандардне накнаде за пренос података."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Позив се наставља помоћу мобилних података…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Пребацивање на Wi‑Fi мрежу није успело"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Видео позив ће остати на мобилној мрежи. Важе стандардне накнаде за пренос података."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Не приказуј ово поново"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sv/strings.xml b/java/com/android/incallui/res/values-sv/strings.xml
index 6d58d90..4bbce1d 100644
--- a/java/com/android/incallui/res/values-sv/strings.xml
+++ b/java/com/android/incallui/res/values-sv/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Missat samtal från <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Pågående samtal"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Pågående jobbsamtal"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Pågående Wi-Fi-samtal"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Pågående jobbsamtal via Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Pågående Wi-Fi-samtal"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Pågående jobbsamtal på Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Parkerat"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Inkommande samtal"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Inkommande samtal med foto"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Viktigt inkommande samtal med foto, meddelande och plats"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Viktigt inkommande samtal med bilagor"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Inkommande jobbsamtal"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Inkommande Wi-Fi-samtal"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Inkommande jobbsamtal via Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Inkommande Wi-Fi-samtal"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Inkommande jobbsamtal på Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Inkommande misstänkt spamsamtal"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Inkommande begäran om videosamtal"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ingen tjänst"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Svara på videosamtal"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Om du vill ringa ett samtal måste du först inaktivera flygplansläge."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Inte registrerat på nätverk."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Det finns inget mobilnät tillgängligt."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Inga tillgängliga mobilnätverk."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Ange ett giltigt nummer om du vill ringa ett samtal."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Det gick inte att ringa."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Startar sekvens för MMI-kod…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Avsluta samtal"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferenssamtal"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"I samtal"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Samtalet fortsätter med mobildata …"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Det gick inte att växla till Wi-Fi-nätverk"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Videosamtalet förblir i mobilnätverket. Vanliga dataavgifter kan tillkomma."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Samtalet fortsätter med mobildata …"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Det gick inte att växla till Wi-Fi-nätverk"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Videosamtalet förblir i mobilnätverket. Vanliga dataavgifter kan tillkomma."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Visa inte detta igen"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-sw/strings.xml b/java/com/android/incallui/res/values-sw/strings.xml
index 0bb1b8c..17c3a52 100644
--- a/java/com/android/incallui/res/values-sw/strings.xml
+++ b/java/com/android/incallui/res/values-sw/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Simu ambayo hukujibu kutoka <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Simu inayoendelea"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Simu ya kazi inayoendelea"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Simu ya Wi-Fi inayoendelea"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Simu ya Wi-Fi ya kazi inayoendelea"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Simu ya Wi-Fi inaendelea"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Simu ya Wi-Fi ya kazi inaendelea"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Inangoja"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Unapigiwa simu"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Simu inayoingia yenye picha"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Simu muhimu yenye picha, ujumbe na mahali"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Simu muhimu inayoingia yenye viambatisho"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Simu ya kazi inayoingia"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Simu ya Wi-Fi inayoingia"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Simu ya Wi-Fi ya kazi inayoingia"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Simu ya Wi-Fi inaingia"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Simu ya Wi-Fi ya kazi inaingia"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Simu inayoingia inashukiwa kuwa taka"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Ombi  linaloingia la video"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Hakuna huduma"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Pokea Simu ya Video"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Kupiga simu, kwanza zima hali ya ndegeni."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Haijasajiliwa kwa mitandao"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mitandao ya simu za mkononi haipatikani"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mtandao wa simu haupatikani."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Ili upige simu, weka nambari sahihi."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Haiwezi kupiga simu."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Inaanzisha msururu wa MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Kata simu"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Simu ya kongamano"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Mazungumzo ya simu yanaendelea"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Endelea na mazungumzo ya simu ukitumia data ya kifaa cha mkononi…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Imeshindwa kuhamia mtandao wa Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Hangout ya video itaendelea kwenye mtandao wa simu. Huenda ukatozwa gharama za kawaida za data."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Endelea na mazungumzo ya simu ukitumia data ya simu…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Imeshindwa kuhamia mtandao wa Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Hangout ya video itaendelea kwenye mtandao wa simu. Huenda ukatozwa gharama za kawaida za data."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Usiionyeshe tena"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ta/strings.xml b/java/com/android/incallui/res/values-ta/strings.xml
index bae8d6a..bb228a0 100644
--- a/java/com/android/incallui/res/values-ta/strings.xml
+++ b/java/com/android/incallui/res/values-ta/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> இடமிருந்து தவறிய அழைப்பு"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"செயலில் இருக்கும் அழைப்பு"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"வெளிச்செல்லும் அழைப்பு (பணி)"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"வெளிச்செல்லும் வைஃபை அழைப்பு"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"வெளிச்செல்லும் வைஃபை அழைப்பு (பணி)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"செயலில் இருக்கும் வைஃபை அழைப்பு"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"செயலில் இருக்கும் வைஃபை அழைப்பு (பணி)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"காத்திருப்பில்"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"உள்வரும் அழைப்பு"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"படத்துடன் உள்வரும் அழைப்பு"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"படம், செய்தி, இருப்பிடத்துடன் உள்வரும் முக்கியமான அழைப்பு"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"இணைப்புகளுடன் உள்வரும் முக்கியமான அழைப்பு"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"உள்வரும் அழைப்பு (பணி)"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"உள்வரும் வைஃபை அழைப்பு"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"உள்வரும் வைஃபை அழைப்பு (பணி)"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"உள்வரும் வைஃபை அழைப்பு"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"உள்வரும் வைஃபை அழைப்பு (பணி)"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"உள்வரும் சந்தேகத்திற்குரிய ஸ்பேம் அழைப்பு"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"உள்வரும் வீடியோ கோரிக்கை"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"சேவை இல்லை"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"வீடியோ அழைப்பை எடு"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"அழைப்பதற்கு, முதலில் விமானப் பயன்முறையை முடக்கவும்."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"நெட்வொர்க்கில் பதிவுசெய்யப்படவில்லை."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"செல்லுலார் நெட்வொர்க் கிடைக்கவில்லை."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"மொபைல் நெட்வொர்க் கிடைக்கவில்லை."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"அழைக்க, சரியான எண்ணை உள்ளிடவும்."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"அழைக்க முடியாது."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI வரிசையைத் தொடங்குகிறது..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"அழைப்பைத் துண்டிக்கும்"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"குழு அழைப்பு"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"அழைப்பில்"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"செல்லுலார் தரவைப் பயன்படுத்தி அழைப்பைத் தொடர்கிறது…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"வைஃபை நெட்வொர்க்கிற்கு மாற முடியவில்லை"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"செல்லுலார் நெட்வொர்க்கைப் பயன்படுத்தி தொடர்ந்து வீடியோ அழைப்பைச் செய்யலாம். வழக்கமான தரவுக் கட்டணங்கள் விதிக்கப்படக்கூடும்."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"மொபைல் தரவைப் பயன்படுத்தி அழைப்பைத் தொடர்கிறது…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"வைஃபை நெட்வொர்க்கிற்கு மாற முடியவில்லை"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"மொபைல் நெட்வொர்க்கைப் பயன்படுத்தி தொடர்ந்து வீடியோ அழைப்பைச் செய்யலாம். வழக்கமான தரவுக் கட்டணங்கள் விதிக்கப்படக்கூடும்."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"இதை மீண்டும் காட்டாதே"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-te/strings.xml b/java/com/android/incallui/res/values-te/strings.xml
index 6b83388..a5da32a 100644
--- a/java/com/android/incallui/res/values-te/strings.xml
+++ b/java/com/android/incallui/res/values-te/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> నుండి సమాధానం ఇవ్వని కాల్"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"కాల్ కొనసాగుతోంది"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"కార్యాలయ కాల్ కొనసాగుతోంది"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Wi-Fi కాల్ కొనసాగుతోంది"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Wi-Fi కార్యాలయ కాల్ కొనసాగుతోంది"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"మాట్లాడుతున్న Wi‑Fi కాల్"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"మాట్లాడుతున్న Wi‑Fi కార్యాలయ కాల్"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"హోల్డ్‌లో ఉంది"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"ఇన్‌కమింగ్ కాల్"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"ఫోటోతో ఇన్‌కమింగ్ కాల్"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"ఫోటో, సందేశం, స్థానంతో ముఖ్యమైన ఇన్‌కమింగ్ కాల్"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"జోడింపులతో ముఖ్యమైన ఇన్‌కమింగ్ కాల్"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"ఇన్‌కమింగ్ కార్యాలయ కాల్"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Wi-Fi కాల్ వస్తోంది"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"ఇన్‌కమింగ్ Wi-Fi కార్యాలయ కాల్"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"ఇన్‌కమింగ్ Wi-Fi కాల్"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"ఇన్‌కమింగ్ Wi-Fi కార్యాలయ కాల్"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"అనుమానాస్పద స్పామ్ కాల్ వస్తోంది"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"ఇన్‌కమింగ్ వీడియో అభ్యర్థన"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"సేవ లేదు"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"వీడియో కాల్‌ను తీయి"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"కాల్ చేయడానికి, మొదట ఎయిర్‌ప్లైన్ మోడ్‌ను ఆపివేయండి."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"నెట్‌వర్క్‌లో నమోదు కాలేదు."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"సెల్యులార్ నెట్‌వర్క్ అందుబాటులో లేదు."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"మొబైల్ నెట్‌వర్క్ అందుబాటులో లేదు."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"కాల్ చేయడానికి, చెల్లుబాటు అయ్యే నంబర్‌ను నమోదు చేయండి."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"కాల్ చేయలేరు."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI శ్రేణిని ప్రారంభిస్తోంది…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"కాల్‌ను ముగిస్తుంది"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"కాన్ఫరెన్స్ కాల్"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"కాల్‌లో ఉన్నారు"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"సెల్యులార్ డేటాను ఉపయోగించి కాల్‌ను కొనసాగిస్తోంది…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi నెట్‌వర్క్‌కి మార్చలేకపోయింది"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"వీడియో కాల్ సెల్యులార్ నెట్‌వర్క్‌లో కొనసాగుతుంది. ప్రామాణిక డేటా ఛార్జీలు వర్తించవచ్చు."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"మొబైల్ డేటాను ఉపయోగించి కాల్‌ను కొనసాగిస్తోంది…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi నెట్‌వర్క్‌కి మార్చడం సాధ్యపడలేదు"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"వీడియో కాల్ మొబైల్ నెట్‌వర్క్‌లో కొనసాగుతుంది. ప్రామాణిక డేటా ఛార్జీలు వర్తించవచ్చు."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"దీన్ని మళ్లీ చూపవద్దు"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-th/strings.xml b/java/com/android/incallui/res/values-th/strings.xml
index 11023b9..102faf2 100644
--- a/java/com/android/incallui/res/values-th/strings.xml
+++ b/java/com/android/incallui/res/values-th/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"สายที่ไม่ได้รับจาก <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"โทรต่อเนื่อง"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"กำลังอยู่ในสายจากที่ทำงาน"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"กำลังโทรผ่าน Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"กำลังอยู่ในสายจากที่ทำงานผ่าน Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"กำลังโทรผ่าน Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"กำลังอยู่ในสายจากที่ทำงานผ่าน Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"พักสาย"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"สายเรียกเข้า"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"สายเรียกเข้าพร้อมรูปภาพ"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"สายเรียกเข้าที่สำคัญพร้อมรูปภาพ ข้อความ และตำแหน่ง"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"สายเรียกเข้าที่สำคัญพร้อมไฟล์แนบ"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"มีสายเรียกเข้าจากที่ทำงาน"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"สายโทรเข้าผ่าน Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"มีสายเรียกเข้าจากที่ทำงานผ่าน Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"สายโทรเข้าผ่าน Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"มีสายเรียกเข้าจากที่ทำงานผ่าน Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"สายเรียกเข้าที่สงสัยว่าเป็นสแปม"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"คำขอโทรเข้าเป็นวิดีโอ"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"ไม่มีบริการ"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"รับสายแฮงเอาท์วิดีโอ"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"หากต้องการโทรออก ให้ปิดโหมดใช้งานบนเครื่องบินก่อน"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"ยังไม่ได้ลงทะเบียนบนเครือข่าย"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"เครือข่ายมือถือใช้งานไม่ได้"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"เครือข่ายมือถือใช้งานไม่ได้"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"หากต้องการโทรออก โปรดป้อนหมายเลขที่ถูกต้อง"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"ไม่สามารถโทรได้"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"กำลังเริ่มต้นลำดับ MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"วางสาย"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"การประชุมสาย"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"อยู่ในสาย"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"กำลังทำการโทรต่อโดยใช้ข้อมูลเครือข่ายมือถือ…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"ไม่สามารถเปลี่ยนไปใช้เครือข่าย Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"แฮงเอาท์วิดีโอจะยังคงอยู่ในเครือข่ายมือถือ อาจมีการเรียกเก็บค่าบริการข้อมูลมาตรฐาน"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"โทรต่อโดยใช้อินเทอร์เน็ตมือถือ..."</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"ไม่สามารถเปลี่ยนไปใช้เครือข่าย Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"แฮงเอาท์วิดีโอจะยังคงอยู่ในเครือข่ายมือถือ อาจมีการเรียกเก็บค่าบริการข้อมูลมาตรฐาน"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"อย่าแสดงสิ่งนี้อีก"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-tl/strings.xml b/java/com/android/incallui/res/values-tl/strings.xml
index 00a4623..9cc2f54 100644
--- a/java/com/android/incallui/res/values-tl/strings.xml
+++ b/java/com/android/incallui/res/values-tl/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Hindi nasagot ang tawag mula kay <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Kasalukuyang tawag"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Kasalukuyang tawag sa trabaho"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Isinasagawang tawag sa Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Kasalukuyang tawag sa trabaho sa pamamagitan ng Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Kasalukuyang isinasagawang tawag sa Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Kasalukuyang isinasagawang tawag sa trabaho gamit ang Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Naka-hold"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Papasok na tawag"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Papasok na tawag na may larawan"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Mahalagang papasok na tawag na may larawan, mensahe, at lokasyon"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Mahalagang papasok na tawag na may mga attachment"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Papasok na tawag sa trabaho"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Papasok na tawag sa Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Papasok na tawag sa trabaho sa pamamagitan ng Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Papasok na tawag sa Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Papasok na tawag sa trabaho gamit ang Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Papasok na pinaghihinalaang spam na tawag"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Papasok na kahilingan ng video"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Walang serbisyo"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Sagutin ang Video Call"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Upang tumawag, paki-off ang Airplane mode."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Hindi nakarehistro sa network."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Hindi available ang cellular network"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Hindi available ang mobile network."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Upang tumawag, maglagay ng wastong numero."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Hindi makatawag."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Sinisimulan ang pagkakasunud-sunod ng MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Tapusin ang tawag"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Conference call"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Nasa tawag"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Ipinagpapatuloy ang tawag gamit ang cellular data…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Hindi makalipat sa Wi-Fi network"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Mananatili sa cellular network ang video call. Maaaring may mga babayaran sa data."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Ipinagpapatuloy ang tawag gamit ang mobile data…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Hindi makalipat sa Wi-Fi network"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Mananatili sa mobile network ang video call. Maaaring may mga babayaran sa data."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Huwag itong ipakitang muli"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-tr/strings.xml b/java/com/android/incallui/res/values-tr/strings.xml
index 9820a69..9126624 100644
--- a/java/com/android/incallui/res/values-tr/strings.xml
+++ b/java/com/android/incallui/res/values-tr/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Cevapsız çağrı: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Devam eden çağrılar"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Süren iş çağrısı"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Giden kablosuz çağrı"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Süren kablosuz iş çağrısı"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Devam eden kablosuz çağrı"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"İşle ilgili devam eden kablosuz çağrı"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Beklemede"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Gelen çağrı"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Fotoğraf eklenmiş gelen çağrı"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Fotoğraf, mesaj ve konum eklenmiş önemli çağrı"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Ek iliştirilmiş önemli gelen çağrı"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Gelen iş çağrısı"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Gelen kablosuz çağrı"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Gelen kablosuz iş çağrısı"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Gelen kablosuz çağrı"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"İşle ilgili gelen kablosuz çağrı"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Spam olabilecek gelen arama"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Gelen video isteği"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Hizmet yok"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Video Görüşmesini Al"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Bir çağrı yapmak için öncelikle Uçak modunu kapatın."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ağda kayıtlı değil."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Hücresel ağ kullanılamıyor."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mobil ağ kullanılamıyor."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Telefon etmek için geçerli bir numara girin."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Arama yapılamıyor."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI dizisi başlatılıyor..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Çağrı sonlandırılır"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferans çağrısı"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Konferans çağrısında"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Görüşmeye hücresel veri kullanılarak devam ediliyor…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Kablosuz ağa geçilemedi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video görüşmesi hücresel ağda devam edecek. Standart veri ücretleri alınabilir."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Görüşmeye mobil veri kullanılarak devam ediliyor…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Kablosuz ağa geçilemedi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Görüntülü görüşme mobil ağda devam edecek. Standart veri ücretleri alınabilir."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Bunu bir daha gösterme"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-uk/strings.xml b/java/com/android/incallui/res/values-uk/strings.xml
index b3b297d..30c202c 100644
--- a/java/com/android/incallui/res/values-uk/strings.xml
+++ b/java/com/android/incallui/res/values-uk/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Пропущений виклик: <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Поточний виклик"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Поточний дзвінок на робочий телефон"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Активний дзвінок через Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Поточний дзвінок на робочий телефон через Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Поточний дзвінок через Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Поточний дзвінок на робочий телефон через Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Очікує"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Вхідний виклик"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Вхідний дзвінок із фото"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Важливий дзвінок із фото, повідомленням і адресою"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Важливий вхідний дзвінок із вкладеними файлами"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Вхідний дзвінок на робочий телефон"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Вхідний дзвінок через Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Вхідний дзвінок на робочий телефон через Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Вхідний дзвінок через Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Вхідний дзвінок на робочий телефон через Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Цей дзвінок може бути спамом"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Запит на вхідний відеодзвінок"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Нема служби"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Прийняти відеодзвінок"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Щоб установ. з\'єднання, споч. вимк. режим польоту."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Не зареєстровано в мережі."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Мобільна мережа недоступна."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Мобільна мережа недоступна."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Щоб зателефонувати, введіть дійсний номер."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Неможливо зателефонувати."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Запуск ряду MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Завершити виклик"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Конференц-зв’язок"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Триває виклик"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Продовження виклику через мобільний трафік…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Не вдалося перейти в мережу Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Відеодзвінок продовжиться в мобільній мережі. Діють стандартні тарифи."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Продовження виклику з використанням мобільного Інтернету…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Не вдалося перейти на мережу Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Відеодзвінок продовжиться з використанням мобільного Інтернету. Діють стандартні тарифи."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Більше не показувати це"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-ur/strings.xml b/java/com/android/incallui/res/values-ur/strings.xml
index e3326a2..8e70bad 100644
--- a/java/com/android/incallui/res/values-ur/strings.xml
+++ b/java/com/android/incallui/res/values-ur/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> کی جانب سے چھوٹی ہوئی کال"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"جاری کال"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"کام سے متعلق جاری کال"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"‏Wi-Fi کال جاری ہے"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"‏کام سے متعلق جاری Wi-Fi کال"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"‏جاری Wi-Fi کال"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"‏کام سے متعلق جاری Wi-Fi کال"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"ہولڈ پر"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"آنے والی کال"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"تصویر کے ساتھ آنے والی کال"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"تصویر، پیغام اور مقام کے ساتھ آنے والی اہم کال"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"منسلکات کے ساتھ آنے والی اہم کال"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"کام سے متعلق آنے والی کال"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"‏Wi-Fi کال آ رہی ہے"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"‏کام سے متعلق آنے والی Wi-Fi کال"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"‏Wi-Fi کال آ رہی ہے"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"‏کام سے متعلق آنے والی Wi-Fi کال"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"آنے والی مشتبہ سپام کال"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"اِن کمنگ ویڈیو درخواست"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"کوئی سروس نہیں ہے"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"ویڈیو کال لیں"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"کال کرنے کیلئے، پہلے ہوائی جہاز طرز کو آف کریں۔"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"نیٹ ورک پر رجسٹرڈ نہیں ہے۔"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"سیلولر نیٹ ورک دستیاب نہیں ہے۔"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"موبائل نیٹ ورک دستیاب نہیں ہے۔"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"کال کرنے کیلئے، ایک درست نمبر درج کریں۔"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"کال نہیں کر سکتے۔"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"‏MMI ترتیب شروع ہو رہی ہے…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"کال ختم کریں"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"کانفرنس کال"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"کال میں"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"سیلولر ڈیٹا استعمال کرکے کال جاری ہے"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"‏Wi-Fi نیٹ ورک پر سوئچ نہیں ہو سکا"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"ویڈیو کال سیلولر نیٹ ورک پر رہے گی۔ ڈیٹا کے معیاری چارجز کا اطلاق ہو سکتا ہے۔"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"موبائل ڈیٹا استعمال کرکے کال جاری ہے"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"‏Wi-Fi نیٹ ورک پر سوئچ نہیں ہو سکا"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"ویڈیو کال موبائل نیٹ ورک پر رہے گی۔ ڈیٹا کے معیاری چارجز کا اطلاق ہو سکتا ہے۔"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"اسے دوبارہ مت دکھائیں"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-uz/strings.xml b/java/com/android/incallui/res/values-uz/strings.xml
index 3828501..c460f95 100644
--- a/java/com/android/incallui/res/values-uz/strings.xml
+++ b/java/com/android/incallui/res/values-uz/strings.xml
@@ -33,10 +33,10 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"<xliff:g id="MISSED_CALL_FROM">%s</xliff:g> chaqiruvi javobsiz qoldi"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Joriy qo‘ng‘iroq"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Chiquvchi ishchi qo‘ng‘irog‘i"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Chiquvchi Wi-Fi qo‘ng‘irog‘i"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Chiquvchi Wi-Fi ishchi qo‘ng‘irog‘i"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Joriy Wi-Fi qo‘ng‘iroq"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Joriy Wi-Fi qo‘ng‘iroq (ish)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Kutmoqda"</string>
-    <string name="notification_incoming_call" msgid="7520580807513849283">"Kiruvchi qo‘ng‘iroq"</string>
+    <string name="notification_incoming_call" msgid="7520580807513849283">"Kiruvchi chaqiruv"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Suratga ega kiruvchi chaqiruv"</string>
     <string name="notification_incoming_call_with_message" msgid="5608687985694956601">"Xabarga ega kiruvchi chaqiruv"</string>
     <string name="notification_incoming_call_with_location" msgid="4519498445081598767">"Joylashuv axborotiga ega kiruvchi chaqiruv"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Surat, xabar va joy. ax. ega muhim kiruv. chaqiruv"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Biriktirmalarga ega muhim kiruvchi chaqiruv"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Kiruvchi ishchi qo‘ng‘irog‘i"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Kiruvchi Wi-Fi qo‘ng‘irog‘i"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Kiruvchi Wi-Fi ishchi qo‘ng‘irog‘i"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Kiruvchi Wi-Fi qo‘ng‘iroq"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Kiruvchi Wi-Fi qo‘ng‘iroq (ish)"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Shubhali kiruvchi qo‘ng‘iroq"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Kiruvchi video so\'rovi"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Xizmat mavjud emas"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Video qo‘ng‘iroq. qabul qilish"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Qo‘ng‘iroq qilish uchun, avval \"Parvoz rejimi\" o‘chirilishi kerak."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Tarmoqda ro‘yxatdan o‘tmagan."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Mobil tarmoq mavjud emas."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Uyali aloqa tarmog‘i mavjud emas."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Qo‘ng‘iroq qilish uchun raqamni to‘g‘ri kiriting."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Qo‘ng‘iroq qilib bo‘lmadi."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"MMI tartibi ishga tushmoqda..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Qo‘ng‘iroqni tugatish"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Konferens-aloqa"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Qo‘ng‘iroq davom etmoqda"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Qo‘ng‘iroq mobil internet orqali davom ettirilmoqda…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Wi-Fi tarmog‘iga o‘tib bo‘lmadi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Video qo‘ng‘iroq uyali tarmoqda davom etilaveradi. Internet uchun operator tarifi bo‘yicha haq olinishi mumkin."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Qo‘ng‘iroq mobil internetga o‘tkazilmoqda…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Wi-Fi tarmog‘iga o‘tib bo‘lmadi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Video qo‘ng‘iroq mobil internet orqali davom ettiriladi. Internet uchun operator tarifi bo‘yicha haq olinishi mumkin."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Bu xabar boshqa ko‘rsatilmasin"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-vi/strings.xml b/java/com/android/incallui/res/values-vi/strings.xml
index b466b02..8c0dbce 100644
--- a/java/com/android/incallui/res/values-vi/strings.xml
+++ b/java/com/android/incallui/res/values-vi/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Cuộc gọi nhỡ từ <xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Cuộc gọi đang thực hiện"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Cuộc gọi đang diễn ra về công việc"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Cuộc gọi đang diễn ra qua Wi-Fi"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Cuộc gọi đang diễn ra qua Wi-Fi về công việc"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Cuộc gọi đang diễn ra qua Wi-Fi"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Cuộc gọi về công việc đang diễn ra qua Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Đang chờ"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Cuộc gọi đến"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Cuộc gọi đến có ảnh"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Cuộc gọi đến quan trọng có ảnh, tin nhắn và vị trí"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Cuộc gọi đến quan trọng có tệp đính kèm"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Cuộc gọi đến về công việc"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Cuộc gọi đến qua Wi-Fi"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Cuộc gọi đến qua Wi-Fi về công việc"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Cuộc gọi đến qua Wi-Fi"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Cuộc gọi đến về công việc qua Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Cuộc gọi spam đến bị nghi ngờ"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Yêu cầu video đến"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Không có dịch vụ nào"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Nhận cuộc gọi điện video"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Để thực hiện cuộc gọi, trước tiên, hãy tắt chế độ trên Máy bay."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Chưa được đăng ký trên mạng."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Không có mạng di động."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Mạng di động không khả dụng."</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Để thực hiện cuộc gọi, hãy nhập một số hợp lệ."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Không thực hiện được cuộc gọi."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Khởi động chuỗi MMI…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Kết thúc cuộc gọi"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Cuộc gọi nhiều bên"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Đang trong cuộc gọi"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Đang tiếp tục cuộc gọi bằng cách sử dụng dữ liệu di động…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Không thể chuyển sang mạng Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Cuộc gọi điện video sẽ duy trì trên mạng di động. Có thể áp dụng phí dữ liệu chuẩn."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Đang tiếp tục cuộc gọi bằng cách sử dụng dữ liệu di động…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Không thể chuyển sang mạng Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Cuộc gọi điện video sẽ tiếp tục trên mạng di động. Bạn có thể phải trả phí dữ liệu chuẩn."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Không hiển thị lại"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-zh-rCN/strings.xml b/java/com/android/incallui/res/values-zh-rCN/strings.xml
index e26ab0c..4ede0cb 100644
--- a/java/com/android/incallui/res/values-zh-rCN/strings.xml
+++ b/java/com/android/incallui/res/values-zh-rCN/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"来自<xliff:g id="MISSED_CALL_FROM">%s</xliff:g>的未接电话"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"当前通话"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"工作通话进行中"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"正在进行 WLAN 通话"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"WLAN 工作通话进行中"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"正在进行 WLAN 通话"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"正在进行 WLAN 工作通话"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"保持"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"来电"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"包含照片的来电"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"包含照片、讯息和位置信息的重要来电"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"包含附件的重要来电"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"工作来电"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"WLAN 来电"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"WLAN 工作来电"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"WLAN 来电"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"WLAN 工作来电"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"有疑似骚扰来电"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"收到视频通话邀请"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"无服务"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"接通视频通话"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"要进行呼叫，请先关闭飞行模式。"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"尚未注册网络。"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"无法连接到移动网络。"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"无法连接到移动网络。"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"要拨打电话，请输入有效的电话号码。"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"无法拨打该电话。"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"正在启动 MMI 序列..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"结束通话"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"电话会议"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"正在通话"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"正在使用移动数据网络继续通话…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"无法切换到 WLAN 网络"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"系统将使用移动网络继续视频通话。这可能会产生标准数据流量费。"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"正在使用移动数据继续通话…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"无法切换到 WLAN 网络"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"系统将使用移动网络继续视频通话。这可能会产生标准数据流量费。"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"不再显示"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-zh-rHK/strings.xml b/java/com/android/incallui/res/values-zh-rHK/strings.xml
index 5eb8892..c4934ea 100644
--- a/java/com/android/incallui/res/values-zh-rHK/strings.xml
+++ b/java/com/android/incallui/res/values-zh-rHK/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"來自 <xliff:g id="MISSED_CALL_FROM">%s</xliff:g> 的未接來電"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"通話中"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"正在進行工作通話"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"正在進行 Wi-Fi 通話"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"正在進行 Wi-Fi 工作通話"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"正在進行 Wi-Fi 通話"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"正在進行 Wi-Fi 工作通話"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"保留通話"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"來電"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"附有相片的來電"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"附有相片、訊息和位置的重要來電"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"附有附件的重要來電"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"工作來電"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Wi-Fi 來電"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Wi-Fi 工作來電"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Wi-Fi 來電"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Wi-Fi 工作來電"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"疑似收到垃圾來電"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"收到視像要求"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"沒有服務"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"接受視像通話"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"請先關閉飛行模式後再撥打電話。"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"未在網絡上完成註冊。"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"無法連線至流動網絡。"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"無法使用流動網絡。"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"要撥打電話，請輸入有效的號碼。"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"無法通話。"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"開始 MMI 序列..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"結束通話"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"會議通話"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"正在通話"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"使用流動數據繼續通話…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"無法切換為 Wi-Fi 網絡"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"視像通話仍會使用流動網絡 (可能需要支付標準數據用量費用)。"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"使用流動數據繼續通話…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"無法切換為 Wi-Fi 網絡"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"視像通話仍會使用流動網絡 (可能需要支付標準數據用量費用)。"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"不要再顯示此訊息"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-zh-rTW/strings.xml b/java/com/android/incallui/res/values-zh-rTW/strings.xml
index 9f02866..9b85a28 100644
--- a/java/com/android/incallui/res/values-zh-rTW/strings.xml
+++ b/java/com/android/incallui/res/values-zh-rTW/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"來自 <xliff:g id="MISSED_CALL_FROM">%s</xliff:g> 的未接來電"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"通話中"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"進行中的公司通話"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"撥出的 Wi-Fi 電話"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"進行中的公司通話 (透過 Wi-Fi)"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"進行中的通話 (透過 Wi-Fi)"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"進行中的公司通話 (透過 Wi-Fi)"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"通話保留"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"來電"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"包含相片的來電"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"包含相片、訊息和位置資訊的重要來電"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"包含附件的重要來電"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"公司來電"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"撥入的 Wi-Fi 電話"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"公司來電 (透過 Wi-Fi)"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"來電 (透過 Wi-Fi)"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"公司來電 (透過 Wi-Fi)"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"可疑的騷擾/廣告來電"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"收到視訊要求"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"沒有服務"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"接聽視訊通話"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"撥號前，請先關閉飛航模式。"</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"尚未註冊網路。"</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"無法連線到行動網路。"</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"無法使用行動網路。"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"如要撥打電話，請輸入有效的號碼。"</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"無法通話。"</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"開始 MMI 序列…"</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"結束通話"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"電話會議"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"通話中"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"使用行動數據繼續進行通話…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"無法切換至 Wi-Fi 網路"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"視訊通話將繼續透過行動網路進行 (可能需支付一般數據傳輸費用)。"</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"使用行動網路繼續進行通話…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"無法切換至 Wi-Fi 網路"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"視訊通話將繼續透過行動網路進行 (可能需支付一般數據傳輸費用)。"</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"不要再顯示這項說明"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values-zu/strings.xml b/java/com/android/incallui/res/values-zu/strings.xml
index db415cc..bc5a927 100644
--- a/java/com/android/incallui/res/values-zu/strings.xml
+++ b/java/com/android/incallui/res/values-zu/strings.xml
@@ -33,8 +33,8 @@
     <string name="notification_missedCallTicker" msgid="238492086972857643">"Uphuthelwe ikholi kusukela ku-<xliff:g id="MISSED_CALL_FROM">%s</xliff:g>"</string>
     <string name="notification_ongoing_call" msgid="8712641937577776125">"Ikholi eqhubekayo"</string>
     <string name="notification_ongoing_work_call" msgid="3189581218078981547">"Ikholi yomsebenzi eqhubekayo"</string>
-    <string name="notification_ongoing_call_wifi" msgid="297183051021070949">"Ikholi ye-Wi-Fi eqhubekayo"</string>
-    <string name="notification_ongoing_work_call_wifi" msgid="6769311641293583197">"Ikholi yomsebenzi eqhubekayo ye-Wi-Fi"</string>
+    <string name="notification_ongoing_call_wifi" msgid="4393238962909277019">"Ikholi ye-Wi-Fi eqhubekayo"</string>
+    <string name="notification_ongoing_work_call_wifi" msgid="3169378605818323964">"Ikholi yomsebenzi eqhubekayo ye-Wi-Fi"</string>
     <string name="notification_on_hold" msgid="7141827443379205682">"Ibambile"</string>
     <string name="notification_incoming_call" msgid="7520580807513849283">"Ikholi engenayo"</string>
     <string name="notification_incoming_call_with_photo" msgid="4360505044807517422">"Ikholi engenayo enesithombe"</string>
@@ -55,8 +55,8 @@
     <string name="important_notification_incoming_call_with_photo_message_location" msgid="513692941317253479">"Ikholi engenayo ebalulekile enesithombe, umlayezo nendawo"</string>
     <string name="important_notification_incoming_call_attachments" msgid="4594375776340303751">"Ikholi engenayo ebalulekile enokunamathiselwe kwi-imeyili"</string>
     <string name="notification_incoming_work_call" msgid="5291275092734261918">"Ikholi engenayo yomsebenzi"</string>
-    <string name="notification_incoming_call_wifi" msgid="1039173395425774684">"Ikholi ye-Wi-Fi engenayo"</string>
-    <string name="notification_incoming_work_call_wifi" msgid="322580182203435905">"Ikholi engenayo yomsebenzi ye-Wi-Fi"</string>
+    <string name="notification_incoming_call_wifi" msgid="1020138378061234203">"Ikholi ye-Wi-Fi engenayo"</string>
+    <string name="notification_incoming_work_call_wifi" msgid="3549264481033044684">"Ikholi engenayo yomsebenzi ye-Wi-Fi"</string>
     <string name="notification_incoming_spam_call" msgid="7591506944666791937">"Ikholi engenayo osolisayo kagaxekile"</string>
     <string name="notification_requesting_video_call" msgid="1807679328811515758">"Isicelo sevidiyo engenayo"</string>
     <string name="notification_network_selection_title" msgid="8639159088474275747">"Ayikho isevisi"</string>
@@ -73,7 +73,7 @@
     <string name="notification_take_video_call" msgid="4473387503712341390">"Thatha ikholi yevidiyo"</string>
     <string name="incall_error_power_off" msgid="3244691852792529453">"Ukwenza ikholi, vala kuqala imodi Yendiza."</string>
     <string name="incall_error_emergency_only" msgid="8313690034696753566">"Ayibhalisiwe kwinethiwekhi."</string>
-    <string name="incall_error_out_of_service" msgid="539611768312332950">"Inethiwekhi yeselula ayitholakali."</string>
+    <string name="incall_error_out_of_service" msgid="5027539470868484145">"Inethiwekhi yefoni ayitholakali"</string>
     <string name="incall_error_no_phone_number_supplied" msgid="293343960362630925">"Ukuze wenze ikholi, faka inombolo evumelekile."</string>
     <string name="incall_error_call_failed" msgid="5560521345862514733">"Ayikwazi ukushaya."</string>
     <string name="incall_status_dialed_mmi" msgid="3341365334358686873">"Iqalisa ukulandelana kwe-MMI..."</string>
@@ -134,8 +134,8 @@
     <string name="conference_caller_disconnect_content_description" msgid="2821988368803183644">"Qeda ikholi"</string>
     <string name="conference_call_name" msgid="8189987124611337174">"Ikholi yengqungquthela"</string>
     <string name="generic_conference_call_name" msgid="1546941472424243894">"Isecingweni"</string>
-    <string name="video_call_wifi_to_lte_handover_toast" msgid="2495974172657183700">"Iqhuba ikholi isebenzisa idatha yeselula…"</string>
-    <string name="video_call_lte_to_wifi_failed_title" msgid="2793524281399509056">"Ayikwazanga ukushintshela kunethiwekhi ye-Wi-Fi"</string>
-    <string name="video_call_lte_to_wifi_failed_message" msgid="5950700221126447109">"Ikholi yevidiyo izohlala kunethiwekhi yeselula. Izindleko zedatha ejwayelekile zingasebenza."</string>
+    <string name="video_call_wifi_to_lte_handover_toast" msgid="2108633957233856099">"Iqhubekisa ikholi isebenzisa idatha yeselula…"</string>
+    <string name="video_call_lte_to_wifi_failed_title" msgid="1343446383310594456">"Ayikwazanga ukushintshela kunethiwekhi ye-Wi-Fi"</string>
+    <string name="video_call_lte_to_wifi_failed_message" msgid="3703332569739939335">"Ikholi yevidiyo izohlala ikunethiwekhi yeselula. Amashaji edatha avamile angasebenza."</string>
     <string name="video_call_lte_to_wifi_failed_do_not_show" msgid="7609115874511223150">"Ungabonisi lokhu futhi"</string>
 </resources>
diff --git a/java/com/android/incallui/res/values/dimens.xml b/java/com/android/incallui/res/values/dimens.xml
index 18816f6..56b9ae1 100644
--- a/java/com/android/incallui/res/values/dimens.xml
+++ b/java/com/android/incallui/res/values/dimens.xml
@@ -38,7 +38,7 @@
   <dimen name="incall_dialpad_zero_key_number_margin_bottom">0dp</dimen>
   <dimen name="incall_dialpad_digits_adjustable_text_size">20sp</dimen>
   <dimen name="incall_dialpad_digits_adjustable_height">50dp</dimen>
-  <dimen name="incall_dialpad_key_numbers_size">36sp</dimen>
+  <dimen name="incall_dialpad_key_numbers_size">36dp</dimen>
 
   <!-- Dimensions for OTA Call Card -->
   <dimen name="otaactivate_layout_marginTop">10dp</dimen>
@@ -58,6 +58,8 @@
 
   <dimen name="conference_call_manager_button_dimension">48dp</dimen>
 
+  <dimen name="return_to_call_initial_offset_y">120dp</dimen>
+
   <!-- Whether or not the landscape mode layout is currently being used -->
   <bool name="is_layout_landscape">false</bool>
 
diff --git a/java/com/android/incallui/res/values/strings.xml b/java/com/android/incallui/res/values/strings.xml
index aede428..4113313 100644
--- a/java/com/android/incallui/res/values/strings.xml
+++ b/java/com/android/incallui/res/values/strings.xml
@@ -78,10 +78,10 @@
   <string name="notification_ongoing_work_call">Ongoing work call</string>
   <!-- The "label" of the in-call Notification for an ongoing call, which is being made over
        Wi-Fi. [CHAR LIMIT=60] -->
-  <string name="notification_ongoing_call_wifi">Ongoing Wi-Fi call</string>
+  <string name="notification_ongoing_call_wifi">Ongoing Wi\u2011Fi call</string>
   <!-- The "label" of the in-call Notification for an ongoing work call, which is being made
        over Wi-Fi. [CHAR LIMIT=60] -->
-  <string name="notification_ongoing_work_call_wifi">Ongoing Wi-Fi work call</string>
+  <string name="notification_ongoing_work_call_wifi">Ongoing Wi\u2011Fi work call</string>
   <!-- The "label" of the in-call Notification for a call that's on hold -->
   <string name="notification_on_hold">On hold</string>
   <!-- The "label" of the in-call Notification for an incoming ringing call. [CHAR LIMIT=60] -->
@@ -126,10 +126,10 @@
   <string name="notification_incoming_work_call">Incoming work call</string>
   <!-- The "label" of the in-call Notification for an incoming ringing call,
        which is being made over Wi-Fi. [CHAR LIMIT=60] -->
-  <string name="notification_incoming_call_wifi">Incoming Wi-Fi call</string>
+  <string name="notification_incoming_call_wifi">Incoming Wi\u2011Fi call</string>
   <!-- The "label" of the in-call Notification for an incoming ringing work call,
        which is being made over Wi-Fi. [CHAR LIMIT=60] -->
-  <string name="notification_incoming_work_call_wifi">Incoming Wi-Fi work call</string>
+  <string name="notification_incoming_work_call_wifi">Incoming Wi\u2011Fi work call</string>
   <!-- The "label" of the in-call Notification for an incoming ringing spam call. -->
   <string name="notification_incoming_spam_call">Incoming suspected spam call</string>
   <!-- The "label" of the in-call Notification for upgrading an existing call to a video call. -->
@@ -190,7 +190,7 @@
        This string is currently unused (see comments in InCallActivity.java.) -->
   <string name="incall_error_emergency_only">Not registered on network.</string>
   <!-- In-call screen: call failure message displayed in an error dialog -->
-  <string name="incall_error_out_of_service">Cellular network not available.</string>
+  <string name="incall_error_out_of_service">Mobile network not available.</string>
   <!-- In-call screen: call failure message displayed in an error dialog -->
   <string name="incall_error_no_phone_number_supplied">To place a call, enter a valid number.</string>
   <!-- In-call screen: call failure message displayed in an error dialog -->
@@ -349,11 +349,11 @@
   <string name="generic_conference_call_name">In call</string>
 
   <!-- Displayed when handover from WiFi to Lte occurs during a video call -->
-  <string name="video_call_wifi_to_lte_handover_toast">Continuing call using cellular data…</string>
+  <string name="video_call_wifi_to_lte_handover_toast">Continuing call using mobile data\u2026</string>
 
   <!-- Displayed when WiFi handover from LTE fails during a video call. -->
-  <string name="video_call_lte_to_wifi_failed_title">Couldn\'t switch to Wi-Fi network</string>
-  <string name="video_call_lte_to_wifi_failed_message">Video call will remain on cellular network. Standard
+  <string name="video_call_lte_to_wifi_failed_title">Couldn\'t switch to Wi\u2011Fi network</string>
+  <string name="video_call_lte_to_wifi_failed_message">Video call will remain on the mobile network. Standard
     data charges may apply.
   </string>
   <string name="video_call_lte_to_wifi_failed_do_not_show">Do not show this again</string>
diff --git a/java/com/android/incallui/res/values/styles.xml b/java/com/android/incallui/res/values/styles.xml
index 68a38f0..3c036c9 100644
--- a/java/com/android/incallui/res/values/styles.xml
+++ b/java/com/android/incallui/res/values/styles.xml
@@ -78,4 +78,13 @@
     <item name="android:colorAccent">@color/dialer_theme_color</item>
   </style>
 
+  <style name="Theme.Incall.DialogHolder" parent="Theme.AppCompat.Translucent">
+    <item name="android:windowBackground">@android:color/transparent</item>
+    <item name="android:windowActivityTransitions">false</item>
+
+    <item name="android:statusBarColor">@android:color/transparent</item>
+    <item name="android:navigationBarColor">@android:color/transparent</item>
+    <item name="android:windowDrawsSystemBarBackgrounds">true</item>
+  </style>
+
 </resources>
diff --git a/java/com/android/incallui/sessiondata/MultimediaFragment.java b/java/com/android/incallui/sessiondata/MultimediaFragment.java
index 85a60b6..3e6cdbb 100644
--- a/java/com/android/incallui/sessiondata/MultimediaFragment.java
+++ b/java/com/android/incallui/sessiondata/MultimediaFragment.java
@@ -107,6 +107,7 @@
   public View onCreateView(
       LayoutInflater layoutInflater, @Nullable ViewGroup viewGroup, @Nullable Bundle bundle) {
     if (isSpam) {
+      LogUtil.i("MultimediaFragment.onCreateView", "show spam layout");
       return layoutInflater.inflate(R.layout.fragment_spam, viewGroup, false);
     }
 
@@ -116,23 +117,30 @@
     if (hasMap && MapsComponent.get(getContext()).getMaps().isAvailable()) {
       if (hasImage) {
         if (hasSubject) {
+          LogUtil.i("MultimediaFragment.onCreateView", "show text, image, location layout");
           return layoutInflater.inflate(
               R.layout.fragment_composer_text_image_frag, viewGroup, false);
         } else {
+          LogUtil.i("MultimediaFragment.onCreateView", "show image, location layout");
           return layoutInflater.inflate(R.layout.fragment_composer_image_frag, viewGroup, false);
         }
       } else if (hasSubject) {
+        LogUtil.i("MultimediaFragment.onCreateView", "show text, location layout");
         return layoutInflater.inflate(R.layout.fragment_composer_text_frag, viewGroup, false);
       } else {
+        LogUtil.i("MultimediaFragment.onCreateView", "show location layout");
         return layoutInflater.inflate(R.layout.fragment_composer_frag, viewGroup, false);
       }
     } else if (hasImage) {
       if (hasSubject) {
+        LogUtil.i("MultimediaFragment.onCreateView", "show text, image layout");
         return layoutInflater.inflate(R.layout.fragment_composer_text_image, viewGroup, false);
       } else {
+        LogUtil.i("MultimediaFragment.onCreateView", "show image layout");
         return layoutInflater.inflate(R.layout.fragment_composer_image, viewGroup, false);
       }
     } else {
+      LogUtil.i("MultimediaFragment.onCreateView", "show text layout");
       return layoutInflater.inflate(R.layout.fragment_composer_text, viewGroup, false);
     }
   }
@@ -155,11 +163,11 @@
       ((TextView) view.findViewById(R.id.spam_text)).setText(R.string.spam_message_text);
     }
 
-    TextView messageText = (TextView) view.findViewById(R.id.answer_message_text);
+    TextView messageText = view.findViewById(R.id.answer_message_text);
     if (messageText != null) {
       messageText.setText(getSubject());
     }
-    ImageView mainImage = (ImageView) view.findViewById(R.id.answer_message_image);
+    ImageView mainImage = view.findViewById(R.id.answer_message_image);
     if (mainImage != null) {
       Glide.with(this)
           .load(getImageUri())
@@ -185,6 +193,7 @@
                     Target<Drawable> target,
                     DataSource dataSource,
                     boolean isFirstResource) {
+                  LogUtil.enterBlock("MultimediaFragment.onResourceReady");
                   view.findViewById(R.id.loading_spinner).setVisibility(View.GONE);
                   return false;
                 }
@@ -192,7 +201,7 @@
           .into(mainImage);
       mainImage.setClipToOutline(true);
     }
-    FrameLayout fragmentHolder = (FrameLayout) view.findViewById(R.id.answer_message_frag);
+    FrameLayout fragmentHolder = view.findViewById(R.id.answer_message_frag);
     if (fragmentHolder != null) {
       fragmentHolder.setClipToOutline(true);
       Fragment mapFragment =
@@ -202,7 +211,7 @@
           .replace(R.id.answer_message_frag, mapFragment)
           .commitNow();
     }
-    avatarImageView = ((ImageView) view.findViewById(R.id.answer_message_avatar));
+    avatarImageView = view.findViewById(R.id.answer_message_avatar);
     if (avatarImageView != null) {
       avatarImageView.setVisibility(showAvatar ? View.VISIBLE : View.GONE);
     }
diff --git a/java/com/android/incallui/sessiondata/res/layout/fragment_composer_image.xml b/java/com/android/incallui/sessiondata/res/layout/fragment_composer_image.xml
index ed29e78..3b3327d 100644
--- a/java/com/android/incallui/sessiondata/res/layout/fragment_composer_image.xml
+++ b/java/com/android/incallui/sessiondata/res/layout/fragment_composer_image.xml
@@ -24,8 +24,8 @@
 
   <ImageView
       android:id="@id/answer_message_image"
-      android:layout_width="match_parent"
-      android:layout_height="wrap_content"
+      android:layout_width="wrap_content"
+      android:layout_height="match_parent"
       android:layout_marginTop="@dimen/answer_message_contents_margin_top"
       android:layout_marginBottom="4dp"
       android:layout_centerInParent="true"
@@ -34,7 +34,7 @@
       android:background="@drawable/answer_data_background"
       android:elevation="@dimen/answer_data_elevation"
       android:adjustViewBounds="true"
-      android:scaleType="fitCenter"/>
+      android:scaleType="centerCrop"/>
 
   <ProgressBar
       android:layout_width="wrap_content"
diff --git a/java/com/android/incallui/spam/SpamCallListListener.java b/java/com/android/incallui/spam/SpamCallListListener.java
index 547337e..b9c70eb 100644
--- a/java/com/android/incallui/spam/SpamCallListListener.java
+++ b/java/com/android/incallui/spam/SpamCallListListener.java
@@ -24,6 +24,7 @@
 import android.content.Intent;
 import android.graphics.drawable.Icon;
 import android.support.annotation.NonNull;
+import android.support.v4.os.BuildCompat;
 import android.telecom.DisconnectCause;
 import android.telephony.PhoneNumberUtils;
 import android.text.TextUtils;
@@ -35,8 +36,7 @@
 import com.android.dialer.logging.ContactLookupResult;
 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.notification.NotificationChannelId;
 import com.android.dialer.spam.Spam;
 import com.android.incallui.R;
 import com.android.incallui.call.CallList;
@@ -49,9 +49,8 @@
  * etc).
  */
 public class SpamCallListListener implements CallList.Listener {
+  static final int NOTIFICATION_ID = 1;
 
-  static final int NOTIFICATION_ID = R.id.notification_spam_call;
-  private static final String TAG = "SpamCallListListener";
   private final Context context;
   private final Random random;
 
@@ -65,10 +64,6 @@
     this.random = rand;
   }
 
-  private static String pii(String pii) {
-    return com.android.incallui.Log.pii(pii);
-  }
-
   @Override
   public void onIncomingCall(final DialerCall call) {
     String number = call.getNumber();
@@ -127,7 +122,6 @@
     if (call.isSpam()) {
       maybeShowSpamCallNotification(call);
     } else {
-      LogUtil.d(TAG, "Showing not spam notification for number=" + pii(call.getNumber()));
       maybeShowNonSpamCallNotification(call);
     }
   }
@@ -161,7 +155,7 @@
     if (callHistoryStatus == DialerCall.CALL_HISTORY_STATUS_PRESENT) {
       return false;
     } else if (callHistoryStatus == DialerCall.CALL_HISTORY_STATUS_UNKNOWN) {
-      LogUtil.i(TAG, "DialerCall history status is unknown, returning false");
+      LogUtil.i("SpamCallListListener.shouldShowAfterCallNotification", "history status unknown");
       return false;
     }
 
@@ -171,7 +165,7 @@
       return false;
     }
 
-    LogUtil.i(TAG, "shouldShowAfterCallNotification, returning true");
+    LogUtil.i("SpamCallListListener.shouldShowAfterCallNotification", "returning true");
     return true;
   }
 
@@ -179,7 +173,7 @@
    * Creates a notification builder with properties common among the two after call notifications.
    */
   private Notification.Builder createAfterCallNotificationBuilder(DialerCall call) {
-    Builder builder =
+    Notification.Builder builder =
         new Builder(context)
             .setContentIntent(
                 createActivityPendingIntent(call, SpamNotificationActivity.ACTION_SHOW_DIALOG))
@@ -187,7 +181,9 @@
             .setPriority(Notification.PRIORITY_DEFAULT)
             .setColor(context.getColor(R.color.dialer_theme_color))
             .setSmallIcon(R.drawable.ic_call_end_white_24dp);
-    NotificationChannelManager.applyChannel(builder, context, Channel.DEFAULT, null);
+    if (BuildCompat.isAtLeastO()) {
+      builder.setChannelId(NotificationChannelId.DEFAULT);
+    }
     return builder;
   }
 
@@ -234,21 +230,20 @@
     int thresholdForShowing = Spam.get(context).percentOfSpamNotificationsToShow();
     if (thresholdForShowing == 0) {
       LogUtil.d(
-          TAG,
-          "shouldThrottleSpamNotification, not showing - percentOfSpamNotificationsToShow is 0");
+          "SpamCallListListener.shouldThrottleSpamNotification",
+          "not showing - percentOfSpamNotificationsToShow is 0");
       return true;
     } else if (randomNumber < thresholdForShowing) {
       LogUtil.d(
-          TAG,
-          "shouldThrottleSpamNotification, showing " + randomNumber + " < " + thresholdForShowing);
+          "SpamCallListListener.shouldThrottleSpamNotification",
+          "showing " + randomNumber + " < " + thresholdForShowing);
       return false;
     } else {
       LogUtil.d(
-          TAG,
-          "shouldThrottleSpamNotification, not showing "
-              + randomNumber
-              + " >= "
-              + thresholdForShowing);
+          "SpamCallListListener.shouldThrottleSpamNotification",
+          "not showing %d >= %d",
+          randomNumber,
+          thresholdForShowing);
       return true;
     }
   }
@@ -257,15 +252,23 @@
     int randomNumber = random.nextInt(100);
     int thresholdForShowing = Spam.get(context).percentOfNonSpamNotificationsToShow();
     if (thresholdForShowing == 0) {
-      LogUtil.d(TAG, "Not showing non spam notification: percentOfNonSpamNotificationsToShow is 0");
+      LogUtil.d(
+          "SpamCallListListener.shouldThrottleNonSpamNotification",
+          "not showing non spam notification: percentOfNonSpamNotificationsToShow is 0");
       return true;
     } else if (randomNumber < thresholdForShowing) {
       LogUtil.d(
-          TAG, "Showing non spam notification: " + randomNumber + " < " + thresholdForShowing);
+          "SpamCallListListener.shouldThrottleNonSpamNotification",
+          "showing non spam notification: %d < %d",
+          randomNumber,
+          thresholdForShowing);
       return false;
     } else {
       LogUtil.d(
-          TAG, "Not showing non spam notification:" + randomNumber + " >= " + thresholdForShowing);
+          "SpamCallListListener.shouldThrottleNonSpamNotification",
+          "not showing non spam notification: %d >= %d",
+          randomNumber,
+          thresholdForShowing);
       return true;
     }
   }
diff --git a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml b/java/com/android/incallui/speakerbuttonlogic/AndroidManifest.xml
similarity index 70%
copy from java/com/android/incallui/res/drawable/img_conference_automirrored.xml
copy to java/com/android/incallui/speakerbuttonlogic/AndroidManifest.xml
index 78b2876..9557d03 100644
--- a/java/com/android/incallui/res/drawable/img_conference_automirrored.xml
+++ b/java/com/android/incallui/speakerbuttonlogic/AndroidManifest.xml
@@ -1,7 +1,5 @@
-<?xml version="1.0" encoding="utf-8"?>
-
 <!--
-  ~ Copyright (C) 2014 The Android Open Source Project
+  ~ Copyright (C) 2017 The Android Open Source Project
   ~
   ~ Licensed under the Apache License, Version 2.0 (the "License");
   ~ you may not use this file except in compliance with the License.
@@ -15,7 +13,6 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-
-<bitmap xmlns:android="http://schemas.android.com/apk/res/android"
-  android:autoMirrored="true"
-  android:src="@drawable/img_conference"/>
\ No newline at end of file
+<manifest
+    package="com.android.incallui.speakerbuttonlogic">
+</manifest>
diff --git a/java/com/android/incallui/speakerbuttonlogic/SpeakerButtonInfo.java b/java/com/android/incallui/speakerbuttonlogic/SpeakerButtonInfo.java
new file mode 100644
index 0000000..5ab821b
--- /dev/null
+++ b/java/com/android/incallui/speakerbuttonlogic/SpeakerButtonInfo.java
@@ -0,0 +1,91 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.android.incallui.speakerbuttonlogic;
+
+import android.support.annotation.DrawableRes;
+import android.support.annotation.IntDef;
+import android.support.annotation.StringRes;
+import android.telecom.CallAudioState;
+import java.lang.annotation.Retention;
+import java.lang.annotation.RetentionPolicy;
+
+/** Info about how a "Speaker" button should be displayed */
+public class SpeakerButtonInfo {
+
+  // Testing note: most of this is exercised in ReturnToCallTest.java
+
+  /** Preferred size for icons */
+  @Retention(RetentionPolicy.SOURCE)
+  @IntDef({IconSize.SIZE_24_DP, IconSize.SIZE_36_DP})
+  public @interface IconSize {
+    int SIZE_24_DP = 1;
+    int SIZE_36_DP = 2;
+  }
+
+  @DrawableRes public final int icon;
+  @StringRes public final int contentDescription;
+  @StringRes public final int label;
+  public final boolean checkable;
+  public final boolean isChecked;
+
+  public SpeakerButtonInfo(CallAudioState audioState, @IconSize int iconSize) {
+    if ((audioState.getSupportedRouteMask() & CallAudioState.ROUTE_BLUETOOTH)
+        == CallAudioState.ROUTE_BLUETOOTH) {
+      checkable = false;
+      isChecked = false;
+      label = R.string.incall_label_audio;
+
+      if ((audioState.getRoute() & CallAudioState.ROUTE_BLUETOOTH)
+          == CallAudioState.ROUTE_BLUETOOTH) {
+        icon =
+            iconSize == IconSize.SIZE_36_DP
+                ? R.drawable.quantum_ic_bluetooth_audio_white_36
+                : R.drawable.quantum_ic_bluetooth_audio_white_24;
+        contentDescription = R.string.incall_content_description_bluetooth;
+      } else if ((audioState.getRoute() & CallAudioState.ROUTE_SPEAKER)
+          == CallAudioState.ROUTE_SPEAKER) {
+        icon =
+            iconSize == IconSize.SIZE_36_DP
+                ? R.drawable.quantum_ic_volume_up_white_36
+                : R.drawable.quantum_ic_volume_up_white_24;
+        contentDescription = R.string.incall_content_description_speaker;
+      } else if ((audioState.getRoute() & CallAudioState.ROUTE_WIRED_HEADSET)
+          == CallAudioState.ROUTE_WIRED_HEADSET) {
+        icon =
+            iconSize == IconSize.SIZE_36_DP
+                ? R.drawable.quantum_ic_headset_white_36
+                : R.drawable.quantum_ic_headset_white_24;
+        contentDescription = R.string.incall_content_description_headset;
+      } else {
+        icon =
+            iconSize == IconSize.SIZE_36_DP
+                ? R.drawable.quantum_ic_phone_in_talk_white_36
+                : R.drawable.quantum_ic_phone_in_talk_white_24;
+        contentDescription = R.string.incall_content_description_earpiece;
+      }
+    } else {
+      checkable = true;
+      isChecked = audioState.getRoute() == CallAudioState.ROUTE_SPEAKER;
+      label = R.string.incall_label_speaker;
+      icon =
+          iconSize == IconSize.SIZE_36_DP
+              ? R.drawable.quantum_ic_volume_up_white_36
+              : R.drawable.quantum_ic_volume_up_white_24;
+      contentDescription = R.string.incall_content_description_speaker;
+    }
+  }
+}
diff --git a/java/com/android/incallui/video/impl/SpeakerButtonController.java b/java/com/android/incallui/video/impl/SpeakerButtonController.java
index e12032a..d98545f 100644
--- a/java/com/android/incallui/video/impl/SpeakerButtonController.java
+++ b/java/com/android/incallui/video/impl/SpeakerButtonController.java
@@ -88,7 +88,7 @@
         icon = R.drawable.quantum_ic_headset_white_36;
         contentDescriptionResId = R.string.incall_content_description_headset;
       } else {
-        icon = R.drawable.ic_phone_audio_white_36dp;
+        icon = R.drawable.quantum_ic_phone_in_talk_white_36;
         contentDescriptionResId = R.string.incall_content_description_earpiece;
       }
     } else {
diff --git a/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java b/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java
index b7a960e..489f72b 100644
--- a/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java
+++ b/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java
@@ -495,7 +495,7 @@
   }
 
   private View[] getAllPreviewRelatedViews() {
-    return new View[] {previewRoot};
+    return new View[] {previewRoot, mutePreviewOverlay};
   }
 
   private int getOffsetTop(View view) {
@@ -644,12 +644,6 @@
     updateVideoOffViews();
   }
 
-  /**
-   * This method scales the video feed inside the texture view, it doesn't change the texture view's
-   * size. In the old UI we would change the view size to match the aspect ratio of the video. In
-   * the new UI the view is always square (with the circular clip) so we have to do additional work
-   * to make sure the non-square video doesn't look squished.
-   */
   @Override
   public void onLocalVideoDimensionsChanged() {
     LogUtil.i("SurfaceViewVideoCallFragment.onLocalVideoDimensionsChanged", null);
@@ -834,6 +828,9 @@
   }
 
   @Override
+  public void onAudioRouteSelectorDismiss() {}
+
+  @Override
   public void setPrimary(@NonNull PrimaryInfo primaryInfo) {
     LogUtil.i("SurfaceViewVideoCallFragment.setPrimary", primaryInfo.toString());
     contactGridManager.setPrimary(primaryInfo);
diff --git a/java/com/android/incallui/video/impl/VideoCallFragment.java b/java/com/android/incallui/video/impl/VideoCallFragment.java
index 8e2f5ae..609cb69 100644
--- a/java/com/android/incallui/video/impl/VideoCallFragment.java
+++ b/java/com/android/incallui/video/impl/VideoCallFragment.java
@@ -59,6 +59,7 @@
 import com.android.dialer.common.Assert;
 import com.android.dialer.common.FragmentUtils;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.common.concurrent.ThreadUtil;
 import com.android.dialer.compat.ActivityCompat;
 import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment;
 import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment.AudioRouteSelectorPresenter;
@@ -121,6 +122,10 @@
           outline.setOval(x - radius, y - radius, x + radius, y + radius);
         }
       };
+
+  // Must use a named method reference as otherwise they do not match.
+  // https://stackoverflow.com/questions/28190304/two-exact-method-references-are-not-equal
+  private final Runnable updatePreviewVideoIfSafe = this::updatePreviewVideoScaling;
   private InCallScreenDelegate inCallScreenDelegate;
   private VideoCallScreenDelegate videoCallScreenDelegate;
   private InCallButtonUiDelegate inCallButtonUiDelegate;
@@ -349,6 +354,9 @@
     super.onPause();
     LogUtil.i("VideoCallFragment.onPause", null);
     inCallScreenDelegate.onInCallScreenPaused();
+
+    // If this is scheduled we should remove it
+    ThreadUtil.getUiThreadHandler().removeCallbacks(updatePreviewVideoIfSafe);
   }
 
   @Override
@@ -665,22 +673,14 @@
     updateRemoteVideoScaling();
   }
 
-  /**
-   * This method scales the video feed inside the texture view, it doesn't change the texture view's
-   * size. In the old UI we would change the view size to match the aspect ratio of the video. In
-   * the new UI the view is always square (with the circular clip) so we have to do additional work
-   * to make sure the non-square video doesn't look squished.
-   */
   @Override
   public void onLocalVideoDimensionsChanged() {
     LogUtil.i("VideoCallFragment.onLocalVideoDimensionsChanged", null);
-    updatePreviewVideoScaling();
   }
 
   @Override
   public void onLocalVideoOrientationChanged() {
     LogUtil.i("VideoCallFragment.onLocalVideoOrientationChanged", null);
-    updatePreviewVideoScaling();
   }
 
   /** Called when the remote video's dimensions change. */
@@ -853,6 +853,9 @@
   }
 
   @Override
+  public void onAudioRouteSelectorDismiss() {}
+
+  @Override
   public void setPrimary(@NonNull PrimaryInfo primaryInfo) {
     LogUtil.i("VideoCallFragment.setPrimary", primaryInfo.toString());
     contactGridManager.setPrimary(primaryInfo);
@@ -1045,7 +1048,6 @@
     params.addRule(RelativeLayout.ALIGN_PARENT_BOTTOM);
     previewTextureView.setLayoutParams(params);
     previewTextureView.setOutlineProvider(circleOutlineProvider);
-    updatePreviewVideoScaling();
     updateOverlayBackground();
     contactGridManager.setIsMiddleRowVisible(false);
     updateMutePreviewOverlayVisibility();
@@ -1053,6 +1055,9 @@
     previewOffBlurredImageView.setLayoutParams(params);
     previewOffBlurredImageView.setOutlineProvider(circleOutlineProvider);
     previewOffBlurredImageView.setClipToOutline(true);
+
+    // Wait until the layout pass has finished before updating the scaling
+    ThreadUtil.postOnUiThread(updatePreviewVideoIfSafe);
   }
 
   private void updateVideoOffViews() {
diff --git a/java/com/android/incallui/video/impl/res/layout/frag_videocall_surfaceview.xml b/java/com/android/incallui/video/impl/res/layout/frag_videocall_surfaceview.xml
index c672466..1a2bc24 100644
--- a/java/com/android/incallui/video/impl/res/layout/frag_videocall_surfaceview.xml
+++ b/java/com/android/incallui/video/impl/res/layout/frag_videocall_surfaceview.xml
@@ -14,7 +14,7 @@
   ~ See the License for the specific language governing permissions and
   ~ limitations under the License
   -->
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
   xmlns:tools="http://schemas.android.com/tools"
   android:layout_width="match_parent"
   android:layout_height="match_parent"
@@ -32,7 +32,7 @@
     android:id="@+id/videocall_remote_video_off"
     android:layout_width="wrap_content"
     android:layout_height="wrap_content"
-    android:layout_gravity="center"
+    android:layout_centerInParent="true"
     android:accessibilityTraversalBefore="@+id/videocall_speaker_button"
     android:drawablePadding="8dp"
     android:drawableTop="@drawable/quantum_ic_videocam_off_white_36"
@@ -71,20 +71,23 @@
       android:visibility="gone"
       android:importantForAccessibility="no"
       tools:visibility="visible"/>
-
-    <ImageView
-      android:id="@+id/videocall_video_preview_mute_overlay"
-      android:layout_width="32dp"
-      android:layout_height="32dp"
-      android:layout_gravity="center"
-      android:background="@drawable/videocall_background_circle_white"
-      android:contentDescription="@string/incall_content_description_muted"
-      android:scaleType="center"
-      android:src="@drawable/quantum_ic_mic_off_black_24"
-      android:visibility="gone"
-      tools:visibility="visible"/>
   </FrameLayout>
 
+  <ImageView
+    android:id="@+id/videocall_video_preview_mute_overlay"
+    android:layout_width="32dp"
+    android:layout_height="32dp"
+    android:layout_alignBottom="@id/videocall_preview_root"
+    android:layout_alignEnd="@id/videocall_preview_root"
+    android:layout_marginBottom="-8dp"
+    android:layout_marginEnd="-8dp"
+    android:background="@drawable/videocall_background_circle_white"
+    android:contentDescription="@string/incall_content_description_muted"
+    android:scaleType="center"
+    android:src="@drawable/quantum_ic_mic_off_black_24"
+    android:visibility="gone"
+    tools:visibility="visible"/>
+
   <View
     android:id="@+id/videocall_green_screen_background"
     android:layout_width="match_parent"
@@ -102,4 +105,4 @@
     android:layout_height="wrap_content"
     android:layout_gravity="top"/>
 
-</FrameLayout>
+</RelativeLayout>
diff --git a/java/com/android/incallui/video/impl/res/values-h580dp/dimens.xml b/java/com/android/incallui/video/impl/res/values-h580dp/dimens.xml
index a53fb64..e9e7f9e 100644
--- a/java/com/android/incallui/video/impl/res/values-h580dp/dimens.xml
+++ b/java/com/android/incallui/video/impl/res/values-h580dp/dimens.xml
@@ -19,5 +19,5 @@
   <dimen name="videocall_button_size">72dp</dimen>
   <dimen name="videocall_preview_width">88dp</dimen>
   <dimen name="videocall_preview_height">88dp</dimen>
-  <dimen name="videocall_preview_long">104dp</dimen>
+  <dimen name="videocall_preview_long">116dp</dimen>
 </resources>
diff --git a/java/com/android/incallui/video/impl/res/values-land/dimens.xml b/java/com/android/incallui/video/impl/res/values-land/dimens.xml
index 6485735..d0a5e40 100644
--- a/java/com/android/incallui/video/impl/res/values-land/dimens.xml
+++ b/java/com/android/incallui/video/impl/res/values-land/dimens.xml
@@ -15,5 +15,5 @@
   ~ limitations under the License
   -->
 <resources>
-  <dimen name="videocall_preview_long">92dp</dimen>
+  <dimen name="videocall_preview_long">96dp</dimen>
 </resources>
diff --git a/java/com/android/incallui/video/impl/res/values-land/styles.xml b/java/com/android/incallui/video/impl/res/values-land/styles.xml
index a809708..f60dbd1 100644
--- a/java/com/android/incallui/video/impl/res/values-land/styles.xml
+++ b/java/com/android/incallui/video/impl/res/values-land/styles.xml
@@ -16,7 +16,8 @@
   -->
 <resources>
   <style name="VideoPreviewHolder">
-    <item name="android:layout_gravity">bottom|end</item>
+    <item name="android:layout_alignParentBottom">true</item>
+    <item name="android:layout_alignParentEnd">true</item>
     <item name="android:layout_width">@dimen/videocall_preview_long</item>
     <item name="android:layout_height">@dimen/videocall_preview_height</item>
     <item name="android:layout_marginBottom">@dimen/videocall_preview_margin_bottom</item>
diff --git a/java/com/android/incallui/video/impl/res/values-w460dp/dimens.xml b/java/com/android/incallui/video/impl/res/values-w460dp/dimens.xml
index a53fb64..e9e7f9e 100644
--- a/java/com/android/incallui/video/impl/res/values-w460dp/dimens.xml
+++ b/java/com/android/incallui/video/impl/res/values-w460dp/dimens.xml
@@ -19,5 +19,5 @@
   <dimen name="videocall_button_size">72dp</dimen>
   <dimen name="videocall_preview_width">88dp</dimen>
   <dimen name="videocall_preview_height">88dp</dimen>
-  <dimen name="videocall_preview_long">104dp</dimen>
+  <dimen name="videocall_preview_long">116dp</dimen>
 </resources>
diff --git a/java/com/android/incallui/video/impl/res/values/dimens.xml b/java/com/android/incallui/video/impl/res/values/dimens.xml
index aa08c9d..606b158 100644
--- a/java/com/android/incallui/video/impl/res/values/dimens.xml
+++ b/java/com/android/incallui/video/impl/res/values/dimens.xml
@@ -17,7 +17,7 @@
 <resources>
   <dimen name="videocall_preview_width">72dp</dimen>
   <dimen name="videocall_preview_height">72dp</dimen>
-  <dimen name="videocall_preview_long">84dp</dimen>
+  <dimen name="videocall_preview_long">96dp</dimen>
   <dimen name="videocall_preview_margin_bottom">24dp</dimen>
   <dimen name="videocall_preview_margin_start">24dp</dimen>
   <dimen name="videocall_preview_margin_end">24dp</dimen>
diff --git a/java/com/android/incallui/video/impl/res/values/styles.xml b/java/com/android/incallui/video/impl/res/values/styles.xml
index f73075f..010aca2 100644
--- a/java/com/android/incallui/video/impl/res/values/styles.xml
+++ b/java/com/android/incallui/video/impl/res/values/styles.xml
@@ -23,7 +23,8 @@
     <item name="android:stateListAnimator">@animator/disabled_alpha</item>
   </style>
   <style name="VideoPreviewHolder">
-    <item name="android:layout_gravity">bottom|start</item>
+    <item name="android:layout_alignParentBottom">true</item>
+    <item name="android:layout_alignParentStart">true</item>
     <item name="android:layout_width">@dimen/videocall_preview_width</item>
     <item name="android:layout_height">@dimen/videocall_preview_long</item>
     <item name="android:layout_marginBottom">@dimen/videocall_preview_margin_bottom</item>
diff --git a/java/com/android/incallui/videotech/VideoTech.java b/java/com/android/incallui/videotech/VideoTech.java
index 7da74c0..34c3e2c 100644
--- a/java/com/android/incallui/videotech/VideoTech.java
+++ b/java/com/android/incallui/videotech/VideoTech.java
@@ -17,6 +17,7 @@
 package com.android.incallui.videotech;
 
 import android.content.Context;
+import android.support.annotation.Nullable;
 import com.android.incallui.video.protocol.VideoCallScreen;
 import com.android.incallui.video.protocol.VideoCallScreenDelegate;
 import com.android.incallui.videotech.utils.SessionModificationState;
@@ -41,6 +42,8 @@
 
   void onCallStateChanged(Context context, int newState);
 
+  void onRemovedFromCallList();
+
   @SessionModificationState
   int getSessionModificationState();
 
@@ -62,7 +65,7 @@
 
   void unpause();
 
-  void setCamera(String cameraId);
+  void setCamera(@Nullable String cameraId);
 
   void setDeviceOrientation(int rotation);
 
diff --git a/java/com/android/incallui/videotech/empty/EmptyVideoTech.java b/java/com/android/incallui/videotech/empty/EmptyVideoTech.java
index d0a111d..85eb64e 100644
--- a/java/com/android/incallui/videotech/empty/EmptyVideoTech.java
+++ b/java/com/android/incallui/videotech/empty/EmptyVideoTech.java
@@ -17,6 +17,7 @@
 package com.android.incallui.videotech.empty;
 
 import android.content.Context;
+import android.support.annotation.Nullable;
 import com.android.dialer.common.Assert;
 import com.android.incallui.video.protocol.VideoCallScreen;
 import com.android.incallui.video.protocol.VideoCallScreenDelegate;
@@ -56,6 +57,9 @@
   public void onCallStateChanged(Context context, int newState) {}
 
   @Override
+  public void onRemovedFromCallList() {}
+
+  @Override
   public int getSessionModificationState() {
     return SessionModificationState.NO_REQUEST;
   }
@@ -90,7 +94,7 @@
   public void unpause() {}
 
   @Override
-  public void setCamera(String cameraId) {}
+  public void setCamera(@Nullable String cameraId) {}
 
   @Override
   public void setDeviceOrientation(int rotation) {}
diff --git a/java/com/android/incallui/videotech/ims/ImsVideoTech.java b/java/com/android/incallui/videotech/ims/ImsVideoTech.java
index 01e4bb8..a6cef7b 100644
--- a/java/com/android/incallui/videotech/ims/ImsVideoTech.java
+++ b/java/com/android/incallui/videotech/ims/ImsVideoTech.java
@@ -18,6 +18,7 @@
 
 import android.content.Context;
 import android.os.Build;
+import android.support.annotation.Nullable;
 import android.telecom.Call;
 import android.telecom.Call.Details;
 import android.telecom.VideoProfile;
@@ -120,6 +121,9 @@
   }
 
   @Override
+  public void onRemovedFromCallList() {}
+
+  @Override
   public int getSessionModificationState() {
     return sessionModificationState;
   }
@@ -183,8 +187,6 @@
   public void stopTransmission() {
     LogUtil.enterBlock("ImsVideoTech.stopTransmission");
 
-    setCamera(null);
-
     int unpausedVideoState = getUnpausedVideoState(call.getDetails().getVideoState());
     call.getVideoCall()
         .sendSessionModifyRequest(
@@ -235,7 +237,7 @@
   }
 
   @Override
-  public void setCamera(String cameraId) {
+  public void setCamera(@Nullable String cameraId) {
     call.getVideoCall().setCamera(cameraId);
     call.getVideoCall().requestCameraCapabilities();
   }
@@ -248,7 +250,7 @@
   private boolean canPause() {
     return call.getDetails().can(Details.CAPABILITY_CAN_PAUSE_VIDEO)
         && call.getState() == Call.STATE_ACTIVE
-        && isTransmitting();
+        && isTransmittingOrReceiving();
   }
 
   static int getUnpausedVideoState(int videoState) {
diff --git a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java b/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java
index e49d0b8..55ee2db 100644
--- a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java
+++ b/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java
@@ -17,9 +17,13 @@
 package com.android.incallui.videotech.lightbringer;
 
 import android.content.Context;
+import android.os.Build;
 import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
 import android.telecom.Call;
+import com.android.contacts.common.compat.telecom.TelecomManagerCompat;
 import com.android.dialer.common.Assert;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.dialer.lightbringer.Lightbringer;
 import com.android.dialer.lightbringer.LightbringerListener;
 import com.android.incallui.video.protocol.VideoCallScreen;
@@ -30,15 +34,18 @@
 public class LightbringerTech implements VideoTech, LightbringerListener {
   private final Lightbringer lightbringer;
   private final VideoTechListener listener;
+  private final Call call;
   private final String callingNumber;
   private int callState = Call.STATE_NEW;
 
   public LightbringerTech(
       @NonNull Lightbringer lightbringer,
       @NonNull VideoTechListener listener,
+      @NonNull Call call,
       @NonNull String callingNumber) {
     this.lightbringer = Assert.isNotNull(lightbringer);
     this.listener = Assert.isNotNull(listener);
+    this.call = Assert.isNotNull(call);
     this.callingNumber = Assert.isNotNull(callingNumber);
 
     lightbringer.registerListener(this);
@@ -46,7 +53,11 @@
 
   @Override
   public boolean isAvailable(Context context) {
-    return callState == Call.STATE_ACTIVE && lightbringer.isReachable(context, callingNumber);
+    return Build.VERSION.SDK_INT >= Build.VERSION_CODES.O
+        && ConfigProviderBindings.get(context).getBoolean("enable_lightbringer_video_upgrade", true)
+        && callState == Call.STATE_ACTIVE
+        && lightbringer.supportsUpgrade(context, callingNumber)
+        && TelecomManagerCompat.supportsHandover();
   }
 
   @Override
@@ -80,13 +91,16 @@
   }
 
   @Override
+  public void onRemovedFromCallList() {}
+
+  @Override
   public int getSessionModificationState() {
     return SessionModificationState.NO_REQUEST;
   }
 
   @Override
   public void upgradeToVideo() {
-    // TODO: upgrade to a video call
+    lightbringer.requestUpgrade(call);
   }
 
   @Override
@@ -120,17 +134,13 @@
   }
 
   @Override
-  public void pause() {
-    throw Assert.createUnsupportedOperationFailException();
-  }
+  public void pause() {}
 
   @Override
-  public void unpause() {
-    throw Assert.createUnsupportedOperationFailException();
-  }
+  public void unpause() {}
 
   @Override
-  public void setCamera(String cameraId) {
+  public void setCamera(@Nullable String cameraId) {
     throw Assert.createUnsupportedOperationFailException();
   }
 
diff --git a/java/com/android/voicemail/permissions.xml b/java/com/android/voicemail/AndroidManifest.xml
similarity index 60%
rename from java/com/android/voicemail/permissions.xml
rename to java/com/android/voicemail/AndroidManifest.xml
index bedf068..aedfd6f 100644
--- a/java/com/android/voicemail/permissions.xml
+++ b/java/com/android/voicemail/AndroidManifest.xml
@@ -1,3 +1,18 @@
+<!--
+  ~ Copyright (C) 2017 The Android Open Source Project
+  ~
+  ~ Licensed under the Apache License, Version 2.0 (the "License");
+  ~ you may not use this file except in compliance with the License.
+  ~ You may obtain a copy of the License at
+  ~
+  ~      http://www.apache.org/licenses/LICENSE-2.0
+  ~
+  ~ Unless required by applicable law or agreed to in writing, software
+  ~ distributed under the License is distributed on an "AS IS" BASIS,
+  ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+  ~ See the License for the specific language governing permissions and
+  ~ limitations under the License
+  -->
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
   package="com.android.voicemailomtp">
 
diff --git a/java/com/android/voicemail/impl/AndroidManifest.xml b/java/com/android/voicemail/impl/AndroidManifest.xml
index 95e6e82..be7dac1 100644
--- a/java/com/android/voicemail/impl/AndroidManifest.xml
+++ b/java/com/android/voicemail/impl/AndroidManifest.xml
@@ -97,6 +97,11 @@
         android:exported="false"/>
 
     <service
+        android:name="com.android.voicemail.impl.transcribe.TranscriptionService"
+        android:permission="android.permission.BIND_JOB_SERVICE"
+        android:exported="false"/>
+
+    <service
         android:name="com.android.voicemail.impl.OmtpService"
         android:permission="android.permission.BIND_VISUAL_VOICEMAIL_SERVICE"
         android:exported="true"
diff --git a/java/com/android/voicemail/impl/OmtpReceiver.java b/java/com/android/voicemail/impl/OmtpReceiver.java
deleted file mode 100644
index 9baf954..0000000
--- a/java/com/android/voicemail/impl/OmtpReceiver.java
+++ /dev/null
@@ -1,105 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.voicemail.impl;
-
-import android.annotation.TargetApi;
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.os.Build.VERSION_CODES;
-import android.telecom.PhoneAccountHandle;
-import android.telephony.VisualVoicemailSms;
-import com.android.dialer.common.Assert;
-import com.android.dialer.logging.DialerImpression;
-import com.android.dialer.logging.Logger;
-import com.android.voicemail.VoicemailComponent;
-import com.android.voicemail.impl.settings.VisualVoicemailSettingsUtil;
-import com.android.voicemail.impl.sync.VvmAccountManager;
-
-/** Listens to com.android.phone.vvm.ACTION_TEMP_VISUAL_VOICEMAIL_SERVICE_EVENT */
-@TargetApi(VERSION_CODES.O)
-public class OmtpReceiver extends BroadcastReceiver {
-
-  private static final String TAG = "VvmOmtpReceiver";
-
-  public static final String ACTION_SMS_RECEIVED = "com.android.vociemailomtp.sms.sms_received";
-
-  public static final String EXTRA_VOICEMAIL_SMS = "extra_voicemail_sms";
-
-  private static final String EXTRA_WHAT = "what";
-
-  private static final int MSG_ON_CELL_SERVICE_CONNECTED = 1;
-
-  private static final int MSG_ON_SMS_RECEIVED = 2;
-
-  private static final int MSG_ON_SIM_REMOVED = 3;
-
-  private static final int MSG_TASK_STOPPED = 5;
-
-  private static final String DATA_PHONE_ACCOUNT_HANDLE = "data_phone_account_handle";
-
-  private static final String DATA_SMS = "data_sms";
-
-  @Override
-  public void onReceive(Context context, Intent intent) {
-    // ACTION_VISUAL_VOICEMAIL_SERVICE_EVENT is not a protected broadcast pre-O.
-    if (!VoicemailComponent.get(context).getVoicemailClient().isVoicemailModuleEnabled()) {
-      VvmLog.e(TAG, "ACTION_VISUAL_VOICEMAIL_SERVICE_EVENT received when module is disabled");
-      return;
-    }
-
-    int what = intent.getIntExtra(EXTRA_WHAT, -1);
-    PhoneAccountHandle phoneAccountHandle = intent.getParcelableExtra(DATA_PHONE_ACCOUNT_HANDLE);
-    OmtpVvmCarrierConfigHelper config = new OmtpVvmCarrierConfigHelper(context, phoneAccountHandle);
-    if (!config.isValid()) {
-      VvmLog.i(TAG, "VVM not supported on " + phoneAccountHandle);
-      return;
-    }
-    if (!VisualVoicemailSettingsUtil.isEnabled(context, phoneAccountHandle)
-        && !config.isLegacyModeEnabled()) {
-      VvmLog.i(TAG, "VVM is disabled");
-      return;
-    }
-    switch (what) {
-      case MSG_ON_CELL_SERVICE_CONNECTED:
-        VvmLog.i(TAG, "onCellServiceConnected");
-        Logger.get(context).logImpression(DialerImpression.Type.VVM_UNBUNDLED_EVENT_RECEIVED);
-        ActivationTask.start(context, phoneAccountHandle, null);
-        break;
-      case MSG_ON_SMS_RECEIVED:
-        VvmLog.i(TAG, "onSmsReceived");
-        Logger.get(context).logImpression(DialerImpression.Type.VVM_UNBUNDLED_EVENT_RECEIVED);
-        VisualVoicemailSms sms = intent.getParcelableExtra(DATA_SMS);
-        Intent receivedIntent = new Intent(ACTION_SMS_RECEIVED);
-        receivedIntent.setPackage(context.getPackageName());
-        receivedIntent.putExtra(EXTRA_VOICEMAIL_SMS, sms);
-        context.sendBroadcast(receivedIntent);
-        break;
-      case MSG_ON_SIM_REMOVED:
-        VvmLog.i(TAG, "onSimRemoved");
-        Logger.get(context).logImpression(DialerImpression.Type.VVM_UNBUNDLED_EVENT_RECEIVED);
-        VvmAccountManager.removeAccount(context, phoneAccountHandle);
-        break;
-      case MSG_TASK_STOPPED:
-        VvmLog.i(TAG, "onStopped");
-        Logger.get(context).logImpression(DialerImpression.Type.VVM_UNBUNDLED_EVENT_RECEIVED);
-        break;
-      default:
-        throw Assert.createIllegalStateFailException("unexpected what: " + what);
-    }
-  }
-}
diff --git a/java/com/android/voicemail/impl/TelephonyManagerStub.java b/java/com/android/voicemail/impl/TelephonyManagerStub.java
deleted file mode 100644
index 4762e90..0000000
--- a/java/com/android/voicemail/impl/TelephonyManagerStub.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Copyright (C) 2017 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.voicemail.impl;
-
-import android.annotation.TargetApi;
-import android.os.Build.VERSION_CODES;
-
-/**
- * Temporary stub for public APIs that should be added into telephony manager.
- *
- * <p>TODO(b/32637799) remove this.
- */
-@TargetApi(VERSION_CODES.O)
-public class TelephonyManagerStub {
-
-  public static void showVoicemailNotification(int voicemailCount) {}
-
-  /**
-   * Dismisses the message waiting (voicemail) indicator.
-   *
-   * @param subId the subscription id we should dismiss the notification for.
-   */
-  public static void clearMwiIndicator(int subId) {}
-
-  public static void setShouldCheckVisualVoicemailConfigurationForMwi(int subId, boolean enabled) {}
-}
diff --git a/java/com/android/voicemail/impl/TelephonyVvmConfigManager.java b/java/com/android/voicemail/impl/TelephonyVvmConfigManager.java
index b4def2f..046113c 100644
--- a/java/com/android/voicemail/impl/TelephonyVvmConfigManager.java
+++ b/java/com/android/voicemail/impl/TelephonyVvmConfigManager.java
@@ -21,7 +21,7 @@
 import android.support.annotation.Nullable;
 import android.support.annotation.VisibleForTesting;
 import android.util.ArrayMap;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.voicemail.impl.utils.XmlUtils;
 import java.io.IOException;
 import java.util.ArrayList;
diff --git a/java/com/android/voicemail/impl/VoicemailClientImpl.java b/java/com/android/voicemail/impl/VoicemailClientImpl.java
index 83c0523..83ce6c5 100644
--- a/java/com/android/voicemail/impl/VoicemailClientImpl.java
+++ b/java/com/android/voicemail/impl/VoicemailClientImpl.java
@@ -24,8 +24,8 @@
 import android.telecom.PhoneAccountHandle;
 import android.telephony.TelephonyManager;
 import com.android.dialer.common.Assert;
-import com.android.dialer.common.ConfigProviderBindings;
 import com.android.dialer.common.LogUtil;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.voicemail.VisualVoicemailTypeExtensions;
 import com.android.voicemail.VoicemailClient;
 import com.android.voicemail.impl.settings.VisualVoicemailSettingsUtil;
diff --git a/java/com/android/voicemail/impl/VoicemailModule.java b/java/com/android/voicemail/impl/VoicemailModule.java
index 5a4e739..e689e47 100644
--- a/java/com/android/voicemail/impl/VoicemailModule.java
+++ b/java/com/android/voicemail/impl/VoicemailModule.java
@@ -18,6 +18,7 @@
 
 import android.content.Context;
 import android.support.v4.os.BuildCompat;
+import com.android.dialer.inject.ApplicationContext;
 import com.android.voicemail.VoicemailClient;
 import com.android.voicemail.VoicemailPermissionHelper;
 import com.android.voicemail.stub.StubVoicemailClient;
@@ -31,7 +32,7 @@
 
   @Provides
   @Singleton
-  static VoicemailClient provideVoicemailClient(Context context) {
+  static VoicemailClient provideVoicemailClient(@ApplicationContext Context context) {
     if (!BuildCompat.isAtLeastO()) {
       VvmLog.i("VoicemailModule.provideVoicemailClient", "SDK below O");
       return new StubVoicemailClient();
diff --git a/java/com/android/voicemail/impl/VvmPackageInstallReceiver.java b/java/com/android/voicemail/impl/VvmPackageInstallReceiver.java
deleted file mode 100644
index 1e2de60..0000000
--- a/java/com/android/voicemail/impl/VvmPackageInstallReceiver.java
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * Copyright (C) 2015 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-package com.android.voicemail.impl;
-
-import android.content.BroadcastReceiver;
-import android.content.Context;
-import android.content.Intent;
-import android.telecom.PhoneAccountHandle;
-import android.telecom.TelecomManager;
-import com.android.voicemail.VoicemailComponent;
-import com.android.voicemail.impl.settings.VisualVoicemailSettingsUtil;
-
-/**
- * When a new package is installed, check if it matches any of the vvm carrier apps of the currently
- * enabled dialer VVM sources. The dialer VVM client will be disabled upon carrier VVM app
- * installation, unless it was explicitly enabled by the user.
- */
-public class VvmPackageInstallReceiver extends BroadcastReceiver {
-
-  private static final String TAG = "VvmPkgInstallReceiver";
-
-  @Override
-  public void onReceive(Context context, Intent intent) {
-    if (!VoicemailComponent.get(context).getVoicemailClient().isVoicemailModuleEnabled()) {
-      return;
-    }
-
-    if (intent.getData() == null) {
-      return;
-    }
-
-    String packageName = intent.getData().getSchemeSpecificPart();
-    if (packageName == null) {
-      return;
-    }
-
-    // This get called every time an app is installed and will be noisy. Don't log until the app
-    // is identified as a carrier VVM app.
-    for (PhoneAccountHandle phoneAccount :
-        context.getSystemService(TelecomManager.class).getCallCapablePhoneAccounts()) {
-      OmtpVvmCarrierConfigHelper carrierConfigHelper =
-          new OmtpVvmCarrierConfigHelper(context, phoneAccount);
-      if (!carrierConfigHelper.isValid()) {
-        continue;
-      }
-      if (carrierConfigHelper.getCarrierVvmPackageNames() == null) {
-        continue;
-      }
-      if (!carrierConfigHelper.getCarrierVvmPackageNames().contains(packageName)) {
-        continue;
-      }
-
-      VvmLog.i(TAG, "Carrier app installed");
-      if (VisualVoicemailSettingsUtil.isEnabledUserSet(context, phoneAccount)) {
-        // Skip the check if this voicemail source's setting is overridden by the user.
-        VvmLog.i(TAG, "VVM enabled by user, not disabling");
-        continue;
-      }
-
-      // Force deactivate the client. The user can re-enable it in the settings.
-      // There is no need to update the settings for deactivation. At this point, if the
-      // default value is used it should be false because a carrier package is present.
-      VvmLog.i(TAG, "Carrier VVM package installed, disabling system VVM client");
-      VisualVoicemailSettingsUtil.setEnabled(context, phoneAccount, false);
-    }
-  }
-}
diff --git a/java/com/android/voicemail/impl/com/google/internal/communications/voicemailtranscription/v1/VoicemailTranscriptionServiceGrpc.java b/java/com/android/voicemail/impl/com/google/internal/communications/voicemailtranscription/v1/VoicemailTranscriptionServiceGrpc.java
new file mode 100644
index 0000000..448c693
--- /dev/null
+++ b/java/com/android/voicemail/impl/com/google/internal/communications/voicemailtranscription/v1/VoicemailTranscriptionServiceGrpc.java
@@ -0,0 +1,254 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+
+package com.google.internal.communications.voicemailtranscription.v1;
+
+import static io.grpc.stub.ClientCalls.asyncUnaryCall;
+import static io.grpc.stub.ClientCalls.asyncServerStreamingCall;
+import static io.grpc.stub.ClientCalls.asyncClientStreamingCall;
+import static io.grpc.stub.ClientCalls.asyncBidiStreamingCall;
+import static io.grpc.stub.ClientCalls.blockingUnaryCall;
+import static io.grpc.stub.ClientCalls.blockingServerStreamingCall;
+import static io.grpc.stub.ClientCalls.futureUnaryCall;
+import static io.grpc.MethodDescriptor.generateFullMethodName;
+import static io.grpc.stub.ServerCalls.asyncUnaryCall;
+import static io.grpc.stub.ServerCalls.asyncServerStreamingCall;
+import static io.grpc.stub.ServerCalls.asyncClientStreamingCall;
+import static io.grpc.stub.ServerCalls.asyncBidiStreamingCall;
+import static io.grpc.stub.ServerCalls.asyncUnimplementedUnaryCall;
+import static io.grpc.stub.ServerCalls.asyncUnimplementedStreamingCall;
+
+/**
+ * <pre>
+ * RPC service for transcribing voicemails.
+ * </pre>
+ */
+@javax.annotation.Generated(
+    value = "by gRPC proto compiler (version 1.0.3)",
+    comments = "Source: voicemail_transcription.proto")
+public class VoicemailTranscriptionServiceGrpc {
+
+  private VoicemailTranscriptionServiceGrpc() {}
+
+  public static final String SERVICE_NAME = "google.internal.communications.voicemailtranscription.v1.VoicemailTranscriptionService";
+
+  // Static method descriptors that strictly reflect the proto.
+  @io.grpc.ExperimentalApi("https://github.com/grpc/grpc-java/issues/1901")
+  public static final io.grpc.MethodDescriptor<com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest,
+      com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse> METHOD_TRANSCRIBE_VOICEMAIL =
+      io.grpc.MethodDescriptor.create(
+          io.grpc.MethodDescriptor.MethodType.UNARY,
+          generateFullMethodName(
+              "google.internal.communications.voicemailtranscription.v1.VoicemailTranscriptionService", "TranscribeVoicemail"),
+          io.grpc.protobuf.lite.ProtoLiteUtils.marshaller(com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest.getDefaultInstance()),
+          io.grpc.protobuf.lite.ProtoLiteUtils.marshaller(com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse.getDefaultInstance()));
+
+  /**
+   * Creates a new async stub that supports all call types for the service
+   */
+  public static VoicemailTranscriptionServiceStub newStub(io.grpc.Channel channel) {
+    return new VoicemailTranscriptionServiceStub(channel);
+  }
+
+  /**
+   * Creates a new blocking-style stub that supports unary and streaming output calls on the service
+   */
+  public static VoicemailTranscriptionServiceBlockingStub newBlockingStub(
+      io.grpc.Channel channel) {
+    return new VoicemailTranscriptionServiceBlockingStub(channel);
+  }
+
+  /**
+   * Creates a new ListenableFuture-style stub that supports unary and streaming output calls on the service
+   */
+  public static VoicemailTranscriptionServiceFutureStub newFutureStub(
+      io.grpc.Channel channel) {
+    return new VoicemailTranscriptionServiceFutureStub(channel);
+  }
+
+  /**
+   * <pre>
+   * RPC service for transcribing voicemails.
+   * </pre>
+   */
+  public static abstract class VoicemailTranscriptionServiceImplBase implements io.grpc.BindableService {
+
+    /**
+     * <pre>
+     * Returns a transcript of the given voicemail.
+     * </pre>
+     */
+    public void transcribeVoicemail(com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest request,
+        io.grpc.stub.StreamObserver<com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse> responseObserver) {
+      asyncUnimplementedUnaryCall(METHOD_TRANSCRIBE_VOICEMAIL, responseObserver);
+    }
+
+    @java.lang.Override public io.grpc.ServerServiceDefinition bindService() {
+      return io.grpc.ServerServiceDefinition.builder(getServiceDescriptor())
+          .addMethod(
+            METHOD_TRANSCRIBE_VOICEMAIL,
+            asyncUnaryCall(
+              new MethodHandlers<
+                com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest,
+                com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse>(
+                  this, METHODID_TRANSCRIBE_VOICEMAIL)))
+          .build();
+    }
+  }
+
+  /**
+   * <pre>
+   * RPC service for transcribing voicemails.
+   * </pre>
+   */
+  public static final class VoicemailTranscriptionServiceStub extends io.grpc.stub.AbstractStub<VoicemailTranscriptionServiceStub> {
+    private VoicemailTranscriptionServiceStub(io.grpc.Channel channel) {
+      super(channel);
+    }
+
+    private VoicemailTranscriptionServiceStub(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      super(channel, callOptions);
+    }
+
+    @java.lang.Override
+    protected VoicemailTranscriptionServiceStub build(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      return new VoicemailTranscriptionServiceStub(channel, callOptions);
+    }
+
+    /**
+     * <pre>
+     * Returns a transcript of the given voicemail.
+     * </pre>
+     */
+    public void transcribeVoicemail(com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest request,
+        io.grpc.stub.StreamObserver<com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse> responseObserver) {
+      asyncUnaryCall(
+          getChannel().newCall(METHOD_TRANSCRIBE_VOICEMAIL, getCallOptions()), request, responseObserver);
+    }
+  }
+
+  /**
+   * <pre>
+   * RPC service for transcribing voicemails.
+   * </pre>
+   */
+  public static final class VoicemailTranscriptionServiceBlockingStub extends io.grpc.stub.AbstractStub<VoicemailTranscriptionServiceBlockingStub> {
+    private VoicemailTranscriptionServiceBlockingStub(io.grpc.Channel channel) {
+      super(channel);
+    }
+
+    private VoicemailTranscriptionServiceBlockingStub(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      super(channel, callOptions);
+    }
+
+    @java.lang.Override
+    protected VoicemailTranscriptionServiceBlockingStub build(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      return new VoicemailTranscriptionServiceBlockingStub(channel, callOptions);
+    }
+
+    /**
+     * <pre>
+     * Returns a transcript of the given voicemail.
+     * </pre>
+     */
+    public com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse transcribeVoicemail(com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest request) {
+      return blockingUnaryCall(
+          getChannel(), METHOD_TRANSCRIBE_VOICEMAIL, getCallOptions(), request);
+    }
+  }
+
+  /**
+   * <pre>
+   * RPC service for transcribing voicemails.
+   * </pre>
+   */
+  public static final class VoicemailTranscriptionServiceFutureStub extends io.grpc.stub.AbstractStub<VoicemailTranscriptionServiceFutureStub> {
+    private VoicemailTranscriptionServiceFutureStub(io.grpc.Channel channel) {
+      super(channel);
+    }
+
+    private VoicemailTranscriptionServiceFutureStub(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      super(channel, callOptions);
+    }
+
+    @java.lang.Override
+    protected VoicemailTranscriptionServiceFutureStub build(io.grpc.Channel channel,
+        io.grpc.CallOptions callOptions) {
+      return new VoicemailTranscriptionServiceFutureStub(channel, callOptions);
+    }
+
+    /**
+     * <pre>
+     * Returns a transcript of the given voicemail.
+     * </pre>
+     */
+    public com.google.common.util.concurrent.ListenableFuture<com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse> transcribeVoicemail(
+        com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest request) {
+      return futureUnaryCall(
+          getChannel().newCall(METHOD_TRANSCRIBE_VOICEMAIL, getCallOptions()), request);
+    }
+  }
+
+  private static final int METHODID_TRANSCRIBE_VOICEMAIL = 0;
+
+  private static class MethodHandlers<Req, Resp> implements
+      io.grpc.stub.ServerCalls.UnaryMethod<Req, Resp>,
+      io.grpc.stub.ServerCalls.ServerStreamingMethod<Req, Resp>,
+      io.grpc.stub.ServerCalls.ClientStreamingMethod<Req, Resp>,
+      io.grpc.stub.ServerCalls.BidiStreamingMethod<Req, Resp> {
+    private final VoicemailTranscriptionServiceImplBase serviceImpl;
+    private final int methodId;
+
+    public MethodHandlers(VoicemailTranscriptionServiceImplBase serviceImpl, int methodId) {
+      this.serviceImpl = serviceImpl;
+      this.methodId = methodId;
+    }
+
+    @java.lang.Override
+    @java.lang.SuppressWarnings("unchecked")
+    public void invoke(Req request, io.grpc.stub.StreamObserver<Resp> responseObserver) {
+      switch (methodId) {
+        case METHODID_TRANSCRIBE_VOICEMAIL:
+          serviceImpl.transcribeVoicemail((com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest) request,
+              (io.grpc.stub.StreamObserver<com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse>) responseObserver);
+          break;
+        default:
+          throw new AssertionError();
+      }
+    }
+
+    @java.lang.Override
+    @java.lang.SuppressWarnings("unchecked")
+    public io.grpc.stub.StreamObserver<Req> invoke(
+        io.grpc.stub.StreamObserver<Resp> responseObserver) {
+      switch (methodId) {
+        default:
+          throw new AssertionError();
+      }
+    }
+  }
+
+  public static io.grpc.ServiceDescriptor getServiceDescriptor() {
+    return new io.grpc.ServiceDescriptor(SERVICE_NAME,
+        METHOD_TRANSCRIBE_VOICEMAIL);
+  }
+
+}
diff --git a/java/com/android/voicemail/impl/fetch/VoicemailFetchedCallback.java b/java/com/android/voicemail/impl/fetch/VoicemailFetchedCallback.java
index f386fce..d15ce12 100644
--- a/java/com/android/voicemail/impl/fetch/VoicemailFetchedCallback.java
+++ b/java/com/android/voicemail/impl/fetch/VoicemailFetchedCallback.java
@@ -23,9 +23,12 @@
 import android.support.annotation.Nullable;
 import android.telecom.PhoneAccountHandle;
 import android.telecom.TelecomManager;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.concurrent.ThreadUtil;
 import com.android.voicemail.impl.R;
 import com.android.voicemail.impl.VvmLog;
 import com.android.voicemail.impl.imap.VoicemailPayload;
+import com.android.voicemail.impl.transcribe.TranscriptionService;
 import java.io.IOException;
 import java.io.OutputStream;
 import org.apache.commons.io.IOUtils;
@@ -56,6 +59,7 @@
    * @param voicemailPayload The object containing the content data for the voicemail
    */
   public void setVoicemailContent(@Nullable VoicemailPayload voicemailPayload) {
+    Assert.isWorkerThread();
     if (voicemailPayload == null) {
       VvmLog.i(TAG, "Payload not found, message has unsupported format");
       ContentValues values = new ContentValues();
@@ -90,13 +94,23 @@
     ContentValues values = new ContentValues();
     values.put(Voicemails.MIME_TYPE, voicemailPayload.getMimeType());
     values.put(Voicemails.HAS_CONTENT, true);
-    updateVoicemail(values);
+    if (updateVoicemail(values)) {
+      ThreadUtil.postOnUiThread(
+          () -> {
+            if (!TranscriptionService.transcribeVoicemail(mContext, mUri)) {
+              VvmLog.w(TAG, String.format("Failed to schedule transcription for %s", mUri));
+            }
+          });
+    }
   }
 
-  private void updateVoicemail(ContentValues values) {
+  private boolean updateVoicemail(ContentValues values) {
     int updatedCount = mContentResolver.update(mUri, values, null, null);
     if (updatedCount != 1) {
       VvmLog.e(TAG, "Updating voicemail should have updated 1 row, was: " + updatedCount);
+      return false;
+    } else {
+      return true;
     }
   }
 }
diff --git a/java/com/android/voicemail/impl/imap/ImapHelper.java b/java/com/android/voicemail/impl/imap/ImapHelper.java
index f1bc8b2..94abe9b 100644
--- a/java/com/android/voicemail/impl/imap/ImapHelper.java
+++ b/java/com/android/voicemail/impl/imap/ImapHelper.java
@@ -251,13 +251,18 @@
     long time = messageDetails.getSentDate().getTime();
     String number = getNumber(messageDetails.getFrom());
     boolean isRead = Arrays.asList(messageDetails.getFlags()).contains(Flag.SEEN);
-    return Voicemail.createForInsertion(time, number)
-        .setPhoneAccount(mPhoneAccount)
-        .setSourcePackage(mContext.getPackageName())
-        .setSourceData(messageDetails.getUid())
-        .setIsRead(isRead)
-        .setTranscription(listener.getVoicemailTranscription())
-        .build();
+    Long duration = messageDetails.getDuration();
+    Voicemail.Builder builder =
+        Voicemail.createForInsertion(time, number)
+            .setPhoneAccount(mPhoneAccount)
+            .setSourcePackage(mContext.getPackageName())
+            .setSourceData(messageDetails.getUid())
+            .setIsRead(isRead)
+            .setTranscription(listener.getVoicemailTranscription());
+    if (duration != null) {
+      builder.setDuration(duration);
+    }
+    return builder.build();
   }
 
   /**
diff --git a/java/com/android/voicemail/impl/mail/MailTransport.java b/java/com/android/voicemail/impl/mail/MailTransport.java
index 3df36d5..00339f0 100644
--- a/java/com/android/voicemail/impl/mail/MailTransport.java
+++ b/java/com/android/voicemail/impl/mail/MailTransport.java
@@ -17,7 +17,9 @@
 
 import android.content.Context;
 import android.net.Network;
+import android.net.TrafficStats;
 import android.support.annotation.VisibleForTesting;
+import com.android.dialer.constants.TrafficStatsTags;
 import com.android.voicemail.impl.OmtpEvents;
 import com.android.voicemail.impl.imap.ImapHelper;
 import com.android.voicemail.impl.mail.store.ImapStore;
@@ -188,6 +190,7 @@
 
     try {
       LogUtils.v(TAG, "createSocket: network specified");
+      TrafficStats.setThreadStatsTag(TrafficStatsTags.VISUAL_VOICEMAIL_TAG);
       return mNetwork.getSocketFactory().createSocket();
     } catch (IOException ioe) {
       LogUtils.d(TAG, ioe.toString());
diff --git a/java/com/android/voicemail/impl/mail/Message.java b/java/com/android/voicemail/impl/mail/Message.java
index aea5d3e..ca65d3d 100644
--- a/java/com/android/voicemail/impl/mail/Message.java
+++ b/java/com/android/voicemail/impl/mail/Message.java
@@ -15,6 +15,7 @@
  */
 package com.android.voicemail.impl.mail;
 
+import android.support.annotation.Nullable;
 import android.support.annotation.VisibleForTesting;
 import java.util.Date;
 import java.util.HashSet;
@@ -64,6 +65,9 @@
 
   public abstract void setSentDate(Date sentDate) throws MessagingException;
 
+  @Nullable
+  public abstract Long getDuration() throws MessagingException;
+
   public abstract Address[] getRecipients(String type) throws MessagingException;
 
   public abstract void setRecipients(String type, Address[] addresses) throws MessagingException;
diff --git a/java/com/android/voicemail/impl/mail/internet/MimeHeader.java b/java/com/android/voicemail/impl/mail/internet/MimeHeader.java
index d41cdb3..8f08176 100644
--- a/java/com/android/voicemail/impl/mail/internet/MimeHeader.java
+++ b/java/com/android/voicemail/impl/mail/internet/MimeHeader.java
@@ -36,6 +36,7 @@
   public static final String HEADER_CONTENT_TRANSFER_ENCODING = "Content-Transfer-Encoding";
   public static final String HEADER_CONTENT_DISPOSITION = "Content-Disposition";
   public static final String HEADER_CONTENT_ID = "Content-ID";
+  public static final String HEADER_CONTENT_DURATION = "Content-Duration";
 
   /** Fields that should be omitted when writing the header using writeTo() */
   private static final String[] WRITE_OMIT_FIELDS = {
diff --git a/java/com/android/voicemail/impl/mail/internet/MimeMessage.java b/java/com/android/voicemail/impl/mail/internet/MimeMessage.java
index 5897206..39378a0 100644
--- a/java/com/android/voicemail/impl/mail/internet/MimeMessage.java
+++ b/java/com/android/voicemail/impl/mail/internet/MimeMessage.java
@@ -15,7 +15,9 @@
  */
 package com.android.voicemail.impl.mail.internet;
 
+import android.support.annotation.Nullable;
 import android.text.TextUtils;
+import com.android.voicemail.impl.VvmLog;
 import com.android.voicemail.impl.mail.Address;
 import com.android.voicemail.impl.mail.Body;
 import com.android.voicemail.impl.mail.BodyPart;
@@ -197,6 +199,28 @@
   }
 
   @Override
+  @Nullable
+  public Long getDuration() {
+    String durationHeader = null;
+    try {
+      durationHeader = getFirstHeader(MimeHeader.HEADER_CONTENT_DURATION);
+    } catch (MessagingException e) {
+      VvmLog.e("MimeMessage.getDuration", "cannot retrieve header: ", e);
+      return null;
+    }
+    if (durationHeader == null) {
+      VvmLog.w("MimeMessage.getDuration", "message missing Content-Duration header");
+      return null;
+    }
+    try {
+      return Long.valueOf(durationHeader);
+    } catch (NumberFormatException e) {
+      VvmLog.w("MimeMessage.getDuration", "cannot parse duration " + durationHeader);
+      return null;
+    }
+  }
+
+  @Override
   public String getContentType() throws MessagingException {
     final String contentType = getFirstHeader(MimeHeader.HEADER_CONTENT_TYPE);
     if (contentType == null) {
diff --git a/java/com/android/voicemail/impl/mail/store/imap/ImapConstants.java b/java/com/android/voicemail/impl/mail/store/imap/ImapConstants.java
index 88ec0ed..fd56952 100644
--- a/java/com/android/voicemail/impl/mail/store/imap/ImapConstants.java
+++ b/java/com/android/voicemail/impl/mail/store/imap/ImapConstants.java
@@ -27,7 +27,7 @@
   public static final String FETCH_FIELD_BODY_PEEK_SANE =
       String.format(Locale.US, "BODY.PEEK[]<0.%d>", ImapStore.FETCH_BODY_SANE_SUGGESTED_SIZE);
   public static final String FETCH_FIELD_HEADERS =
-      "BODY.PEEK[HEADER.FIELDS (date subject from content-type to cc message-id)]";
+      "BODY.PEEK[HEADER.FIELDS (date subject from content-type to cc message-id content-duration)]";
 
   public static final String ALERT = "ALERT";
   public static final String APPEND = "APPEND";
diff --git a/java/com/android/voicemail/impl/protocol/Vvm3Subscriber.java b/java/com/android/voicemail/impl/protocol/Vvm3Subscriber.java
index 1cdbbfb..d9a0649 100644
--- a/java/com/android/voicemail/impl/protocol/Vvm3Subscriber.java
+++ b/java/com/android/voicemail/impl/protocol/Vvm3Subscriber.java
@@ -31,7 +31,7 @@
 import android.text.Spanned;
 import android.text.style.URLSpan;
 import android.util.ArrayMap;
-import com.android.dialer.common.ConfigProviderBindings;
+import com.android.dialer.configprovider.ConfigProviderBindings;
 import com.android.voicemail.impl.ActivationTask;
 import com.android.voicemail.impl.Assert;
 import com.android.voicemail.impl.OmtpEvents;
diff --git a/java/com/android/voicemail/impl/res/xml/vvm_config.xml b/java/com/android/voicemail/impl/res/xml/vvm_config.xml
index b03115a..2bac66b 100644
--- a/java/com/android/voicemail/impl/res/xml/vvm_config.xml
+++ b/java/com/android/voicemail/impl/res/xml/vvm_config.xml
@@ -21,75 +21,6 @@
       <item value="TEST"/>
     </string-array>
   </pbundle_as_map>
-
-  <pbundle_as_map>
-    <!-- Orange Belgium -->
-    <string name="feature_flag_name">vvm_carrier_flag_20610</string>
-    <string-array name="mccmnc">
-      <item value="20610"/>
-    </string-array>
-
-    <int
-        name="vvm_port_number_int"
-        value="0"/>
-    <string name="vvm_destination_number_string">8082</string>
-    <string name="vvm_type_string">vvm_type_omtp</string>
-    <boolean
-        name="vvm_cellular_data_required_bool"
-        value="true"/>
-    <!-- Carrier VVM app com.orange.vvm only supports Orange FR-->
-    <string-array name="vvm_disabled_capabilities_string_array">
-      <!-- b/32365569 -->
-      <item value="STARTTLS"/>
-    </string-array>
-  </pbundle_as_map>
-
-  <pbundle_as_map>
-    <!-- Orange France -->
-    <string-array name="mccmnc">
-      <item value="20801"/>
-      <item value="20802"/>
-    </string-array>
-
-    <int
-      name="vvm_port_number_int"
-      value="20481"/>
-    <string name="vvm_destination_number_string">21101</string>
-    <string-array name="carrier_vvm_package_name_string_array">
-      <item value="com.orange.vvm"/>
-    </string-array>
-    <string name="vvm_type_string">vvm_type_omtp</string>
-    <boolean
-      name="vvm_cellular_data_required_bool"
-      value="true"/>
-    <string-array name="vvm_disabled_capabilities_string_array">
-      <!-- b/32365569 -->
-      <item value="STARTTLS"/>
-    </string-array>
-  </pbundle_as_map>
-
-  <pbundle_as_map>
-    <!-- Orange Luxembourg -->
-    <string name="feature_flag_name">vvm_carrier_flag_27099</string>
-    <string-array name="mccmnc">
-      <item value="27099"/>
-    </string-array>
-
-    <int
-        name="vvm_port_number_int"
-        value="0"/>
-    <string name="vvm_destination_number_string">64085</string>
-    <string name="vvm_type_string">vvm_type_omtp</string>
-    <boolean
-        name="vvm_cellular_data_required_bool"
-        value="true"/>
-    <!-- Carrier VVM app com.orange.vvm only supports Orange FR-->
-    <string-array name="vvm_disabled_capabilities_string_array">
-      <!-- b/32365569 -->
-      <item value="STARTTLS"/>
-    </string-array>
-  </pbundle_as_map>
-
   <pbundle_as_map>
     <!-- T-Mobile USA-->
     <string-array name="mccmnc">
diff --git a/java/com/android/voicemail/impl/scheduling/TaskSchedulerService.java b/java/com/android/voicemail/impl/scheduling/TaskSchedulerService.java
deleted file mode 100644
index 5ad2447..0000000
--- a/java/com/android/voicemail/impl/scheduling/TaskSchedulerService.java
+++ /dev/null
@@ -1,400 +0,0 @@
-/*
- * Copyright (C) 2016 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License
- */
-
-package com.android.voicemail.impl.scheduling;
-
-import android.annotation.TargetApi;
-import android.app.Service;
-import android.content.Context;
-import android.content.Intent;
-import android.os.Binder;
-import android.os.Build.VERSION_CODES;
-import android.os.Bundle;
-import android.os.Handler;
-import android.os.HandlerThread;
-import android.os.IBinder;
-import android.os.Looper;
-import android.os.Message;
-import android.support.annotation.MainThread;
-import android.support.annotation.Nullable;
-import android.support.annotation.VisibleForTesting;
-import android.support.annotation.WorkerThread;
-import com.android.voicemail.impl.Assert;
-import com.android.voicemail.impl.NeededForTesting;
-import com.android.voicemail.impl.VvmLog;
-import com.android.voicemail.impl.scheduling.TaskQueue.NextTask;
-import java.util.List;
-
-/**
- * A service to queue and run {@link Task} with the {@link android.app.job.JobScheduler}. A task is
- * queued using {@link Context#startService(Intent)}. The intent should contain enough information
- * in {@link Intent#getExtras()} to construct the task (see {@link Tasks#createIntent(Context,
- * Class)}).
- *
- * <p>All tasks are ran in the background with a wakelock being held by the {@link
- * android.app.job.JobScheduler}, which is between {@link #onStartJob(Job, List)} and {@link
- * #finishJob()}. The {@link TaskSchedulerJobService} also has a {@link TaskQueue}, but the data is
- * stored in the {@link android.app.job.JobScheduler} instead of the process memory, so if the
- * process is killed the queued tasks will be restored. If a new task is added, a new {@link
- * TaskSchedulerJobService} will be scheduled to run the task. If the job is already scheduled, the
- * new task will be pushed into the queue of the scheduled job. If the job is already running, the
- * job will be queued in process memory.
- *
- * <p>Only one task will be ran at a time, and same task cannot exist in the queue at the same time.
- * Refer to {@link TaskQueue} for queuing and execution order.
- *
- * <p>If there are still tasks in the queue but none are executable immediately, the service will
- * enter a "sleep", pushing all remaining task into a new job and end the current job.
- *
- * <p>The service will be started when a intent is received, and stopped when there are no more
- * tasks in the queue.
- *
- * <p>{@link android.app.job.JobScheduler} is not used directly due to:
- *
- * <ul>
- *   <li>The {@link android.telecom.PhoneAccountHandle} used to differentiate task can not be easily
- *       mapped into an integer for job id
- *   <li>A job cannot be mutated to store information such as retry count.
- * </ul>
- */
-@SuppressWarnings("AndroidApiChecker") /* stream() */
-@TargetApi(VERSION_CODES.O)
-public class TaskSchedulerService extends Service {
-
-  interface Job {
-    void finish();
-  }
-
-  private static final String TAG = "VvmTaskScheduler";
-
-  private static final int READY_TOLERANCE_MILLISECONDS = 100;
-
-  /**
-   * Threshold to determine whether to do a short or long sleep when a task is scheduled in the
-   * future.
-   *
-   * <p>A short sleep will continue the job and use {@link Handler#postDelayed(Runnable, long)} to
-   * wait for the next task.
-   *
-   * <p>A long sleep will finish the job and schedule a new one. The exact execution time is
-   * subjected to {@link android.app.job.JobScheduler} battery optimization, and is not exact.
-   */
-  private static final int SHORT_SLEEP_THRESHOLD_MILLISECONDS = 10_000;
-  /**
-   * When there are no more tasks to be run the service should be stopped. But when all tasks has
-   * finished there might still be more tasks in the message queue waiting to be processed,
-   * especially the ones submitted in {@link Task#onCompleted()}. Wait for a while before stopping
-   * the service to make sure there are no pending messages.
-   */
-  private static final int STOP_DELAY_MILLISECONDS = 5_000;
-
-  // The thread to run tasks on
-  private volatile WorkerThreadHandler mWorkerThreadHandler;
-
-  /**
-   * Used by tests to turn task handling into a single threaded process by calling {@link
-   * Handler#handleMessage(Message)} directly
-   */
-  private MessageSender mMessageSender = new MessageSender();
-
-  private MainThreadHandler mMainThreadHandler;
-
-  // Binder given to clients
-  private final IBinder mBinder = new LocalBinder();
-
-  /** Main thread only, access through {@link #getTasks()} */
-  private final TaskQueue mTasks = new TaskQueue();
-
-  private boolean mWorkerThreadIsBusy = false;
-
-  private Job mJob;
-
-  private final Runnable mStopServiceWithDelay =
-      new Runnable() {
-        @MainThread
-        @Override
-        public void run() {
-          VvmLog.i(TAG, "Stopping service");
-          finishJob();
-          stopSelf();
-        }
-      };
-
-  /** Should attempt to run the next task when a task has finished or been added. */
-  private boolean mTaskAutoRunDisabledForTesting = false;
-
-  @VisibleForTesting
-  final class WorkerThreadHandler extends Handler {
-
-    public WorkerThreadHandler(Looper looper) {
-      super(looper);
-    }
-
-    @Override
-    @WorkerThread
-    public void handleMessage(Message msg) {
-      Assert.isNotMainThread();
-      Task task = (Task) msg.obj;
-      try {
-        VvmLog.i(TAG, "executing task " + task);
-        task.onExecuteInBackgroundThread();
-      } catch (Throwable throwable) {
-        VvmLog.e(TAG, "Exception while executing task " + task + ":", throwable);
-      }
-
-      Message schedulerMessage = mMainThreadHandler.obtainMessage();
-      schedulerMessage.obj = task;
-      mMessageSender.send(schedulerMessage);
-    }
-  }
-
-  @VisibleForTesting
-  final class MainThreadHandler extends Handler {
-
-    public MainThreadHandler(Looper looper) {
-      super(looper);
-    }
-
-    @Override
-    @MainThread
-    public void handleMessage(Message msg) {
-      Assert.isMainThread();
-      Task task = (Task) msg.obj;
-      getTasks().remove(task);
-      task.onCompleted();
-      mWorkerThreadIsBusy = false;
-      maybeRunNextTask();
-    }
-  }
-
-  @Override
-  @MainThread
-  public void onCreate() {
-    super.onCreate();
-    HandlerThread thread = new HandlerThread("VvmTaskSchedulerService");
-    thread.start();
-
-    mWorkerThreadHandler = new WorkerThreadHandler(thread.getLooper());
-    mMainThreadHandler = new MainThreadHandler(Looper.getMainLooper());
-  }
-
-  @Override
-  public void onDestroy() {
-    mWorkerThreadHandler.getLooper().quit();
-  }
-
-  @Override
-  @MainThread
-  public int onStartCommand(@Nullable Intent intent, int flags, int startId) {
-    Assert.isMainThread();
-    if (intent == null) {
-      VvmLog.w(TAG, "null intent received");
-      return START_NOT_STICKY;
-    }
-    Task task = Tasks.createTask(this, intent.getExtras());
-    Assert.isTrue(task != null);
-    addTask(task);
-
-    mMainThreadHandler.removeCallbacks(mStopServiceWithDelay);
-    VvmLog.i(TAG, "task added");
-    if (mJob == null) {
-      scheduleJob(0, true);
-    } else {
-      maybeRunNextTask();
-    }
-    // STICKY means the service will be automatically restarted will the last intent if it is
-    // killed.
-    return START_NOT_STICKY;
-  }
-
-  @MainThread
-  @VisibleForTesting
-  void addTask(Task task) {
-    Assert.isMainThread();
-    getTasks().add(task);
-  }
-
-  @MainThread
-  @VisibleForTesting
-  TaskQueue getTasks() {
-    Assert.isMainThread();
-    return mTasks;
-  }
-
-  @MainThread
-  private void maybeRunNextTask() {
-    Assert.isMainThread();
-    if (mWorkerThreadIsBusy) {
-      return;
-    }
-    if (mTaskAutoRunDisabledForTesting) {
-      // If mTaskAutoRunDisabledForTesting is true, runNextTask() must be explicitly called
-      // to run the next task.
-      return;
-    }
-
-    runNextTask();
-  }
-
-  @VisibleForTesting
-  @MainThread
-  void runNextTask() {
-    Assert.isMainThread();
-    if (getTasks().isEmpty()) {
-      prepareStop();
-      return;
-    }
-    NextTask nextTask = getTasks().getNextTask(READY_TOLERANCE_MILLISECONDS);
-
-    if (nextTask.task != null) {
-      nextTask.task.onBeforeExecute();
-      Message message = mWorkerThreadHandler.obtainMessage();
-      message.obj = nextTask.task;
-      mWorkerThreadIsBusy = true;
-      mMessageSender.send(message);
-      return;
-    }
-    VvmLog.i(TAG, "minimal wait time:" + nextTask.minimalWaitTimeMillis);
-    if (!mTaskAutoRunDisabledForTesting && nextTask.minimalWaitTimeMillis != null) {
-      // No tasks are currently ready. Sleep until the next one should be.
-      // If a new task is added during the sleep the service will wake immediately.
-      sleep(nextTask.minimalWaitTimeMillis);
-    }
-  }
-
-  @MainThread
-  private void sleep(long timeMillis) {
-    VvmLog.i(TAG, "sleep for " + timeMillis + " millis");
-    if (timeMillis < SHORT_SLEEP_THRESHOLD_MILLISECONDS) {
-      mMainThreadHandler.postDelayed(
-          new Runnable() {
-            @Override
-            public void run() {
-              maybeRunNextTask();
-            }
-          },
-          timeMillis);
-      return;
-    }
-    finishJob();
-    mMainThreadHandler.post(() -> scheduleJob(timeMillis, false));
-  }
-
-  private List<Bundle> serializePendingTasks() {
-    return getTasks().toBundles();
-  }
-
-  private void prepareStop() {
-    VvmLog.i(
-        TAG,
-        "no more tasks, stopping service if no task are added in "
-            + STOP_DELAY_MILLISECONDS
-            + " millis");
-    mMainThreadHandler.postDelayed(mStopServiceWithDelay, STOP_DELAY_MILLISECONDS);
-  }
-
-  @NeededForTesting
-  static class MessageSender {
-
-    public void send(Message message) {
-      message.sendToTarget();
-    }
-  }
-
-  @NeededForTesting
-  void setTaskAutoRunDisabledForTest(boolean value) {
-    mTaskAutoRunDisabledForTesting = value;
-  }
-
-  @NeededForTesting
-  void setMessageSenderForTest(MessageSender sender) {
-    mMessageSender = sender;
-  }
-
-  /**
-   * The {@link TaskSchedulerJobService} has started and all queued task should be executed in the
-   * worker thread.
-   */
-  @MainThread
-  public void onStartJob(Job job, List<Bundle> pendingTasks) {
-    VvmLog.i(TAG, "onStartJob");
-    mJob = job;
-    mTasks.fromBundles(this, pendingTasks);
-    maybeRunNextTask();
-  }
-
-  /**
-   * The {@link TaskSchedulerJobService} is being terminated by the system (timeout or network
-   * lost). A new job will be queued to resume all pending tasks. The current unfinished job may be
-   * ran again.
-   */
-  @MainThread
-  public void onStopJob() {
-    VvmLog.e(TAG, "onStopJob");
-    if (isJobRunning()) {
-      finishJob();
-      mMainThreadHandler.post(() -> scheduleJob(0, true));
-    }
-  }
-
-  /**
-   * Serializes all pending tasks and schedule a new {@link TaskSchedulerJobService}.
-   *
-   * @param delayMillis the delay before stating the job, see {@link
-   *     android.app.job.JobInfo.Builder#setMinimumLatency(long)}. This must be 0 if {@code
-   *     isNewJob} is true.
-   * @param isNewJob a new job will be requested to run immediately, bypassing all requirements.
-   */
-  @MainThread
-  private void scheduleJob(long delayMillis, boolean isNewJob) {
-    Assert.isMainThread();
-    TaskSchedulerJobService.scheduleJob(this, serializePendingTasks(), delayMillis, isNewJob);
-    mTasks.clear();
-  }
-
-  /**
-   * Signals {@link TaskSchedulerJobService} the current session of tasks has finished, and the wake
-   * lock can be released. Note: this only takes effect after the main thread has been returned. If
-   * a new job need to be scheduled, it should be posted on the main thread handler instead of
-   * calling directly.
-   */
-  @MainThread
-  private void finishJob() {
-    Assert.isMainThread();
-    VvmLog.i(TAG, "finishing Job");
-    mJob.finish();
-    mJob = null;
-  }
-
-  @Override
-  @Nullable
-  public IBinder onBind(Intent intent) {
-    return mBinder;
-  }
-
-  @NeededForTesting
-  class LocalBinder extends Binder {
-
-    @NeededForTesting
-    public TaskSchedulerService getService() {
-      return TaskSchedulerService.this;
-    }
-  }
-
-  private boolean isJobRunning() {
-    return mJob != null;
-  }
-}
diff --git a/java/com/android/voicemail/impl/settings/VoicemailSettingsFragment.java b/java/com/android/voicemail/impl/settings/VoicemailSettingsFragment.java
index ac5f3ca..4860649 100644
--- a/java/com/android/voicemail/impl/settings/VoicemailSettingsFragment.java
+++ b/java/com/android/voicemail/impl/settings/VoicemailSettingsFragment.java
@@ -22,6 +22,7 @@
 import android.preference.PreferenceFragment;
 import android.preference.PreferenceScreen;
 import android.preference.SwitchPreference;
+import android.provider.Settings;
 import android.support.annotation.Nullable;
 import android.telecom.PhoneAccountHandle;
 import android.telephony.TelephonyManager;
@@ -29,7 +30,6 @@
 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.voicemail.VoicemailClient;
 import com.android.voicemail.VoicemailComponent;
 import com.android.voicemail.impl.OmtpVvmCarrierConfigHelper;
@@ -43,8 +43,7 @@
  */
 @TargetApi(VERSION_CODES.O)
 public class VoicemailSettingsFragment extends PreferenceFragment
-    implements Preference.OnPreferenceChangeListener,
-        VvmAccountManager.Listener {
+    implements Preference.OnPreferenceChangeListener, VvmAccountManager.Listener {
 
   private static final String TAG = "VmSettingsActivity";
 
@@ -83,9 +82,8 @@
 
     voicemailNotificationPreference =
         findPreference(getString(R.string.voicemail_notifications_key));
-    voicemailNotificationPreference.setIntent(
-        NotificationChannelManager.getInstance()
-            .getSettingsIntentForChannel(getContext(), Channel.VOICEMAIL, phoneAccountHandle));
+    voicemailNotificationPreference.setIntent(getNotificationSettingsIntent());
+
     voicemailNotificationPreference.setOnPreferenceClickListener(
         new OnPreferenceClickListener() {
           @Override
@@ -233,4 +231,12 @@
       updateChangePin();
     }
   }
+
+  private Intent getNotificationSettingsIntent() {
+    String channelId =
+        NotificationChannelManager.getVoicemailChannelId(getContext(), phoneAccountHandle);
+    return new Intent(Settings.ACTION_CHANNEL_NOTIFICATION_SETTINGS)
+        .putExtra(Settings.EXTRA_CHANNEL_ID, channelId)
+        .putExtra(Settings.EXTRA_APP_PACKAGE, getContext().getPackageName());
+  }
 }
diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionConfigProvider.java b/java/com/android/voicemail/impl/transcribe/TranscriptionConfigProvider.java
new file mode 100644
index 0000000..0c83615
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/TranscriptionConfigProvider.java
@@ -0,0 +1,62 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.voicemail.impl.transcribe;
+
+import android.content.Context;
+import com.android.dialer.configprovider.ConfigProviderBindings;
+
+/** Provides configuration values needed to connect to the transcription server. */
+public class TranscriptionConfigProvider {
+  private final Context context;
+
+  public TranscriptionConfigProvider(Context context) {
+    this.context = context;
+  }
+
+  public boolean isVoicemailTranscriptionEnabled() {
+    return ConfigProviderBindings.get(context).getBoolean("voicemail_transcription_enabled", false);
+  }
+
+  public String getServerAddress() {
+    // Private voicemail transcription service
+    return ConfigProviderBindings.get(context)
+        .getString(
+            "voicemail_transcription_server_address", "voicemailtranscription-pa.googleapis.com");
+  }
+
+  public String getApiKey() {
+    // Android API key restricted to com.google.android.dialer
+    return ConfigProviderBindings.get(context)
+        .getString(
+            "voicemail_transcription_client_api_key", "AIzaSyAXdDnif6B7sBYxU8hzw9qAp3pRPVHs060");
+  }
+
+  public String getAuthToken() {
+    return null;
+  }
+
+  public boolean shouldUsePlaintext() {
+    return ConfigProviderBindings.get(context)
+        .getBoolean("voicemail_transcription_server_use_plaintext", false);
+  }
+
+  @Override
+  public String toString() {
+    return String.format(
+        "{ address: %s, api key: %s, auth token: %s, plaintext: %b }",
+        getServerAddress(), getApiKey(), getAuthToken(), shouldUsePlaintext());
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionDbHelper.java b/java/com/android/voicemail/impl/transcribe/TranscriptionDbHelper.java
new file mode 100644
index 0000000..cbc5cb8
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/TranscriptionDbHelper.java
@@ -0,0 +1,105 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.voicemail.impl.transcribe;
+
+import android.annotation.TargetApi;
+import android.content.ContentResolver;
+import android.content.ContentValues;
+import android.content.Context;
+import android.database.Cursor;
+import android.net.Uri;
+import android.os.Build.VERSION_CODES;
+import android.provider.VoicemailContract.Voicemails;
+import android.support.annotation.WorkerThread;
+import android.support.v4.os.BuildCompat;
+import android.util.Pair;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+
+/** Helper class for reading and writing transcription data in the database */
+@TargetApi(VERSION_CODES.O)
+public class TranscriptionDbHelper {
+  private static final String[] PROJECTION =
+      new String[] {
+        Voicemails.TRANSCRIPTION, // 0
+        VoicemailCompat.TRANSCRIPTION_STATE // 1
+      };
+
+  public static final int TRANSCRIPTION = 0;
+  public static final int TRANSCRIPTION_STATE = 1;
+
+  private final ContentResolver contentResolver;
+  private final Uri uri;
+
+  TranscriptionDbHelper(Context context, Uri uri) {
+    Assert.isNotNull(uri);
+    this.contentResolver = context.getContentResolver();
+    this.uri = uri;
+  }
+
+  @WorkerThread
+  @TargetApi(VERSION_CODES.M) // used for try with resources
+  Pair<String, Integer> getTranscriptionAndState() {
+    Assert.checkArgument(BuildCompat.isAtLeastO());
+    Assert.isWorkerThread();
+    try (Cursor cursor = contentResolver.query(uri, PROJECTION, null, null, null)) {
+      if (cursor == null) {
+        LogUtil.e("TranscriptionDbHelper.getTranscriptionAndState", "query failed.");
+        return null;
+      }
+
+      if (cursor.moveToFirst()) {
+        String transcription = cursor.getString(TRANSCRIPTION);
+        int transcriptionState = cursor.getInt(TRANSCRIPTION_STATE);
+        return new Pair<>(transcription, transcriptionState);
+      }
+    }
+    LogUtil.i("TranscriptionDbHelper.getTranscriptionAndState", "query returned no results");
+    return null;
+  }
+
+  @WorkerThread
+  void setTranscriptionState(int transcriptionState) {
+    Assert.isWorkerThread();
+    LogUtil.i(
+        "TranscriptionDbHelper.setTranscriptionState",
+        "uri: " + uri + ", state: " + transcriptionState);
+    ContentValues values = new ContentValues();
+    values.put(VoicemailCompat.TRANSCRIPTION_STATE, transcriptionState);
+    updateDatabase(values);
+  }
+
+  @WorkerThread
+  void setTranscriptionAndState(String transcription, int transcriptionState) {
+    Assert.isWorkerThread();
+    LogUtil.i(
+        "TranscriptionDbHelper.setTranscriptionAndState",
+        "uri: " + uri + ", state: " + transcriptionState);
+    ContentValues values = new ContentValues();
+    values.put(Voicemails.TRANSCRIPTION, transcription);
+    values.put(VoicemailCompat.TRANSCRIPTION_STATE, transcriptionState);
+    updateDatabase(values);
+  }
+
+  private void updateDatabase(ContentValues values) {
+    int updatedCount = contentResolver.update(uri, values, null, null);
+    if (updatedCount != 1) {
+      LogUtil.e(
+          "TranscriptionDbHelper.updateDatabase",
+          "Wrong row count, should have updated 1 row, was: " + updatedCount);
+    }
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionService.java b/java/com/android/voicemail/impl/transcribe/TranscriptionService.java
new file mode 100644
index 0000000..3e80a7f
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/TranscriptionService.java
@@ -0,0 +1,203 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.voicemail.impl.transcribe;
+
+import android.app.job.JobInfo;
+import android.app.job.JobParameters;
+import android.app.job.JobScheduler;
+import android.app.job.JobService;
+import android.app.job.JobWorkItem;
+import android.content.ComponentName;
+import android.content.Context;
+import android.content.Intent;
+import android.net.Uri;
+import android.os.StrictMode;
+import android.support.annotation.MainThread;
+import android.support.annotation.VisibleForTesting;
+import android.support.v4.os.BuildCompat;
+import android.text.TextUtils;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.dialer.constants.ScheduledJobIds;
+import com.android.voicemail.impl.transcribe.grpc.TranscriptionClientFactory;
+import java.util.concurrent.ExecutorService;
+import java.util.concurrent.Executors;
+
+/**
+ * Job scheduler callback for launching voicemail transcription tasks. The transcription tasks will
+ * run in the background and will typically last for approximately the length of the voicemail audio
+ * (since thats how long the backend transcription service takes to do the transcription).
+ */
+public class TranscriptionService extends JobService {
+  @VisibleForTesting static final String EXTRA_VOICEMAIL_URI = "extra_voicemail_uri";
+
+  private ExecutorService executorService;
+  private JobParameters jobParameters;
+  private TranscriptionClientFactory clientFactory;
+  private TranscriptionConfigProvider configProvider;
+  private StrictMode.VmPolicy originalPolicy;
+
+  /** Callback used by a task to indicate it has finished processing its work item */
+  interface JobCallback {
+    void onWorkCompleted(JobWorkItem completedWorkItem);
+  }
+
+  // Schedule a task to transcribe the indicated voicemail, return true if transcription task was
+  // scheduled.
+  public static boolean transcribeVoicemail(Context context, Uri voicemailUri) {
+    Assert.isMainThread();
+    if (BuildCompat.isAtLeastO()) {
+      LogUtil.i("TranscriptionService.transcribeVoicemail", "scheduling transcription");
+      ComponentName componentName = new ComponentName(context, TranscriptionService.class);
+      JobInfo.Builder builder =
+          new JobInfo.Builder(ScheduledJobIds.VVM_TRANSCRIPTION_JOB, componentName)
+              .setMinimumLatency(0)
+              .setRequiredNetworkType(JobInfo.NETWORK_TYPE_ANY);
+      JobScheduler scheduler = context.getSystemService(JobScheduler.class);
+      JobWorkItem workItem = makeWorkItem(voicemailUri);
+      return scheduler.enqueue(builder.build(), workItem) == JobScheduler.RESULT_SUCCESS;
+    } else {
+      LogUtil.i("TranscriptionService.transcribeVoicemail", "not supported");
+      return false;
+    }
+  }
+
+  // Cancel all transcription tasks
+  public static void cancelTranscriptions(Context context) {
+    Assert.isMainThread();
+    LogUtil.enterBlock("TranscriptionService.cancelTranscriptions");
+    JobScheduler scheduler = context.getSystemService(JobScheduler.class);
+    scheduler.cancel(ScheduledJobIds.VVM_TRANSCRIPTION_JOB);
+  }
+
+  public TranscriptionService() {
+    Assert.isMainThread();
+  }
+
+  @VisibleForTesting
+  TranscriptionService(
+      ExecutorService executorService,
+      TranscriptionClientFactory clientFactory,
+      TranscriptionConfigProvider configProvider) {
+    this.executorService = executorService;
+    this.clientFactory = clientFactory;
+    this.configProvider = configProvider;
+  }
+
+  @Override
+  public boolean onStartJob(JobParameters params) {
+    Assert.isMainThread();
+    LogUtil.enterBlock("TranscriptionService.onStartJob");
+    if (!getConfigProvider().isVoicemailTranscriptionEnabled()) {
+      LogUtil.i("TranscriptionService.onStartJob", "transcription not enabled, exiting.");
+      return false;
+    } else if (TextUtils.isEmpty(getConfigProvider().getServerAddress())) {
+      LogUtil.i("TranscriptionService.onStartJob", "transcription server not configured, exiting.");
+      return false;
+    } else {
+      LogUtil.i(
+          "TranscriptionService.onStartJob",
+          "transcription server address: " + configProvider.getServerAddress());
+      originalPolicy = StrictMode.getVmPolicy();
+      StrictMode.enableDefaults();
+      jobParameters = params;
+      return checkForWork();
+    }
+  }
+
+  @Override
+  public boolean onStopJob(JobParameters params) {
+    Assert.isMainThread();
+    LogUtil.enterBlock("TranscriptionService.onStopJob");
+    cleanup();
+    return true;
+  }
+
+  @Override
+  public void onDestroy() {
+    Assert.isMainThread();
+    LogUtil.enterBlock("TranscriptionService.onDestroy");
+    cleanup();
+  }
+
+  private void cleanup() {
+    if (clientFactory != null) {
+      clientFactory.shutdown();
+      clientFactory = null;
+    }
+    if (executorService != null) {
+      executorService.shutdownNow();
+      executorService = null;
+    }
+    if (originalPolicy != null) {
+      StrictMode.setVmPolicy(originalPolicy);
+      originalPolicy = null;
+    }
+  }
+
+  @MainThread
+  private boolean checkForWork() {
+    Assert.isMainThread();
+    JobWorkItem workItem = jobParameters.dequeueWork();
+    if (workItem != null) {
+      getExecutorService()
+          .execute(new TranscriptionTask(this, new Callback(), workItem, getClientFactory()));
+      return true;
+    } else {
+      return false;
+    }
+  }
+
+  private ExecutorService getExecutorService() {
+    if (executorService == null) {
+      // The common use case is transcribing a single voicemail so just use a single thread executor
+      // The reason we're not using DialerExecutor here is because the transcription task can be
+      // very long running (ie. multiple minutes).
+      executorService = Executors.newSingleThreadExecutor();
+    }
+    return executorService;
+  }
+
+  private class Callback implements JobCallback {
+    @Override
+    public void onWorkCompleted(JobWorkItem completedWorkItem) {
+      Assert.isMainThread();
+      LogUtil.i("TranscriptionService.Callback.onWorkCompleted", completedWorkItem.toString());
+      jobParameters.completeWork(completedWorkItem);
+      checkForWork();
+    }
+  }
+
+  private static JobWorkItem makeWorkItem(Uri voicemailUri) {
+    Intent intent = new Intent();
+    intent.putExtra(EXTRA_VOICEMAIL_URI, voicemailUri);
+    return new JobWorkItem(intent);
+  }
+
+  private TranscriptionConfigProvider getConfigProvider() {
+    if (configProvider == null) {
+      configProvider = new TranscriptionConfigProvider(this);
+    }
+    return configProvider;
+  }
+
+  private TranscriptionClientFactory getClientFactory() {
+    if (clientFactory == null) {
+      clientFactory = new TranscriptionClientFactory(this, getConfigProvider());
+    }
+    return clientFactory;
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/TranscriptionTask.java b/java/com/android/voicemail/impl/transcribe/TranscriptionTask.java
new file mode 100644
index 0000000..0fbc33a
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/TranscriptionTask.java
@@ -0,0 +1,191 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.voicemail.impl.transcribe;
+
+import android.annotation.TargetApi;
+import android.app.job.JobWorkItem;
+import android.content.Context;
+import android.net.Uri;
+import android.text.TextUtils;
+import com.android.dialer.common.concurrent.ThreadUtil;
+import com.android.voicemail.impl.VvmLog;
+import com.android.voicemail.impl.transcribe.TranscriptionService.JobCallback;
+import com.android.voicemail.impl.transcribe.grpc.TranscriptionClient;
+import com.android.voicemail.impl.transcribe.grpc.TranscriptionClientFactory;
+import com.google.internal.communications.voicemailtranscription.v1.AudioFormat;
+import com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest;
+import com.google.protobuf.ByteString;
+import io.grpc.Status;
+import java.io.IOException;
+import java.io.InputStream;
+
+/**
+ * Background task to get a voicemail transcription and update the database.
+ *
+ * <pre>
+ * This task performs the following steps:
+ *   1. Update the transcription-state in the database to 'in-progress'
+ *   2. Create grpc client and transcription request
+ *   3. Make synchronous grpc transcription request to backend server
+ *     3a. On response
+ *       Update the database with transcription (if successful) and new transcription-state
+ *     3b. On network error
+ *       If retry-count < max then increment retry-count and retry the request
+ *       Otherwise update the transcription-state in the database to 'transcription-failed'
+ *   4. Notify the callback that the work item is complete
+ * </pre>
+ */
+public class TranscriptionTask implements Runnable {
+  private static final String TAG = "TranscriptionTask";
+
+  private final Context context;
+  private final JobCallback callback;
+  private final JobWorkItem workItem;
+  private final TranscriptionClientFactory clientFactory;
+  private final Uri voicemailUri;
+  private final TranscriptionDbHelper databaseHelper;
+  private ByteString audioData;
+  private AudioFormat encoding;
+
+  private static final int MAX_RETRIES = 2;
+  static final String AMR_PREFIX = "#!AMR\n";
+
+  public TranscriptionTask(
+      Context context,
+      JobCallback callback,
+      JobWorkItem workItem,
+      TranscriptionClientFactory clientFactory) {
+    this.context = context;
+    this.callback = callback;
+    this.workItem = workItem;
+    this.clientFactory = clientFactory;
+    this.voicemailUri = getVoicemailUri(workItem);
+    databaseHelper = new TranscriptionDbHelper(context, voicemailUri);
+  }
+
+  @Override
+  public void run() {
+    VvmLog.i(TAG, "run");
+    if (readAndValidateAudioFile()) {
+      updateTranscriptionState(VoicemailCompat.TRANSCRIPTION_IN_PROGRESS);
+      transcribeVoicemail();
+    } else {
+      updateTranscriptionState(VoicemailCompat.TRANSCRIPTION_FAILED);
+    }
+    ThreadUtil.postOnUiThread(
+        () -> {
+          callback.onWorkCompleted(workItem);
+        });
+  }
+
+  private void transcribeVoicemail() {
+    VvmLog.i(TAG, "transcribeVoicemail");
+    TranscribeVoicemailRequest request = makeRequest();
+    TranscriptionClient client = clientFactory.getClient();
+    String transcript = null;
+    for (int i = 0; transcript == null && i < MAX_RETRIES; i++) {
+      VvmLog.i(TAG, "transcribeVoicemail, try: " + (i + 1));
+      TranscriptionClient.TranscriptionResponseWrapper responseWrapper =
+          client.transcribeVoicemail(request);
+      if (responseWrapper.status != null) {
+        VvmLog.i(TAG, "transcribeVoicemail, status: " + responseWrapper.status.getCode());
+        if (shouldRetryRequest(responseWrapper.status)) {
+          backoff(i);
+        } else {
+          break;
+        }
+      } else if (responseWrapper.response != null) {
+        if (!TextUtils.isEmpty(responseWrapper.response.getTranscript())) {
+          VvmLog.i(TAG, "transcribeVoicemail, got response");
+          transcript = responseWrapper.response.getTranscript();
+        } else {
+          VvmLog.i(TAG, "transcribeVoicemail, empty transcription");
+        }
+      } else {
+        VvmLog.w(TAG, "transcribeVoicemail, no response");
+      }
+    }
+
+    int newState =
+        (transcript == null)
+            ? VoicemailCompat.TRANSCRIPTION_FAILED
+            : VoicemailCompat.TRANSCRIPTION_AVAILABLE;
+    updateTranscriptionAndState(transcript, newState);
+  }
+
+  private static boolean shouldRetryRequest(Status status) {
+    return status.getCode() == Status.Code.UNAVAILABLE;
+  }
+
+  private static void backoff(int retryCount) {
+    VvmLog.i(TAG, "backoff, count: " + retryCount);
+    try {
+      long millis = (1 << retryCount) * 1000;
+      Thread.sleep(millis);
+    } catch (InterruptedException e) {
+      VvmLog.w(TAG, "interrupted");
+      Thread.currentThread().interrupt();
+    }
+  }
+
+  private void updateTranscriptionAndState(String transcript, int newState) {
+    databaseHelper.setTranscriptionAndState(transcript, newState);
+  }
+
+  private void updateTranscriptionState(int newState) {
+    databaseHelper.setTranscriptionState(newState);
+  }
+
+  private TranscribeVoicemailRequest makeRequest() {
+    return TranscribeVoicemailRequest.newBuilder()
+        .setVoicemailData(audioData)
+        .setAudioFormat(encoding)
+        .build();
+  }
+
+  // Uses try-with-resource
+  @TargetApi(android.os.Build.VERSION_CODES.M)
+  private boolean readAndValidateAudioFile() {
+    if (voicemailUri == null) {
+      VvmLog.i(TAG, "Transcriber.readAndValidateAudioFile, file not found.");
+      return false;
+    } else {
+      VvmLog.i(TAG, "Transcriber.readAndValidateAudioFile, reading: " + voicemailUri);
+    }
+
+    try (InputStream in = context.getContentResolver().openInputStream(voicemailUri)) {
+      audioData = ByteString.readFrom(in);
+      VvmLog.i(TAG, "Transcriber.readAndValidateAudioFile, read " + audioData.size() + " bytes");
+    } catch (IOException e) {
+      VvmLog.e(TAG, "Transcriber.readAndValidateAudioFile", e);
+      return false;
+    }
+
+    if (audioData.startsWith(ByteString.copyFromUtf8(AMR_PREFIX))) {
+      encoding = AudioFormat.AMR_NB_8KHZ;
+    } else {
+      VvmLog.i(TAG, "Transcriber.readAndValidateAudioFile, unknown encoding");
+      encoding = AudioFormat.AUDIO_FORMAT_UNSPECIFIED;
+      return false;
+    }
+
+    return true;
+  }
+
+  private static Uri getVoicemailUri(JobWorkItem workItem) {
+    return workItem.getIntent().getParcelableExtra(TranscriptionService.EXTRA_VOICEMAIL_URI);
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/VoicemailCompat.java b/java/com/android/voicemail/impl/transcribe/VoicemailCompat.java
new file mode 100644
index 0000000..c6e30c6
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/VoicemailCompat.java
@@ -0,0 +1,59 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.voicemail.impl.transcribe;
+
+/**
+ * Provide access to new API constants before they're publicly available
+ *
+ * <p>Copied from android.provider.VoicemailContract.Voicemails. These should become public in O-MR1
+ * and these constants can be removed then.
+ */
+public class VoicemailCompat {
+
+  /**
+   * The state of the voicemail transcription.
+   *
+   * <p>Possible values: {@link #TRANSCRIPTION_NOT_STARTED}, {@link #TRANSCRIPTION_IN_PROGRESS},
+   * {@link #TRANSCRIPTION_FAILED}, {@link #TRANSCRIPTION_AVAILABLE}.
+   *
+   * <p>Type: INTEGER
+   */
+  public static final String TRANSCRIPTION_STATE = "transcription_state";
+
+  /**
+   * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has not yet been
+   * attempted.
+   */
+  public static final int TRANSCRIPTION_NOT_STARTED = 0;
+
+  /**
+   * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has begun but is not yet
+   * complete.
+   */
+  public static final int TRANSCRIPTION_IN_PROGRESS = 1;
+
+  /**
+   * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has been attempted and
+   * failed.
+   */
+  public static final int TRANSCRIPTION_FAILED = 2;
+
+  /**
+   * Value of {@link #TRANSCRIPTION_STATE} when the voicemail transcription has completed and the
+   * result has been stored in the {@link #TRANSCRIPTION} column.
+   */
+  public static final int TRANSCRIPTION_AVAILABLE = 3;
+}
diff --git a/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClient.java b/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClient.java
new file mode 100644
index 0000000..27603d9
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClient.java
@@ -0,0 +1,61 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.voicemail.impl.transcribe.grpc;
+
+import android.support.annotation.Nullable;
+import android.support.annotation.WorkerThread;
+import com.android.dialer.common.Assert;
+import com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailRequest;
+import com.google.internal.communications.voicemailtranscription.v1.TranscribeVoicemailResponse;
+import com.google.internal.communications.voicemailtranscription.v1.VoicemailTranscriptionServiceGrpc;
+import io.grpc.Status;
+import io.grpc.StatusRuntimeException;
+
+/** Wrapper around Grpc transcription server stub */
+public class TranscriptionClient {
+
+  private final VoicemailTranscriptionServiceGrpc.VoicemailTranscriptionServiceBlockingStub stub;
+
+  /** Wraps the server response and status objects, either of which may be null. */
+  public static class TranscriptionResponseWrapper {
+    public final TranscribeVoicemailResponse response;
+    public final Status status;
+
+    public TranscriptionResponseWrapper(
+        @Nullable TranscribeVoicemailResponse response, @Nullable Status status) {
+      Assert.checkArgument(!(response == null && status == null));
+      this.response = response;
+      this.status = status;
+    }
+  }
+
+  TranscriptionClient(
+      VoicemailTranscriptionServiceGrpc.VoicemailTranscriptionServiceBlockingStub stub) {
+    this.stub = stub;
+  }
+
+  @WorkerThread
+  public TranscriptionResponseWrapper transcribeVoicemail(TranscribeVoicemailRequest request) {
+    TranscribeVoicemailResponse response = null;
+    Status status = null;
+    try {
+      response = stub.transcribeVoicemail(request);
+    } catch (StatusRuntimeException e) {
+      status = e.getStatus();
+    }
+    return new TranscriptionClient.TranscriptionResponseWrapper(response, status);
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClientFactory.java b/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClientFactory.java
new file mode 100644
index 0000000..6101ed5
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/grpc/TranscriptionClientFactory.java
@@ -0,0 +1,194 @@
+/*
+ * Copyright (C) 2017 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License
+ */
+package com.android.voicemail.impl.transcribe.grpc;
+
+import android.content.Context;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
+import android.text.TextUtils;
+import com.android.dialer.common.Assert;
+import com.android.dialer.common.LogUtil;
+import com.android.voicemail.impl.transcribe.TranscriptionConfigProvider;
+import com.google.internal.communications.voicemailtranscription.v1.VoicemailTranscriptionServiceGrpc;
+import io.grpc.CallOptions;
+import io.grpc.Channel;
+import io.grpc.ClientCall;
+import io.grpc.ClientInterceptor;
+import io.grpc.ClientInterceptors;
+import io.grpc.ForwardingClientCall;
+import io.grpc.ManagedChannel;
+import io.grpc.ManagedChannelBuilder;
+import io.grpc.Metadata;
+import io.grpc.MethodDescriptor;
+import io.grpc.okhttp.OkHttpChannelBuilder;
+import java.security.MessageDigest;
+
+/**
+ * Factory for creating grpc clients that talk to the transcription server. This allows all clients
+ * to share the same channel, which is relatively expensive to create.
+ */
+public class TranscriptionClientFactory {
+  private static final String DIGEST_ALGORITHM_SHA1 = "SHA1";
+  private static final char[] HEX_UPPERCASE = {
+    '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F'
+  };
+
+  private final TranscriptionConfigProvider configProvider;
+  private final ManagedChannel originalChannel;
+  private final String packageName;
+  private final String cert;
+
+  public TranscriptionClientFactory(Context context, TranscriptionConfigProvider configProvider) {
+    this(context, configProvider, getManagedChannel(configProvider));
+  }
+
+  public TranscriptionClientFactory(
+      Context context, TranscriptionConfigProvider configProvider, ManagedChannel managedChannel) {
+    this.configProvider = configProvider;
+    this.packageName = context.getPackageName();
+    this.cert = getCertificateFingerprint(context);
+    originalChannel = managedChannel;
+  }
+
+  public TranscriptionClient getClient() {
+    LogUtil.enterBlock("TranscriptionClientFactory.getClient");
+    Assert.checkState(!originalChannel.isShutdown());
+    Channel channel =
+        ClientInterceptors.intercept(
+            originalChannel,
+            new Interceptor(
+                packageName, cert, configProvider.getApiKey(), configProvider.getAuthToken()));
+    return new TranscriptionClient(VoicemailTranscriptionServiceGrpc.newBlockingStub(channel));
+  }
+
+  public void shutdown() {
+    LogUtil.enterBlock("TranscriptionClientFactory.shutdown");
+    originalChannel.shutdown();
+  }
+
+  private static ManagedChannel getManagedChannel(TranscriptionConfigProvider configProvider) {
+    ManagedChannelBuilder<OkHttpChannelBuilder> builder =
+        OkHttpChannelBuilder.forTarget(configProvider.getServerAddress());
+    // Only use plaintext for debugging
+    if (configProvider.shouldUsePlaintext()) {
+      // Just passing 'false' doesnt have the same effect as not setting this field
+      builder.usePlaintext(true);
+    }
+    return builder.build();
+  }
+
+  private static String getCertificateFingerprint(Context context) {
+    try {
+      PackageInfo packageInfo =
+          context
+              .getPackageManager()
+              .getPackageInfo(context.getPackageName(), PackageManager.GET_SIGNATURES);
+      if (packageInfo != null
+          && packageInfo.signatures != null
+          && packageInfo.signatures.length > 0) {
+        MessageDigest messageDigest = MessageDigest.getInstance(DIGEST_ALGORITHM_SHA1);
+        if (messageDigest == null) {
+          LogUtil.w(
+              "TranscriptionClientFactory.getCertificateFingerprint", "error getting digest.");
+          return null;
+        }
+        byte[] bytes = messageDigest.digest(packageInfo.signatures[0].toByteArray());
+        if (bytes == null) {
+          LogUtil.w(
+              "TranscriptionClientFactory.getCertificateFingerprint", "empty message digest.");
+          return null;
+        }
+
+        int length = bytes.length;
+        StringBuilder out = new StringBuilder(length * 2);
+        for (int i = 0; i < length; i++) {
+          out.append(HEX_UPPERCASE[(bytes[i] & 0xf0) >>> 4]);
+          out.append(HEX_UPPERCASE[bytes[i] & 0x0f]);
+        }
+        return out.toString();
+      } else {
+        LogUtil.w(
+            "TranscriptionClientFactory.getCertificateFingerprint",
+            "failed to get package signature.");
+      }
+    } catch (Exception e) {
+      LogUtil.e(
+          "TranscriptionClientFactory.getCertificateFingerprint",
+          "error getting certificate fingerprint.",
+          e);
+    }
+
+    return null;
+  }
+
+  private static final class Interceptor implements ClientInterceptor {
+    private final String packageName;
+    private final String cert;
+    private final String apiKey;
+    private final String authToken;
+
+    private static final Metadata.Key<String> API_KEY_HEADER =
+        Metadata.Key.of("X-Goog-Api-Key", Metadata.ASCII_STRING_MARSHALLER);
+    private static final Metadata.Key<String> ANDROID_PACKAGE_HEADER =
+        Metadata.Key.of("X-Android-Package", Metadata.ASCII_STRING_MARSHALLER);
+    private static final Metadata.Key<String> ANDROID_CERT_HEADER =
+        Metadata.Key.of("X-Android-Cert", Metadata.ASCII_STRING_MARSHALLER);
+    private static final Metadata.Key<String> AUTHORIZATION_HEADER =
+        Metadata.Key.of("authorization", Metadata.ASCII_STRING_MARSHALLER);
+
+    public Interceptor(String packageName, String cert, String apiKey, String authToken) {
+      this.packageName = packageName;
+      this.cert = cert;
+      this.apiKey = apiKey;
+      this.authToken = authToken;
+    }
+
+    @Override
+    public <ReqT, RespT> ClientCall<ReqT, RespT> interceptCall(
+        MethodDescriptor<ReqT, RespT> method, CallOptions callOptions, Channel next) {
+      LogUtil.enterBlock(
+          "TranscriptionClientFactory.interceptCall, intercepted " + method.getFullMethodName());
+      ClientCall<ReqT, RespT> call = next.newCall(method, callOptions);
+
+      call =
+          new ForwardingClientCall.SimpleForwardingClientCall<ReqT, RespT>(call) {
+            @Override
+            public void start(Listener<RespT> responseListener, Metadata headers) {
+              if (!TextUtils.isEmpty(packageName)) {
+                LogUtil.i(
+                    "TranscriptionClientFactory.interceptCall",
+                    "attaching package name: " + packageName);
+                headers.put(ANDROID_PACKAGE_HEADER, packageName);
+              }
+              if (!TextUtils.isEmpty(cert)) {
+                LogUtil.i("TranscriptionClientFactory.interceptCall", "attaching android cert");
+                headers.put(ANDROID_CERT_HEADER, cert);
+              }
+              if (!TextUtils.isEmpty(apiKey)) {
+                LogUtil.i("TranscriptionClientFactory.interceptCall", "attaching API Key");
+                headers.put(API_KEY_HEADER, apiKey);
+              }
+              if (!TextUtils.isEmpty(authToken)) {
+                LogUtil.i("TranscriptionClientFactory.interceptCall", "attaching auth token");
+                headers.put(AUTHORIZATION_HEADER, "Bearer " + authToken);
+              }
+              super.start(responseListener, headers);
+            }
+          };
+      return call;
+    }
+  }
+}
diff --git a/java/com/android/voicemail/impl/transcribe/grpc/voicemail_transcription.proto b/java/com/android/voicemail/impl/transcribe/grpc/voicemail_transcription.proto
new file mode 100644
index 0000000..1fa4727
--- /dev/null
+++ b/java/com/android/voicemail/impl/transcribe/grpc/voicemail_transcription.proto
@@ -0,0 +1,44 @@
+// LINT.IfChange
+
+syntax = "proto2";
+
+package google.internal.communications.voicemailtranscription.v1;
+
+option java_multiple_files = true;
+option java_package = "com.google.internal.communications.voicemailtranscription.v1";
+option optimize_for = LITE_RUNTIME;
+
+// Enum that specifies supported audio formats.
+enum AudioFormat {
+  // Default but invalid value.
+  AUDIO_FORMAT_UNSPECIFIED = 0;
+
+  // Adaptive Multi-Rate Narrowband, 8kHz sampling frequency.
+  // https://en.wikipedia.org/wiki/Adaptive_Multi-Rate_audio_codec
+  AMR_NB_8KHZ = 1;
+}
+
+// Request for synchronous voicemail transcription.
+message TranscribeVoicemailRequest {
+  // Voicemail audio file containing the raw bytes we receive from the carrier.
+  optional bytes voicemail_data = 1;
+
+  // Audio format of the voicemail file.
+  optional AudioFormat audio_format = 2;
+}
+
+// Response for synchronous voicemail transcription.
+message TranscribeVoicemailResponse {
+  // The transcribed text of the voicemail.
+  optional string transcript = 1;
+}
+
+// RPC service for transcribing voicemails.
+service VoicemailTranscriptionService {
+  // Returns a transcript of the given voicemail.
+  rpc TranscribeVoicemail(TranscribeVoicemailRequest)
+      returns (TranscribeVoicemailResponse) {}
+}
+
+// LINT.ThenChange(//depot/google3/google/internal/communications/voicemailtranscription/v1/\
+//         voicemail_transcription.proto)
\ No newline at end of file
