diff options
Diffstat (limited to 'java/com/android/incallui')
58 files changed, 326 insertions, 480 deletions
diff --git a/java/com/android/incallui/CallButtonPresenter.java b/java/com/android/incallui/CallButtonPresenter.java index e36d9cf9e..30877ffa5 100644 --- a/java/com/android/incallui/CallButtonPresenter.java +++ b/java/com/android/incallui/CallButtonPresenter.java @@ -414,7 +414,7 @@ public class CallButtonPresenter final boolean showMute = call.can(android.telecom.Call.Details.CAPABILITY_MUTE); final boolean hasCameraPermission = - isVideo && VideoUtils.hasCameraPermissionAndAllowedByUser(mContext); + isVideo && VideoUtils.hasCameraPermissionAndShownPrivacyToast(mContext); // Disabling local video doesn't seem to work when dialing. See b/30256571. final boolean showPauseVideo = isVideo diff --git a/java/com/android/incallui/ContactInfoCache.java b/java/com/android/incallui/ContactInfoCache.java index fdfba3b9f..d50a5c26d 100644 --- a/java/com/android/incallui/ContactInfoCache.java +++ b/java/com/android/incallui/ContactInfoCache.java @@ -266,6 +266,8 @@ public class ContactInfoCache implements OnImageLoadCompleteListener { cce.userType = info.userType; cce.originalPhoneNumber = info.phoneNumber; cce.shouldShowLocation = info.shouldShowGeoDescription; + cce.isEmergencyNumber = info.isEmergencyNumber(); + cce.isVoicemailNumber = info.isVoiceMailNumber(); if (info.contactExists) { cce.contactLookupResult = ContactLookupResult.Type.LOCAL_CONTACT; @@ -428,6 +430,19 @@ public class ContactInfoCache implements OnImageLoadCompleteListener { + "; didLocalLookup = " + didLocalLookup); + ContactCacheEntry existingCacheEntry = mInfoMap.get(callId); + Log.d(TAG, "Existing cacheEntry in hashMap " + existingCacheEntry); + + // Mark it as emergency/voicemail if the cache exists and was emergency/voicemail before the + // number changed. + if (existingCacheEntry != null) { + if (existingCacheEntry.isEmergencyNumber) { + callerInfo.markAsEmergency(mContext); + } else if (existingCacheEntry.isVoicemailNumber) { + callerInfo.markAsVoiceMail(mContext); + } + } + int presentationMode = numberPresentation; if (callerInfo.contactExists || callerInfo.isEmergencyNumber() @@ -439,9 +454,6 @@ public class ContactInfoCache implements OnImageLoadCompleteListener { ContactCacheEntry cacheEntry = buildEntry(mContext, callerInfo, presentationMode); cacheEntry.queryId = queryToken.mQueryId; - ContactCacheEntry existingCacheEntry = mInfoMap.get(callId); - Log.d(TAG, "Existing cacheEntry in hashMap " + existingCacheEntry); - if (didLocalLookup) { if (cacheEntry.displayPhotoUri != null) { // When the difference between 2 numbers is only the prefix (e.g. + or IDD), @@ -704,6 +716,8 @@ public class ContactInfoCache implements OnImageLoadCompleteListener { boolean shouldShowLocation; boolean isBusiness; + boolean isEmergencyNumber; + boolean isVoicemailNumber; @Override public String toString() { @@ -743,6 +757,10 @@ public class ContactInfoCache implements OnImageLoadCompleteListener { + originalPhoneNumber + ", shouldShowLocation=" + shouldShowLocation + + ", isEmergencyNumber=" + + isEmergencyNumber + + ", isVoicemailNumber=" + + isVoicemailNumber + '}'; } } diff --git a/java/com/android/incallui/StatusBarNotifier.java b/java/com/android/incallui/StatusBarNotifier.java index 458df5149..53017a10e 100644 --- a/java/com/android/incallui/StatusBarNotifier.java +++ b/java/com/android/incallui/StatusBarNotifier.java @@ -66,6 +66,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.common.LogUtil; +import com.android.dialer.configprovider.ConfigProviderBindings; import com.android.dialer.enrichedcall.EnrichedCallManager; import com.android.dialer.enrichedcall.Session; import com.android.dialer.multimedia.MultimediaData; @@ -308,11 +309,19 @@ public class StatusBarNotifier if (callState == DialerCall.State.INCOMING || callState == DialerCall.State.CALL_WAITING || isVideoUpgradeRequest) { - boolean alreadyActive = - callList.getActiveOrBackgroundCall() != null - && InCallPresenter.getInstance().isShowingInCallUi(); - notificationType = - alreadyActive ? NOTIFICATION_INCOMING_CALL_QUIET : NOTIFICATION_INCOMING_CALL; + if (ConfigProviderBindings.get(mContext) + .getBoolean("quiet_incoming_call_if_ui_showing", true)) { + notificationType = + InCallPresenter.getInstance().isShowingInCallUi() + ? NOTIFICATION_INCOMING_CALL_QUIET + : NOTIFICATION_INCOMING_CALL; + } else { + boolean alreadyActive = + callList.getActiveOrBackgroundCall() != null + && InCallPresenter.getInstance().isShowingInCallUi(); + notificationType = + alreadyActive ? NOTIFICATION_INCOMING_CALL_QUIET : NOTIFICATION_INCOMING_CALL; + } } else { notificationType = NOTIFICATION_IN_CALL; } diff --git a/java/com/android/incallui/VideoCallPresenter.java b/java/com/android/incallui/VideoCallPresenter.java index bd9837097..a10602227 100644 --- a/java/com/android/incallui/VideoCallPresenter.java +++ b/java/com/android/incallui/VideoCallPresenter.java @@ -30,6 +30,7 @@ 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.util.PermissionsUtil; import com.android.incallui.InCallPresenter.InCallDetailsListener; import com.android.incallui.InCallPresenter.InCallOrientationListener; import com.android.incallui.InCallPresenter.InCallStateListener; @@ -186,7 +187,7 @@ public class VideoCallPresenter */ public static boolean showOutgoingVideo( Context context, int videoState, int sessionModificationState) { - if (!VideoUtils.hasCameraPermissionAndAllowedByUser(context)) { + if (!VideoUtils.hasCameraPermissionAndShownPrivacyToast(context)) { LogUtil.i("VideoCallPresenter.showOutgoingVideo", "Camera permission is disabled by user."); return false; } @@ -421,7 +422,7 @@ public class VideoCallPresenter @Override public void onCameraPermissionGranted() { LogUtil.i("VideoCallPresenter.onCameraPermissionGranted", ""); - VideoUtils.setCameraAllowedByUser(mContext); + PermissionsUtil.setCameraPrivacyToastShown(mContext); enableCamera(mPrimaryCall.getVideoCall(), isCameraRequired()); showVideoUi( mPrimaryCall.getVideoState(), @@ -839,7 +840,7 @@ public class VideoCallPresenter return; } - boolean hasCameraPermission = VideoUtils.hasCameraPermissionAndAllowedByUser(mContext); + boolean hasCameraPermission = VideoUtils.hasCameraPermissionAndShownPrivacyToast(mContext); if (!hasCameraPermission) { videoCall.setCamera(null); mPreviewSurfaceState = PreviewSurfaceState.NONE; @@ -1081,22 +1082,23 @@ public class VideoCallPresenter } @Override - public boolean shouldShowCameraPermissionDialog() { + public boolean shouldShowCameraPermissionToast() { if (mPrimaryCall == null) { - LogUtil.i("VideoCallPresenter.shouldShowCameraPermissionDialog", "null call"); + LogUtil.i("VideoCallPresenter.shouldShowCameraPermissionToast", "null call"); return false; } if (mPrimaryCall.didShowCameraPermission()) { LogUtil.i( - "VideoCallPresenter.shouldShowCameraPermissionDialog", "already shown for this call"); + "VideoCallPresenter.shouldShowCameraPermissionToast", "already shown for this call"); return false; } if (!ConfigProviderBindings.get(mContext) .getBoolean("camera_permission_dialog_allowed", true)) { - LogUtil.i("VideoCallPresenter.shouldShowCameraPermissionDialog", "disabled by config"); + LogUtil.i("VideoCallPresenter.shouldShowCameraPermissionToast", "disabled by config"); return false; } - return !VideoUtils.hasCameraPermission(mContext) || !VideoUtils.isCameraAllowedByUser(mContext); + return !VideoUtils.hasCameraPermission(mContext) + || !PermissionsUtil.hasCameraPrivacyToastShown(mContext); } @Override diff --git a/java/com/android/incallui/answer/impl/AnswerFragment.java b/java/com/android/incallui/answer/impl/AnswerFragment.java index 44310536d..b5dd1175b 100644 --- a/java/com/android/incallui/answer/impl/AnswerFragment.java +++ b/java/com/android/incallui/answer/impl/AnswerFragment.java @@ -718,7 +718,7 @@ public class AnswerFragment extends Fragment } view.setSystemUiVisibility(flags); if (isVideoCall() || isVideoUpgradeRequest()) { - if (VideoUtils.hasCameraPermissionAndAllowedByUser(getContext())) { + if (VideoUtils.hasCameraPermissionAndShownPrivacyToast(getContext())) { if (isSelfManagedCamera()) { answerVideoCallScreen = new SelfManagedAnswerVideoCallScreen(getCallId(), this, view); } else { diff --git a/java/com/android/incallui/call/TelecomAdapter.java b/java/com/android/incallui/call/TelecomAdapter.java index 4fc9f81eb..005278bff 100644 --- a/java/com/android/incallui/call/TelecomAdapter.java +++ b/java/com/android/incallui/call/TelecomAdapter.java @@ -88,9 +88,13 @@ public class TelecomAdapter implements InCallServiceListener { List<android.telecom.Call> conferenceable = call.getConferenceableCalls(); if (!conferenceable.isEmpty()) { call.conference(conferenceable.get(0)); + // It's safe to clear restrict count for merge action. + DialerCall.clearRestrictedCount(); } else { if (call.getDetails().can(android.telecom.Call.Details.CAPABILITY_MERGE_CONFERENCE)) { call.mergeConference(); + // It's safe to clear restrict count for merge action. + DialerCall.clearRestrictedCount(); } } } else { diff --git a/java/com/android/incallui/disconnectdialog/EnableWifiCallingPrompt.java b/java/com/android/incallui/disconnectdialog/EnableWifiCallingPrompt.java index da0c9d6be..a0ca8cd04 100644 --- a/java/com/android/incallui/disconnectdialog/EnableWifiCallingPrompt.java +++ b/java/com/android/incallui/disconnectdialog/EnableWifiCallingPrompt.java @@ -41,7 +41,7 @@ public class EnableWifiCallingPrompt implements DisconnectDialog { @Override public boolean shouldShow(DisconnectCause disconnectCause) { String reason = disconnectCause.getReason(); - if (reason.startsWith(REASON_WIFI_ON_BUT_WFC_OFF)) { + if (reason != null && reason.startsWith(REASON_WIFI_ON_BUT_WFC_OFF)) { LogUtil.i( "EnableWifiCallingPrompt.shouldShowPrompt", "showing prompt for disconnect cause: %s", diff --git a/java/com/android/incallui/disconnectdialog/VideoCallNotAvailablePrompt.java b/java/com/android/incallui/disconnectdialog/VideoCallNotAvailablePrompt.java index 34db976b2..526d45ed7 100644 --- a/java/com/android/incallui/disconnectdialog/VideoCallNotAvailablePrompt.java +++ b/java/com/android/incallui/disconnectdialog/VideoCallNotAvailablePrompt.java @@ -24,6 +24,7 @@ import android.support.annotation.NonNull; import android.telecom.DisconnectCause; import android.telecom.PhoneAccountHandle; import android.util.Pair; +import com.android.contacts.common.compat.telecom.TelecomManagerCompat; import com.android.dialer.callintent.CallInitiationType; import com.android.dialer.callintent.CallIntentBuilder; import com.android.dialer.common.LogUtil; @@ -33,12 +34,10 @@ import com.android.incallui.call.DialerCall; /** Prompt user to make voice call if video call is not currently available. */ public class VideoCallNotAvailablePrompt implements DisconnectDialog { - private static final String REASON_IMS_ACCESS_BLOCKED = "IMS_ACCESS_BLOCKED"; - @Override public boolean shouldShow(DisconnectCause disconnectCause) { if (disconnectCause.getCode() == DisconnectCause.ERROR - && REASON_IMS_ACCESS_BLOCKED.equals(disconnectCause.getReason())) { + && TelecomManagerCompat.REASON_IMS_ACCESS_BLOCKED.equals(disconnectCause.getReason())) { LogUtil.i( "VideoCallNotAvailablePrompt.shouldShowPrompt", "showing prompt for disconnect cause: %s", diff --git a/java/com/android/incallui/disconnectdialog/res/values-af/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-af/strings.xml index dae242699..5f07dfc1c 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-af/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-af/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Aktiveer"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Video-oproepe is nie nou beskikbaar nie"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Probeer weer later bel of gaan voort met die oproep as \'n stemoproep."</string> + <string name="voice_call" msgid="6748636104112578475">"Stemoproep"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-am/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-am/strings.xml index dae242699..62a77e482 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-am/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-am/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"አንቃ"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"የቪዲዮ ጥሪ ለጊዜው አይገኝም"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"በኋላ እንደገና ለመደወል ይሞክሩ ወይም ጥሪውን እንደ የድምጽ ጥሪ ይቀጥሉ።"</string> + <string name="voice_call" msgid="6748636104112578475">"የድምጽ ጥሪ"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-ar/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ar/strings.xml index dae242699..e29ee2f96 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-ar/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-ar/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"تمكين"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"اتصال الفيديو غير متوفر حاليًا"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"حاول الاتصال مرة أخرى لاحقًا أو أكمل المكالمة كمكالمة صوتية."</string> + <string name="voice_call" msgid="6748636104112578475">"مكالمة صوتية"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-be/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-be/strings.xml index dae242699..d4cab2640 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-be/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-be/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Уключыць"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Відэавыклікі зараз недаступныя"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Паспрабуйце зрабіць выклік пазней або працягніце выклік як галасавы."</string> + <string name="voice_call" msgid="6748636104112578475">"Галасавы выклік"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-bg/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-bg/strings.xml index dae242699..e9211abee 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-bg/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-bg/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Активиране"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"В момента не е възможно видеообаждане"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Опитайте да се обадите отново по-късно или продължете обаждането като гласово."</string> + <string name="voice_call" msgid="6748636104112578475">"Гласово обаждане"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-cs/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-cs/strings.xml index dae242699..502434ae3 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-cs/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-cs/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Zapnout"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Videohovory momentálně nejsou dostupné"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Zkuste zavolat později nebo v hovoru pokračujte bez videa."</string> + <string name="voice_call" msgid="6748636104112578475">"Hlasový hovor"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-da/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-da/strings.xml index dae242699..817226eeb 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-da/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-da/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Aktivér"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Det er ikke muligt at foretage videoopkald i øjeblikket"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Prøv at ringe igen senere, eller fortsæt med et taleopkald."</string> + <string name="voice_call" msgid="6748636104112578475">"Taleopkald"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-de/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-de/strings.xml index dae242699..8ebc527fc 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-de/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-de/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Aktivieren"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Videoanrufe sind momentan nicht verfügbar"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Versuche es später noch einmal oder setze den Anruf als Sprachanruf fort."</string> + <string name="voice_call" msgid="6748636104112578475">"Sprachanruf"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-es-rUS/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-es-rUS/strings.xml index dae242699..98afb12bb 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-es-rUS/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-es-rUS/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Habilitar"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"La videollamada no está disponible en este momento"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Prueba llamando de nuevo más tarde o continúa la llamada como una llamada de voz."</string> + <string name="voice_call" msgid="6748636104112578475">"Llamada de voz"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-es/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-es/strings.xml index dae242699..580ac8b11 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-es/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-es/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Habilitar"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"No se pueden hacer videollamadas en estos momentos"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Prueba a llamar de nuevo más tarde o haz una llamada de voz."</string> + <string name="voice_call" msgid="6748636104112578475">"Llamada de voz"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-eu/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-eu/strings.xml index dae242699..c207d39d5 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-eu/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-eu/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Gaitu"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Une honetan, bideo-deiak ez daude erabilgarri"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Saiatu geroago berriro deitzen, edo aldatu ahots-deira."</string> + <string name="voice_call" msgid="6748636104112578475">"Ahots-deia"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-fa/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-fa/strings.xml index dae242699..73c2a8693 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-fa/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-fa/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"فعال کردن"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"تماس ویدیویی درحال حاضر امکانپذیر نیست"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"بعداً دوباره تماس بگیرید یا با تماس صوتی ادامه دهید."</string> + <string name="voice_call" msgid="6748636104112578475">"تماس صوتی"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-fi/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-fi/strings.xml index dae242699..93d4cc7ca 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-fi/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-fi/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Ota käyttöön"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Videopuhelut ei ole tällä hetkellä saatavilla"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Yritä soittaa myöhemmin uudelleen tai jatka puhelua äänipuheluna."</string> + <string name="voice_call" msgid="6748636104112578475">"Puhelu"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-fr/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-fr/strings.xml index dae242699..f9dfdfad4 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-fr/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-fr/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Activer"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"La fonction d\'appel vidéo est momentanément indisponible"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Réessayez plus tard ou reprenez l\'appel en mode vocal."</string> + <string name="voice_call" msgid="6748636104112578475">"Appel vocal"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-gl/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-gl/strings.xml index dae242699..3313c4436 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-gl/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-gl/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Activar"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"As videochamadas non están dispoñibles actualmente"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Proba a chamar de novo máis tarde ou continuar a chamada como unha chamada de voz."</string> + <string name="voice_call" msgid="6748636104112578475">"Chamada de voz"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-hi/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-hi/strings.xml index dae242699..820153922 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-hi/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-hi/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"सक्षम करें"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"इस समय वीडियो कॉलिंग की सुविधा उपलब्ध नहीं है"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"बाद में दोबारा कॉल करने की कोशिश करें या कॉल को वॉइस कॉल के रूप में जारी रखें."</string> + <string name="voice_call" msgid="6748636104112578475">"वॉइस कॉल"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-hr/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-hr/strings.xml index dae242699..c1b56b7f7 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-hr/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-hr/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Omogući"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Videopozivanje trenutačno nije dostupno"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Pokušajte ponovno nazvati kasnije ili nastavite poziv kao glasovni."</string> + <string name="voice_call" msgid="6748636104112578475">"Glasovni poziv"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-hu/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-hu/strings.xml index dae242699..e1f9bd9d1 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-hu/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-hu/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Engedélyezés"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"A videohívás jelenleg nem érhető el"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Indítson hívást később, vagy folytassa hanghívásként."</string> + <string name="voice_call" msgid="6748636104112578475">"Hanghívás"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-hy/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-hy/strings.xml index dae242699..d2c10be1f 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-hy/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-hy/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Միացնել"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Տեսազանգը ներկայումս հասանելի չէ"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Ավելի ուշ նորից փորձեք զանգել կամ շարունակեք զանգն առանց տեսապատկերի:"</string> + <string name="voice_call" msgid="6748636104112578475">"Զանգ"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-in/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-in/strings.xml index dae242699..8b895bc2a 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-in/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-in/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Aktifkan"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Video call saat ini tidak tersedia"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Coba lagi nanti atau lanjutkan sebagai panggilan suara."</string> + <string name="voice_call" msgid="6748636104112578475">"Panggilan suara"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-it/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-it/strings.xml index dae242699..1b862f766 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-it/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-it/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Abilita"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Le videochiamate non sono disponibili in questo momento"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Prova a chiamare di nuovo più tardi o continua la chiamata come chiamata vocale."</string> + <string name="voice_call" msgid="6748636104112578475">"Chiamata vocale"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-iw/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-iw/strings.xml index dae242699..91af8a9e5 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-iw/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-iw/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"הפעלה"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"לא ניתן לשוחח בשיחת וידאו כרגע"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"מומלץ לנסות להתקשר מאוחר יותר או להמשיך לשוחח בשיחה קולית."</string> + <string name="voice_call" msgid="6748636104112578475">"שיחה קולית"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-ka/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ka/strings.xml index dae242699..804597972 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-ka/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-ka/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"ჩართვა"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"ვიდეოზარი ამჟამად მიუწვდომელია"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"სცადეთ, დარეკოთ მოგვიანებით ან გააგრძელოთ ხმოვანი ზარით."</string> + <string name="voice_call" msgid="6748636104112578475">"ხმოვანი ზარი"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-kk/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-kk/strings.xml index dae242699..47294f9ff 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-kk/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-kk/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Қосу"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Бейне қоңырау қазір қолжетімді емес"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Кейінірек қайталап көріңіз немесе дасуыстық қоңырау ретінде жалғастырыңыз."</string> + <string name="voice_call" msgid="6748636104112578475">"Дауыстық қоңырау"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-km/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-km/strings.xml index dae242699..6e1c0fea1 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-km/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-km/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"បើក"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"ការហៅវីដេអូមិនអាចធ្វើបានទេនៅពេលនេះ"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"សាកល្បងហៅម្ដងទៀតនៅពេលក្រោយ ឬបន្តការហៅជាសំឡេង។"</string> + <string name="voice_call" msgid="6748636104112578475">"ការហៅជាសំឡេង"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-ky/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ky/strings.xml index dae242699..15531690a 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-ky/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-ky/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Иштетүү"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Видео режиминде чалуу учурда жеткиликсиз"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Кийинчерээк кайра чалыңыз же үн режиминде чалып көрүңүз."</string> + <string name="voice_call" msgid="6748636104112578475">"Үн чалуусу"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-mk/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-mk/strings.xml index dae242699..3c061df22 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-mk/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-mk/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Овозможи"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Видеоповикувањето е недостапно во моментов."</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Обидете се да повикате повторно подоцна или продолжете со гласовен повик."</string> + <string name="voice_call" msgid="6748636104112578475">"Гласовен повик"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-ms/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ms/strings.xml index dae242699..efe87996e 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-ms/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-ms/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Dayakan"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Panggilan video tidak tersedia pada masa ini"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Cuba hubungi semula kemudian atau teruskan panggilan sebagai panggilan suara."</string> + <string name="voice_call" msgid="6748636104112578475">"Panggilan suara"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-my/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-my/strings.xml index dae242699..04a4f3a26 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-my/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-my/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"ဖွင့်ရန်"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"ဗီဒီယိုခေါ်ဆိုမှုကို လက်ရှိတွင် မရရှိနိုင်ပါ"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"နောက်မှ ထပ်မံခေါ်ဆိုကြည့်ပါ (သို့) အသံခေါ်ဆိုမှု ဆက်လုပ်ကြည့်ပါ။"</string> + <string name="voice_call" msgid="6748636104112578475">"အသံခေါ်ဆိုမှု"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-pt-rPT/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-pt-rPT/strings.xml index 7d11ede5f..fb6980a88 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-pt-rPT/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-pt-rPT/strings.xml @@ -18,7 +18,7 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Ativar"</string> - <string name="video_call_not_available_title" msgid="987490011944013201">"Neste momento, as videochamadas não estão disponíveis"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Neste momento, não é possível efetuar videochamadas"</string> <string name="video_call_not_available_message" msgid="2284146863894603221">"Experimente efetuar a videochamada mais tarde ou continue a chamada como uma chamada de voz."</string> <string name="voice_call" msgid="6748636104112578475">"Chamada de voz"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-ro/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ro/strings.xml index dae242699..783619256 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-ro/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-ro/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Activați"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Apelarea video este indisponibilă momentan"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Încercați să apelați din nou mai târziu sau continuați ca apel vocal."</string> + <string name="voice_call" msgid="6748636104112578475">"Apel vocal"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-ru/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ru/strings.xml index dae242699..ffc3f613b 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-ru/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-ru/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Включить"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"В настоящее время видеовызовы недоступны"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Повторите попытку позже или продолжайте выполнять вызов как голосовой."</string> + <string name="voice_call" msgid="6748636104112578475">"Голосовой вызов"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-si/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-si/strings.xml index dae242699..694887700 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-si/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-si/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"සබල කරන්න"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"වීඩියෝ ඇමතීම දැනට ලබා ගැනීමට නොහැකිය"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"පසුව නැවත ඇමතීම උත්සාහ කරන්න නැතහොත් ඇමතුම හඬ ඇමතුමක් ලෙස දිගටම කරගෙන යන්න."</string> + <string name="voice_call" msgid="6748636104112578475">"හඬ ඇමතීම"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-sk/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-sk/strings.xml index dae242699..8f4b059b0 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-sk/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-sk/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Povoliť"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Videohovor momentálne nie je k dispozícii"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Skúste zavolať znova neskôr alebo pokračujte v hovore bez videa."</string> + <string name="voice_call" msgid="6748636104112578475">"Hlasový hovor"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-sq/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-sq/strings.xml index dae242699..cccc83f93 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-sq/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-sq/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Aktivizo"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Telefonatat me video nuk ofrohen aktualisht"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Provo të telefonosh përsëri më vonë ose vazhdoje telefonatën si një telefonatë zanore."</string> + <string name="voice_call" msgid="6748636104112578475">"Telefonatë me video"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-sv/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-sv/strings.xml index dae242699..e6be38418 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-sv/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-sv/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Aktivera"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Det går inte att ringa videosamtal just nu"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Försök ringa upp igen senare eller fortsätt samtalet som ett röstsamtal"</string> + <string name="voice_call" msgid="6748636104112578475">"Röstsamtal"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-sw/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-sw/strings.xml index dae242699..6d6a6a06d 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-sw/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-sw/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Washa"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Kipengele cha kupiga simu za video hakipatikani kwa sasa"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Jaribu kupiga simu ya video tena hapo baadaye au uendelee na mazungumzo kama simu ya sauti."</string> + <string name="voice_call" msgid="6748636104112578475">"Simu ya sauti"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-tl/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-tl/strings.xml index dae242699..17f29af56 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-tl/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-tl/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"I-enable"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Kasalukuyang hindi available ang pakikipag-video call"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Subukang tumawag muli sa ibang pagkakataon o ipagpatuloy ang tawag bilang isang voice call."</string> + <string name="voice_call" msgid="6748636104112578475">"Voice call"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-tr/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-tr/strings.xml index dae242699..a0ba4fa8a 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-tr/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-tr/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Etkinleştir"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Görüntülü görüşme şu anda kullanılamıyor"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Görüntülü görüşme yapmayı daha sonra tekrar deneyin veya görüşmeye sesli arama olarak devam edin."</string> + <string name="voice_call" msgid="6748636104112578475">"Sesli arama"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-ur/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-ur/strings.xml index dae242699..4fa8b50d4 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-ur/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-ur/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"فعال کریں"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"ویڈیو کالنگ فی الحال دستیاب نہیں ہے"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"بعد میں دوبارہ کال کرنے کی کوشش کریں یا کال کو بطور صوتی کال جاری رکھیں۔"</string> + <string name="voice_call" msgid="6748636104112578475">"صوتی کال"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-uz/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-uz/strings.xml index dae242699..229e6e798 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-uz/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-uz/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Yoqish"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Video muloqot funksiyasidan hozirgi vaqtda foydalanib bo‘lmaydi."</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Keyinroq qayta urinib ko‘ring yoki ovozli muloqot rejimida o‘ting."</string> + <string name="voice_call" msgid="6748636104112578475">"Ovozli muloqot"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-vi/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-vi/strings.xml index dae242699..3e49451b4 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-vi/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-vi/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"Bật"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"Hiện không sử dụng được tính năng gọi điện video"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"Hãy thử gọi lại sau hoặc tiếp tục gọi dưới dạng cuộc gọi thoại."</string> + <string name="voice_call" msgid="6748636104112578475">"Cuộc gọi thoại"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-zh-rCN/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-zh-rCN/strings.xml index dae242699..3f8cd6d62 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-zh-rCN/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-zh-rCN/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"启用"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"当前无法使用视频通话功能"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"请稍后再试,或者改用语音通话。"</string> + <string name="voice_call" msgid="6748636104112578475">"语音通话"</string> </resources> diff --git a/java/com/android/incallui/disconnectdialog/res/values-zh-rTW/strings.xml b/java/com/android/incallui/disconnectdialog/res/values-zh-rTW/strings.xml index dae242699..5201a341d 100644 --- a/java/com/android/incallui/disconnectdialog/res/values-zh-rTW/strings.xml +++ b/java/com/android/incallui/disconnectdialog/res/values-zh-rTW/strings.xml @@ -17,12 +17,8 @@ <resources xmlns:android="http://schemas.android.com/apk/res/android" xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2"> - <!-- no translation found for incall_enable_wifi_calling_button (3295230556186542328) --> - <skip /> - <!-- no translation found for video_call_not_available_title (987490011944013201) --> - <skip /> - <!-- no translation found for video_call_not_available_message (2284146863894603221) --> - <skip /> - <!-- no translation found for voice_call (6748636104112578475) --> - <skip /> + <string name="incall_enable_wifi_calling_button" msgid="3295230556186542328">"啟用"</string> + <string name="video_call_not_available_title" msgid="987490011944013201">"目前無法使用視訊通話功能"</string> + <string name="video_call_not_available_message" msgid="2284146863894603221">"請稍後再嘗試撥打電話,或以語音方式繼續進行通話。"</string> + <string name="voice_call" msgid="6748636104112578475">"語音通話"</string> </resources> diff --git a/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java b/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java index 489f72b7d..95bdd6b78 100644 --- a/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java +++ b/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java @@ -50,6 +50,7 @@ import com.android.dialer.common.Assert; import com.android.dialer.common.FragmentUtils; import com.android.dialer.common.LogUtil; import com.android.dialer.compat.ActivityCompat; +import com.android.dialer.util.PermissionsUtil; import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment; import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment.AudioRouteSelectorPresenter; import com.android.incallui.contactgrid.ContactGridManager; @@ -65,7 +66,6 @@ import com.android.incallui.incall.protocol.InCallScreenDelegateFactory; import com.android.incallui.incall.protocol.PrimaryCallState; import com.android.incallui.incall.protocol.PrimaryInfo; import com.android.incallui.incall.protocol.SecondaryInfo; -import com.android.incallui.video.impl.CameraPermissionDialogFragment.CameraPermissionDialogCallback; import com.android.incallui.video.impl.CheckableImageButton.OnCheckedChangeListener; import com.android.incallui.video.protocol.VideoCallScreen; import com.android.incallui.video.protocol.VideoCallScreenDelegate; @@ -85,15 +85,12 @@ public class SurfaceViewVideoCallFragment extends Fragment OnClickListener, OnCheckedChangeListener, AudioRouteSelectorPresenter, - OnSystemUiVisibilityChangeListener, - CameraPermissionDialogCallback { + OnSystemUiVisibilityChangeListener { @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE) static final String ARG_CALL_ID = "call_id"; private static final int CAMERA_PERMISSION_REQUEST_CODE = 1; - private static final String CAMERA_PERMISSION_DIALOG_FRAMENT_TAG = - "CameraPermissionDialogFragment"; private static final long CAMERA_PERMISSION_DIALOG_DELAY_IN_MILLIS = 2000L; private static final long VIDEO_OFF_VIEW_FADE_OUT_DELAY_IN_MILLIS = 2000L; @@ -131,7 +128,7 @@ public class SurfaceViewVideoCallFragment extends Fragment new Runnable() { @Override public void run() { - if (videoCallScreenDelegate.shouldShowCameraPermissionDialog()) { + if (videoCallScreenDelegate.shouldShowCameraPermissionToast()) { LogUtil.i( "SurfaceViewVideoCallFragment.cameraPermissionDialogRunnable", "showing dialog"); checkCameraPermission(); @@ -612,7 +609,7 @@ public class SurfaceViewVideoCallFragment extends Fragment @Override public void onCheckedChanged(CheckableImageButton button, boolean isChecked) { if (button == cameraOffButton) { - if (!isChecked && !VideoUtils.hasCameraPermissionAndAllowedByUser(getContext())) { + if (!isChecked && !VideoUtils.hasCameraPermissionAndShownPrivacyToast(getContext())) { LogUtil.i("SurfaceViewVideoCallFragment.onCheckedChanged", "show camera permission dialog"); checkCameraPermission(); } else { @@ -1048,24 +1045,19 @@ public class SurfaceViewVideoCallFragment extends Fragment } } - @Override - public void onCameraPermissionGranted() { - videoCallScreenDelegate.onCameraPermissionGranted(); - } - private void checkCameraPermission() { // Checks if user has consent of camera permission and the permission is granted. // If camera permission is revoked, shows system permission dialog. // If camera permission is granted but user doesn't have consent of camera permission // (which means it's first time making video call), shows custom dialog instead. This // will only be shown to user once. - if (!VideoUtils.hasCameraPermissionAndAllowedByUser(getContext())) { + if (!VideoUtils.hasCameraPermissionAndShownPrivacyToast(getContext())) { videoCallScreenDelegate.onCameraPermissionDialogShown(); if (!VideoUtils.hasCameraPermission(getContext())) { requestPermissions(new String[] {permission.CAMERA}, CAMERA_PERMISSION_REQUEST_CODE); } else { - CameraPermissionDialogFragment.newInstance() - .show(getChildFragmentManager(), CAMERA_PERMISSION_DIALOG_FRAMENT_TAG); + PermissionsUtil.showCameraPermissionToast(getContext()); + videoCallScreenDelegate.onCameraPermissionGranted(); } } } diff --git a/java/com/android/incallui/video/impl/VideoCallFragment.java b/java/com/android/incallui/video/impl/VideoCallFragment.java index f9b5d45fa..203710e5f 100644 --- a/java/com/android/incallui/video/impl/VideoCallFragment.java +++ b/java/com/android/incallui/video/impl/VideoCallFragment.java @@ -21,6 +21,7 @@ import android.content.Context; import android.content.pm.PackageManager; import android.content.res.Resources; import android.graphics.Bitmap; +import android.graphics.Matrix; import android.graphics.Outline; import android.graphics.Point; import android.graphics.drawable.Animatable; @@ -44,11 +45,11 @@ import android.view.Surface; import android.view.TextureView; import android.view.View; import android.view.View.OnClickListener; +import android.view.View.OnLayoutChangeListener; import android.view.View.OnSystemUiVisibilityChangeListener; import android.view.ViewGroup; import android.view.ViewGroup.MarginLayoutParams; import android.view.ViewOutlineProvider; -import android.view.ViewTreeObserver; import android.view.accessibility.AccessibilityEvent; import android.view.animation.AccelerateDecelerateInterpolator; import android.view.animation.Interpolator; @@ -59,8 +60,8 @@ import android.widget.TextView; 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.dialer.util.PermissionsUtil; import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment; import com.android.incallui.audioroute.AudioRouteSelectorDialogFragment.AudioRouteSelectorPresenter; import com.android.incallui.contactgrid.ContactGridManager; @@ -76,7 +77,6 @@ import com.android.incallui.incall.protocol.InCallScreenDelegateFactory; import com.android.incallui.incall.protocol.PrimaryCallState; import com.android.incallui.incall.protocol.PrimaryInfo; import com.android.incallui.incall.protocol.SecondaryInfo; -import com.android.incallui.video.impl.CameraPermissionDialogFragment.CameraPermissionDialogCallback; import com.android.incallui.video.impl.CheckableImageButton.OnCheckedChangeListener; import com.android.incallui.video.protocol.VideoCallScreen; import com.android.incallui.video.protocol.VideoCallScreenDelegate; @@ -94,8 +94,7 @@ public class VideoCallFragment extends Fragment OnClickListener, OnCheckedChangeListener, AudioRouteSelectorPresenter, - OnSystemUiVisibilityChangeListener, - CameraPermissionDialogCallback { + OnSystemUiVisibilityChangeListener { @VisibleForTesting(otherwise = VisibleForTesting.PRIVATE) static final String ARG_CALL_ID = "call_id"; @@ -107,8 +106,6 @@ public class VideoCallFragment extends Fragment private static final float ASPECT_RATIO_MATCH_THRESHOLD = 0.2f; private static final int CAMERA_PERMISSION_REQUEST_CODE = 1; - private static final String CAMERA_PERMISSION_DIALOG_FRAMENT_TAG = - "CameraPermissionDialogFragment"; private static final long CAMERA_PERMISSION_DIALOG_DELAY_IN_MILLIS = 2000L; private static final long VIDEO_OFF_VIEW_FADE_OUT_DELAY_IN_MILLIS = 2000L; @@ -123,9 +120,6 @@ public class VideoCallFragment extends Fragment } }; - // 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; @@ -161,7 +155,7 @@ public class VideoCallFragment extends Fragment new Runnable() { @Override public void run() { - if (videoCallScreenDelegate.shouldShowCameraPermissionDialog()) { + if (videoCallScreenDelegate.shouldShowCameraPermissionToast()) { LogUtil.i("VideoCallFragment.cameraPermissionDialogRunnable", "showing dialog"); checkCameraPermission(); } @@ -257,25 +251,43 @@ public class VideoCallFragment extends Fragment greenScreenBackgroundView = view.findViewById(R.id.videocall_green_screen_background); fullscreenBackgroundView = view.findViewById(R.id.videocall_fullscreen_background); - // We need the texture view size to be able to scale the remote video. At this point the view - // layout won't be complete so add a layout listener. - ViewTreeObserver observer = remoteTextureView.getViewTreeObserver(); - observer.addOnGlobalLayoutListener( - new ViewTreeObserver.OnGlobalLayoutListener() { + remoteTextureView.addOnLayoutChangeListener( + new OnLayoutChangeListener() { @Override - public void onGlobalLayout() { - LogUtil.i("VideoCallFragment.onGlobalLayout", null); + public void onLayoutChange( + View v, + int left, + int top, + int right, + int bottom, + int oldLeft, + int oldTop, + int oldRight, + int oldBottom) { + LogUtil.i("VideoCallFragment.onLayoutChange", "remoteTextureView layout changed"); updateRemoteVideoScaling(); - updatePreviewVideoScaling(); - updateVideoOffViews(); - // Remove the listener so we don't continually re-layout. - ViewTreeObserver observer = remoteTextureView.getViewTreeObserver(); - if (observer.isAlive()) { - observer.removeOnGlobalLayoutListener(this); - } + updateRemoteOffView(); } }); + previewTextureView.addOnLayoutChangeListener( + new OnLayoutChangeListener() { + @Override + public void onLayoutChange( + View v, + int left, + int top, + int right, + int bottom, + int oldLeft, + int oldTop, + int oldRight, + int oldBottom) { + LogUtil.i("VideoCallFragment.onLayoutChange", "previewTextureView layout changed"); + fixPreviewRotation(); + updatePreviewOffView(); + } + }); return view; } @@ -354,9 +366,6 @@ public class VideoCallFragment extends Fragment super.onPause(); LogUtil.i("VideoCallFragment.onPause", null); inCallScreenDelegate.onInCallScreenPaused(); - - // If this is scheduled we should remove it - ThreadUtil.getUiThreadHandler().removeCallbacks(updatePreviewVideoIfSafe); } @Override @@ -461,7 +470,7 @@ public class VideoCallFragment extends Fragment View view = getView(); if (view != null) { // Code is more expressive with all flags present, even though some may be combined - //noinspection PointlessBitwiseExpression + // noinspection PointlessBitwiseExpression view.setSystemUiVisibility(View.SYSTEM_UI_FLAG_VISIBLE | View.SYSTEM_UI_FLAG_LAYOUT_STABLE); } } @@ -641,7 +650,7 @@ public class VideoCallFragment extends Fragment @Override public void onCheckedChanged(CheckableImageButton button, boolean isChecked) { if (button == cameraOffButton) { - if (!isChecked && !VideoUtils.hasCameraPermissionAndAllowedByUser(getContext())) { + if (!isChecked && !VideoUtils.hasCameraPermissionAndShownPrivacyToast(getContext())) { LogUtil.i("VideoCallFragment.onCheckedChanged", "show camera permission dialog"); checkCameraPermission(); } else { @@ -662,15 +671,19 @@ public class VideoCallFragment extends Fragment "showPreview: %b, shouldShowRemote: %b", shouldShowPreview, shouldShowRemote); - this.shouldShowPreview = shouldShowPreview; - this.shouldShowRemote = shouldShowRemote; - this.isRemotelyHeld = isRemotelyHeld; videoCallScreenDelegate.getLocalVideoSurfaceTexture().attachToTextureView(previewTextureView); videoCallScreenDelegate.getRemoteVideoSurfaceTexture().attachToTextureView(remoteTextureView); - updateVideoOffViews(); - updateRemoteVideoScaling(); + this.isRemotelyHeld = isRemotelyHeld; + if (this.shouldShowRemote != shouldShowRemote) { + this.shouldShowRemote = shouldShowRemote; + updateRemoteOffView(); + } + if (this.shouldShowPreview != shouldShowPreview) { + this.shouldShowPreview = shouldShowPreview; + updatePreviewOffView(); + } } @Override @@ -732,7 +745,6 @@ public class VideoCallFragment extends Fragment } else { exitFullscreenMode(); } - updateVideoOffViews(); OnHoldFragment onHoldFragment = ((OnHoldFragment) @@ -949,31 +961,15 @@ public class VideoCallFragment extends Fragment // Do nothing } - private void updatePreviewVideoScaling() { - if (previewTextureView.getWidth() == 0 || previewTextureView.getHeight() == 0) { - LogUtil.i("VideoCallFragment.updatePreviewVideoScaling", "view layout hasn't finished yet"); - return; - } - VideoSurfaceTexture localVideoSurfaceTexture = - videoCallScreenDelegate.getLocalVideoSurfaceTexture(); - Point cameraDimensions = localVideoSurfaceTexture.getSurfaceDimensions(); - if (cameraDimensions == null) { - LogUtil.i( - "VideoCallFragment.updatePreviewVideoScaling", "camera dimensions haven't been set"); - return; - } - if (isLandscape()) { - VideoSurfaceBindings.scaleVideoAndFillView( - previewTextureView, - cameraDimensions.x, - cameraDimensions.y, - videoCallScreenDelegate.getDeviceOrientation()); - } else { - VideoSurfaceBindings.scaleVideoAndFillView( - previewTextureView, - cameraDimensions.y, - cameraDimensions.x, - videoCallScreenDelegate.getDeviceOrientation()); + private void fixPreviewRotation() { + int rotationDegrees = getRotationDegrees(); + if (rotationDegrees == 90 || rotationDegrees == 270) { + int viewWidth = previewTextureView.getWidth(); + int viewHeight = previewTextureView.getHeight(); + Matrix transform = new Matrix(); + // Multiplying by -1 prevents the image from being upside down in landscape mode. + transform.postRotate(rotationDegrees * -1.0f, viewWidth / 2.0f, viewHeight / 2.0f); + previewTextureView.setTransform(transform); } } @@ -1010,6 +1006,22 @@ public class VideoCallFragment extends Fragment return rotation == Surface.ROTATION_90 || rotation == Surface.ROTATION_270; } + private int getRotationDegrees() { + int rotation = getActivity().getWindowManager().getDefaultDisplay().getRotation(); + switch (rotation) { + case Surface.ROTATION_0: + return 0; + case Surface.ROTATION_90: + return 90; + case Surface.ROTATION_180: + return 180; + case Surface.ROTATION_270: + return 270; + default: + throw Assert.createAssertionFailException("unsupported rotation: " + rotation); + } + } + private void enterGreenScreenMode() { LogUtil.i("VideoCallFragment.enterGreenScreenMode", null); RelativeLayout.LayoutParams params = @@ -1019,7 +1031,6 @@ public class VideoCallFragment extends Fragment params.addRule(RelativeLayout.ALIGN_PARENT_TOP); previewTextureView.setLayoutParams(params); previewTextureView.setOutlineProvider(null); - updatePreviewVideoScaling(); updateOverlayBackground(); contactGridManager.setIsMiddleRowVisible(true); updateMutePreviewOverlayVisibility(); @@ -1055,12 +1066,11 @@ public class VideoCallFragment extends Fragment 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() { + private void updatePreviewOffView() { + LogUtil.enterBlock("VideoCallFragment.updatePreviewOffView"); + // Always hide the preview off and remote off views in green screen mode. boolean previewEnabled = isInGreenScreenMode || shouldShowPreview; previewOffOverlay.setVisibility(previewEnabled ? View.GONE : View.VISIBLE); @@ -1070,7 +1080,10 @@ public class VideoCallFragment extends Fragment shouldShowPreview, BLUR_PREVIEW_RADIUS, BLUR_PREVIEW_SCALE_FACTOR); + } + private void updateRemoteOffView() { + LogUtil.enterBlock("VideoCallFragment.updateRemoteOffView"); boolean remoteEnabled = isInGreenScreenMode || shouldShowRemote; boolean isResumed = remoteEnabled && !isRemotelyHeld; if (isResumed) { @@ -1097,7 +1110,6 @@ public class VideoCallFragment extends Fragment isRemotelyHeld ? R.string.videocall_remotely_held : R.string.videocall_remote_video_off); remoteVideoOff.setVisibility(View.VISIBLE); } - LogUtil.i("VideoCallFragment.updateVideoOffViews", "calling updateBlurredImageView"); updateBlurredImageView( remoteTextureView, remoteOffBlurredImageView, @@ -1125,6 +1137,8 @@ public class VideoCallFragment extends Fragment int width = Math.round(textureView.getWidth() * scaleFactor); int height = Math.round(textureView.getHeight() * scaleFactor); + LogUtil.i("VideoCallFragment.updateBlurredImageView", "width: %d, height: %d", width, height); + // This call takes less than 10 milliseconds. Bitmap bitmap = textureView.getBitmap(width, height); @@ -1239,26 +1253,21 @@ public class VideoCallFragment extends Fragment videoCallScreenDelegate.onSystemUiVisibilityChange(navBarVisible); } - @Override - public void onCameraPermissionGranted() { - videoCallScreenDelegate.onCameraPermissionGranted(); - } - private void checkCameraPermission() { // Checks if user has consent of camera permission and the permission is granted. // If camera permission is revoked, shows system permission dialog. // If camera permission is granted but user doesn't have consent of camera permission // (which means it's first time making video call), shows custom dialog instead. This // will only be shown to user once. - if (!VideoUtils.hasCameraPermissionAndAllowedByUser(getContext())) { + if (!VideoUtils.hasCameraPermissionAndShownPrivacyToast(getContext())) { videoCallScreenDelegate.onCameraPermissionDialogShown(); if (!VideoUtils.hasCameraPermission(getContext())) { requestPermissions(new String[] {permission.CAMERA}, CAMERA_PERMISSION_REQUEST_CODE); } else { - CameraPermissionDialogFragment.newInstance() - .show(getChildFragmentManager(), CAMERA_PERMISSION_DIALOG_FRAMENT_TAG); + PermissionsUtil.showCameraPermissionToast(getContext()); + videoCallScreenDelegate.onCameraPermissionGranted(); } } } } -//LINT.ThenChange(//depot/google3/third_party/java_src/android_app/dialer/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java) +// LINT.ThenChange(//depot/google3/third_party/java_src/android_app/dialer/java/com/android/incallui/video/impl/SurfaceViewVideoCallFragment.java) diff --git a/java/com/android/incallui/video/protocol/VideoCallScreenDelegate.java b/java/com/android/incallui/video/protocol/VideoCallScreenDelegate.java index e7e69df2f..55ea23f5e 100644 --- a/java/com/android/incallui/video/protocol/VideoCallScreenDelegate.java +++ b/java/com/android/incallui/video/protocol/VideoCallScreenDelegate.java @@ -37,7 +37,7 @@ public interface VideoCallScreenDelegate { void onCameraPermissionGranted(); - boolean shouldShowCameraPermissionDialog(); + boolean shouldShowCameraPermissionToast(); void onCameraPermissionDialogShown(); diff --git a/java/com/android/incallui/videosurface/impl/VideoSurfaceTextureImpl.java b/java/com/android/incallui/videosurface/impl/VideoSurfaceTextureImpl.java index 8cac40229..1af7dff4f 100644 --- a/java/com/android/incallui/videosurface/impl/VideoSurfaceTextureImpl.java +++ b/java/com/android/incallui/videosurface/impl/VideoSurfaceTextureImpl.java @@ -67,9 +67,6 @@ public class VideoSurfaceTextureImpl implements VideoSurfaceTexture { "VideoSurfaceTextureImpl.setSurfaceDimensions", "surfaceDimensions: " + surfaceDimensions + " " + toString()); this.surfaceDimensions = surfaceDimensions; - if (surfaceDimensions != null && savedSurfaceTexture != null) { - savedSurfaceTexture.setDefaultBufferSize(surfaceDimensions.x, surfaceDimensions.y); - } } @Override diff --git a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java b/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java index 55ee2db21..961de9e9a 100644 --- a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java +++ b/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java @@ -91,7 +91,9 @@ public class LightbringerTech implements VideoTech, LightbringerListener { } @Override - public void onRemovedFromCallList() {} + public void onRemovedFromCallList() { + lightbringer.unregisterListener(this); + } @Override public int getSessionModificationState() { diff --git a/java/com/android/incallui/videotech/utils/VideoUtils.java b/java/com/android/incallui/videotech/utils/VideoUtils.java index 527654030..9dfc68728 100644 --- a/java/com/android/incallui/videotech/utils/VideoUtils.java +++ b/java/com/android/incallui/videotech/utils/VideoUtils.java @@ -20,12 +20,10 @@ import android.content.Context; import android.content.pm.PackageManager; import android.support.annotation.NonNull; import android.support.v4.content.ContextCompat; -import com.android.dialer.util.DialerUtils; +import com.android.dialer.util.PermissionsUtil; public class VideoUtils { - private static final String PREFERENCE_CAMERA_ALLOWED_BY_USER = "camera_allowed_by_user"; - public static boolean hasSentVideoUpgradeRequest(@SessionModificationState int state) { return state == SessionModificationState.WAITING_FOR_UPGRADE_TO_VIDEO_RESPONSE || state == SessionModificationState.UPGRADE_TO_VIDEO_REQUEST_FAILED @@ -37,24 +35,12 @@ public class VideoUtils { return state == SessionModificationState.RECEIVED_UPGRADE_TO_VIDEO_REQUEST; } - public static boolean hasCameraPermissionAndAllowedByUser(@NonNull Context context) { - return isCameraAllowedByUser(context) && hasCameraPermission(context); + public static boolean hasCameraPermissionAndShownPrivacyToast(@NonNull Context context) { + return PermissionsUtil.hasCameraPrivacyToastShown(context) && hasCameraPermission(context); } public static boolean hasCameraPermission(@NonNull Context context) { return ContextCompat.checkSelfPermission(context, android.Manifest.permission.CAMERA) == PackageManager.PERMISSION_GRANTED; } - - public static boolean isCameraAllowedByUser(@NonNull Context context) { - return DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context) - .getBoolean(PREFERENCE_CAMERA_ALLOWED_BY_USER, false); - } - - public static void setCameraAllowedByUser(@NonNull Context context) { - DialerUtils.getDefaultSharedPreferenceForDeviceProtectedStorageContext(context) - .edit() - .putBoolean(PREFERENCE_CAMERA_ALLOWED_BY_USER, true) - .apply(); - } } |