summaryrefslogtreecommitdiff
path: root/java/com/android/incallui/contactgrid
diff options
context:
space:
mode:
Diffstat (limited to 'java/com/android/incallui/contactgrid')
-rw-r--r--java/com/android/incallui/contactgrid/ContactGridManager.java4
-rw-r--r--java/com/android/incallui/contactgrid/TopRow.java33
-rw-r--r--java/com/android/incallui/contactgrid/res/layout/incall_contactgrid_top_row.xml2
-rw-r--r--java/com/android/incallui/contactgrid/res/values/strings.xml11
4 files changed, 49 insertions, 1 deletions
diff --git a/java/com/android/incallui/contactgrid/ContactGridManager.java b/java/com/android/incallui/contactgrid/ContactGridManager.java
index 327eaf2b8..d8b1f5004 100644
--- a/java/com/android/incallui/contactgrid/ContactGridManager.java
+++ b/java/com/android/incallui/contactgrid/ContactGridManager.java
@@ -244,6 +244,10 @@ public class ContactGridManager {
statusTextView.setText(info.label);
statusTextView.setVisibility(View.VISIBLE);
statusTextView.setSingleLine(info.labelIsSingleLine);
+ // Required to start the marquee
+ // This will send a AccessibilityEvent.TYPE_VIEW_SELECTED, but has no observable effect on
+ // talkback.
+ statusTextView.setSelected(true);
}
if (info.icon == null) {
diff --git a/java/com/android/incallui/contactgrid/TopRow.java b/java/com/android/incallui/contactgrid/TopRow.java
index f551092d4..89300caa8 100644
--- a/java/com/android/incallui/contactgrid/TopRow.java
+++ b/java/com/android/incallui/contactgrid/TopRow.java
@@ -166,7 +166,22 @@ public class TopRow {
private static CharSequence getLabelForDialing(Context context, PrimaryCallState state) {
if (!TextUtils.isEmpty(state.connectionLabel()) && !state.isWifi()) {
- return context.getString(R.string.incall_calling_via_template, state.connectionLabel());
+ CharSequence label = getCallingViaLabel(context, state);
+
+ if (state.isAssistedDialed() && state.assistedDialingExtras() != null) {
+ LogUtil.i("TopRow.getLabelForDialing", "using assisted dialing with via label.");
+ String countryCode =
+ String.valueOf(state.assistedDialingExtras().transformedNumberCountryCallingCode());
+ label =
+ TextUtils.concat(
+ label,
+ " • ",
+ context.getString(
+ R.string.incall_connecting_assited_dialed_component,
+ countryCode,
+ state.assistedDialingExtras().userHomeCountryCode()));
+ }
+ return label;
} else {
if (state.isVideoCall()) {
if (state.isWifi()) {
@@ -189,6 +204,22 @@ public class TopRow {
}
}
+ private static CharSequence getCallingViaLabel(Context context, PrimaryCallState state) {
+ if (state.simSuggestionReason() != null) {
+ switch (state.simSuggestionReason()) {
+ case FREQUENT:
+ return context.getString(
+ R.string.incall_calling_on_recent_choice_template, state.connectionLabel());
+ case INTRA_CARRIER:
+ return context.getString(
+ R.string.incall_calling_on_same_carrier_template, state.connectionLabel());
+ default:
+ break;
+ }
+ }
+ return context.getString(R.string.incall_calling_via_template, state.connectionLabel());
+ }
+
private static CharSequence getConnectionLabel(PrimaryCallState state) {
if (!TextUtils.isEmpty(state.connectionLabel())
&& (isAccount(state) || state.isWifi() || state.isConference())) {
diff --git a/java/com/android/incallui/contactgrid/res/layout/incall_contactgrid_top_row.xml b/java/com/android/incallui/contactgrid/res/layout/incall_contactgrid_top_row.xml
index 42066f286..2f9ca3ea8 100644
--- a/java/com/android/incallui/contactgrid/res/layout/incall_contactgrid_top_row.xml
+++ b/java/com/android/incallui/contactgrid/res/layout/incall_contactgrid_top_row.xml
@@ -40,6 +40,8 @@
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:singleLine="true"
+ android:ellipsize="marquee"
+ android:scrollHorizontally="true"
android:textAppearance="@style/Dialer.Incall.TextAppearance"
tools:text="Captain Holt"/>
</LinearLayout>
diff --git a/java/com/android/incallui/contactgrid/res/values/strings.xml b/java/com/android/incallui/contactgrid/res/values/strings.xml
index c6bdb11ba..7c0f5a679 100644
--- a/java/com/android/incallui/contactgrid/res/values/strings.xml
+++ b/java/com/android/incallui/contactgrid/res/values/strings.xml
@@ -20,6 +20,14 @@
[CHAR LIMIT=40] -->
<string name="incall_calling_via_template">Calling via <xliff:g id="provider_name">%s</xliff:g></string>
+ <!-- Title displayed in the overlay for outgoing calls when the provider is automatically chosen
+ because it is the same provider the callee is using. [CHAR LIMIT=60] -->
+ <string name="incall_calling_on_same_carrier_template">Calling on same carrier <xliff:g id="provider_name">%s</xliff:g></string>
+
+ <!-- Title displayed in the overlay for outgoing calls when the provider is automatically chosen
+ because the user has selected it multiple times. [CHAR LIMIT=60] -->
+ <string name="incall_calling_on_recent_choice_template">Calling on recent choice <xliff:g id="provider_name">%s</xliff:g></string>
+
<!-- Displayed above the contact name during an outgoing phone call. Indicates that the call is
in the connecting stage. -->
<string name="incall_connecting">Calling…</string>
@@ -27,6 +35,9 @@
<!-- Display information related to assisted dialing, for example Calling using +1 (US)… -->
<string name="incall_connecting_assited_dialed">Calling using +<xliff:g example="1" id="ad_country_code">%1$s</xliff:g> (<xliff:g example="1" id="ad_user_home_locale">%2$s</xliff:g>)\u2026</string>
+ <!-- String appended to the outgoing call title for additional information related to assisted dialing, for example "Calling via <CARRIER> • Using +1 (US)… "-->
+ <string name="incall_connecting_assited_dialed_component">Using +<xliff:g example="1" id="ad_country_code">%1$s</xliff:g> (<xliff:g example="1" id="ad_user_home_locale">%2$s</xliff:g>)\u2026</string>
+
<!-- Displayed above the contact name when an external call is being pulled to the local
device. -->
<string name="incall_transferring">Transferring…</string>