From cb52c4c1358add154fc7532f368893166247da9b Mon Sep 17 00:00:00 2001 From: mdooley Date: Wed, 4 Oct 2017 10:16:46 -0700 Subject: Remove 'learn more' link from verizon voicemail TOS text and using non-breaking space in dialer TOS 'learn more' link. screen shots: https://drive.google.com/open?id=0B9o_KvtLkcuIV3BWWmxSTTlJQ2dBTnR2UHRGWjZJRlFQUGo0 https://drive.google.com/open?id=0B9o_KvtLkcuIOEJjanVhMXlfck81aU02Y0I2MkVtWFNOVGp3 Bug: 67379747 Test: manual and updated unit tests PiperOrigin-RevId: 171025914 Change-Id: I9c4bfd899805681492a5063ee1bc674bbb98f630 --- .../error/VoicemailTosMessageCreator.java | 22 ++++++++++++---------- .../app/voicemail/error/res/values/strings.xml | 6 +++--- 2 files changed, 15 insertions(+), 13 deletions(-) (limited to 'java') diff --git a/java/com/android/dialer/app/voicemail/error/VoicemailTosMessageCreator.java b/java/com/android/dialer/app/voicemail/error/VoicemailTosMessageCreator.java index a2b82c0fc..63ebd1959 100644 --- a/java/com/android/dialer/app/voicemail/error/VoicemailTosMessageCreator.java +++ b/java/com/android/dialer/app/voicemail/error/VoicemailTosMessageCreator.java @@ -304,10 +304,12 @@ public class VoicemailTosMessageCreator { return ""; } - String learnMoreText = context.getString(R.string.dialer_terms_and_conditions_learn_more); - return isVvm3() - ? context.getString(R.string.dialer_terms_and_conditions_for_verizon_1_0, learnMoreText) - : context.getString(R.string.dialer_terms_and_conditions_1_0, learnMoreText); + if (isVvm3()) { + return context.getString(R.string.dialer_terms_and_conditions_for_verizon_1_0); + } else { + String learnMoreText = context.getString(R.string.dialer_terms_and_conditions_learn_more); + return context.getString(R.string.dialer_terms_and_conditions_1_0, learnMoreText); + } } private CharSequence getAcceptText() { @@ -359,7 +361,7 @@ public class VoicemailTosMessageCreator { Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); // Add verizon policy link String linkUrl = context.getString(R.string.verizon_terms_and_conditions_policy_url); - addLink(spannableTos, linkUrl, linkUrl); + return addLink(spannableTos, linkUrl, linkUrl); } else { // The TOS for everyone else, there are no details, but change to center alignment. CharSequence tos = @@ -370,12 +372,12 @@ public class VoicemailTosMessageCreator { 0, tos.length(), Spanned.SPAN_EXCLUSIVE_EXCLUSIVE); - } - // Add 'Learn more' link for dialer TOS - String learnMore = context.getString(R.string.dialer_terms_and_conditions_learn_more); - String linkUrl = context.getString(R.string.dialer_terms_and_conditions_learn_more_url); - return addLink(spannableTos, learnMore, linkUrl); + // Add 'Learn more' link for dialer TOS + String learnMore = context.getString(R.string.dialer_terms_and_conditions_learn_more); + String linkUrl = context.getString(R.string.dialer_terms_and_conditions_learn_more_url); + return addLink(spannableTos, learnMore, linkUrl); + } } private SpannableString addLink(SpannableString spannable, String linkText, String linkUrl) { diff --git a/java/com/android/dialer/app/voicemail/error/res/values/strings.xml b/java/com/android/dialer/app/voicemail/error/res/values/strings.xml index 3df0e6660..bf5794b0b 100644 --- a/java/com/android/dialer/app/voicemail/error/res/values/strings.xml +++ b/java/com/android/dialer/app/voicemail/error/res/values/strings.xml @@ -137,7 +137,7 @@ (800) 922–0204 Turn on visual voicemail - %1$s\n\nBy turning on visual voicemail you agree to the Verizon Wireless terms and conditions:\n\n%2$s + %1$s By turning on visual voicemail you agree to the Verizon Wireless terms and conditions:\n\n%2$s Turn on visual voicemail %s @@ -174,10 +174,10 @@ Si no acepta todos estos términos y condiciones, no use el buzón de voz visual - See and listen to your messages, without having to call voicemail. %s + See and listen to your messages, without having to call voicemail. - Learn more + Learn more https://www.google.com -- cgit v1.2.3 From d4dbf3c2d76767a7c4567a441fad27a5c1b22035 Mon Sep 17 00:00:00 2001 From: calderwoodra Date: Wed, 4 Oct 2017 14:26:41 -0700 Subject: Copy directory list into new list to prevent modifications. Since lists are passed by reference, if the directory list passed into RemoteContactsCursorLoader was modified before #lodInBackground was called, the directory list would change and crash when compared to the list of cursors. Since directory lists are small, there shouldn't be any memory issues with copying the list. Additionally, this CL adds some logging to the new Search Fragment. Bug: 66902071,66902062 Test: RemoteContactsCursorLoaderTest PiperOrigin-RevId: 171063035 Change-Id: Id2faa542805da4167fc7045e6fbe71d02c644ab6 --- .../dialer/searchfragment/list/NewSearchFragment.java | 12 ++++++++++-- .../dialer/searchfragment/remote/RemoteContactsCursor.java | 5 ++++- .../searchfragment/remote/RemoteContactsCursorLoader.java | 3 ++- 3 files changed, 16 insertions(+), 4 deletions(-) (limited to 'java') diff --git a/java/com/android/dialer/searchfragment/list/NewSearchFragment.java b/java/com/android/dialer/searchfragment/list/NewSearchFragment.java index 47a4ee608..b06f9c3ad 100644 --- a/java/com/android/dialer/searchfragment/list/NewSearchFragment.java +++ b/java/com/android/dialer/searchfragment/list/NewSearchFragment.java @@ -165,6 +165,7 @@ public final class NewSearchFragment extends Fragment @Override public Loader onCreateLoader(int id, Bundle bundle) { + LogUtil.i("NewSearchFragment.onCreateLoader", "loading cursor: " + id); if (id == CONTACTS_LOADER_ID) { return new SearchContactsCursorLoader(getContext(), query); } else if (id == NEARBY_PLACES_LOADER_ID) { @@ -187,6 +188,7 @@ public final class NewSearchFragment extends Fragment @Override public void onLoadFinished(Loader loader, Cursor cursor) { + LogUtil.i("NewSearchFragment.onLoadFinished", "Loader finished: " + loader); if (cursor != null && !(loader instanceof RemoteDirectoriesCursorLoader) && !(cursor instanceof SearchCursor)) { @@ -218,8 +220,14 @@ public final class NewSearchFragment extends Fragment @Override public void onLoaderReset(Loader loader) { - adapter.clear(); - recyclerView.setAdapter(null); + LogUtil.i("NewSearchFragment.onLoaderReset", "Loader reset: " + loader); + if (loader instanceof SearchContactsCursorLoader) { + adapter.setContactsCursor(null); + } else if (loader instanceof NearbyPlacesCursorLoader) { + adapter.setNearbyPlacesCursor(null); + } else if (loader instanceof RemoteContactsCursorLoader) { + adapter.setRemoteContactsCursor(null); + } } public void setQuery(String query, CallInitiationType.Type callInitiationType) { diff --git a/java/com/android/dialer/searchfragment/remote/RemoteContactsCursor.java b/java/com/android/dialer/searchfragment/remote/RemoteContactsCursor.java index 5d80a452c..e9e83c19b 100644 --- a/java/com/android/dialer/searchfragment/remote/RemoteContactsCursor.java +++ b/java/com/android/dialer/searchfragment/remote/RemoteContactsCursor.java @@ -60,7 +60,10 @@ public final class RemoteContactsCursor extends MergeCursor implements SearchCur public static RemoteContactsCursor newInstance( Context context, Cursor[] cursors, List directories) { Assert.checkArgument( - cursors.length == directories.size(), "Directories and cursors must be the same size."); + cursors.length == directories.size(), + "Directories (%d) and cursors (%d) must be the same size.", + directories.size(), + cursors.length); Cursor[] cursorsWithHeaders = insertHeaders(context, cursors, directories); if (cursorsWithHeaders.length > 0) { return new RemoteContactsCursor(cursorsWithHeaders); diff --git a/java/com/android/dialer/searchfragment/remote/RemoteContactsCursorLoader.java b/java/com/android/dialer/searchfragment/remote/RemoteContactsCursorLoader.java index 771b7f183..37695be50 100644 --- a/java/com/android/dialer/searchfragment/remote/RemoteContactsCursorLoader.java +++ b/java/com/android/dialer/searchfragment/remote/RemoteContactsCursorLoader.java @@ -28,6 +28,7 @@ import android.support.annotation.VisibleForTesting; import android.text.TextUtils; import com.android.dialer.searchfragment.common.Projections; import com.android.dialer.searchfragment.remote.RemoteDirectoriesCursorLoader.Directory; +import java.util.ArrayList; import java.util.List; /** @@ -58,7 +59,7 @@ public final class RemoteContactsCursorLoader extends CursorLoader { null, Phone.SORT_KEY_PRIMARY); this.query = query; - this.directories = directories; + this.directories = new ArrayList<>(directories); cursors = new Cursor[directories.size()]; } -- cgit v1.2.3 From 88e17b4f505ec2989c386db9ae08790b44b431e7 Mon Sep 17 00:00:00 2001 From: roldenburg Date: Wed, 4 Oct 2017 15:06:42 -0700 Subject: Do not crash when LightbringerTech receives device orientation update Bug: 67379105 Test: LightbringerTechTest PiperOrigin-RevId: 171069656 Change-Id: I8aa9d5a1886d98b6039eeec993b91dd2b600d415 --- .../com/android/incallui/videotech/lightbringer/LightbringerTech.java | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) (limited to 'java') diff --git a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java b/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java index 3a0ac48d5..784daa85a 100644 --- a/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java +++ b/java/com/android/incallui/videotech/lightbringer/LightbringerTech.java @@ -187,9 +187,7 @@ public class LightbringerTech implements VideoTech, LightbringerListener { } @Override - public void setDeviceOrientation(int rotation) { - throw Assert.createUnsupportedOperationFailException(); - } + public void setDeviceOrientation(int rotation) {} @Override public void onLightbringerStateChanged() { -- cgit v1.2.3 From 665bd416945c0c089f78d733e45d7532eb74f5b4 Mon Sep 17 00:00:00 2001 From: calderwoodra Date: Wed, 4 Oct 2017 15:10:41 -0700 Subject: Inserting post call notes now compares notifications using fuzzy matching. Bug: 65559651 Test: MissedCallNotifierTest PiperOrigin-RevId: 171070314 Change-Id: I57e6e0b55a07430daad944473ae4eb427d56ee96 --- java/com/android/dialer/app/calllog/MissedCallNotifier.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) (limited to 'java') diff --git a/java/com/android/dialer/app/calllog/MissedCallNotifier.java b/java/com/android/dialer/app/calllog/MissedCallNotifier.java index 084713fdc..eb7fab8fc 100644 --- a/java/com/android/dialer/app/calllog/MissedCallNotifier.java +++ b/java/com/android/dialer/app/calllog/MissedCallNotifier.java @@ -49,6 +49,7 @@ import com.android.dialer.common.Assert; import com.android.dialer.common.LogUtil; import com.android.dialer.common.concurrent.DialerExecutor.Worker; import com.android.dialer.compat.android.provider.VoicemailCompat; +import com.android.dialer.enrichedcall.FuzzyPhoneNumberMatcher; import com.android.dialer.notification.DialerNotificationManager; import com.android.dialer.notification.NotificationChannelId; import com.android.dialer.notification.NotificationManagerUtils; @@ -267,7 +268,8 @@ public class MissedCallNotifier implements Worker, Void> { List newCalls = callLogNotificationsQueryHelper.getNewMissedCalls(); if (newCalls != null && !newCalls.isEmpty()) { for (NewCall call : newCalls) { - if (call.number.equals(number.replace("tel:", ""))) { + if (FuzzyPhoneNumberMatcher.matches(call.number, number.replace("tel:", ""))) { + LogUtil.i("MissedCallNotifier.insertPostCallNotification", "Notification updated"); // Update the first notification that matches our post call note sender. DialerNotificationManager.notify( context, -- cgit v1.2.3