summaryrefslogtreecommitdiff
path: root/java/com/android/dialer/blocking
diff options
context:
space:
mode:
authorEric Erfanian <erfanian@google.com>2017-04-06 09:41:50 -0700
committerEric Erfanian <erfanian@google.com>2017-04-06 09:41:50 -0700
commitd8046e520a866b9948ee9ba47cf642b441ca8e23 (patch)
tree8d08d4f2292aa84dc435d455891e7ab633d95a25 /java/com/android/dialer/blocking
parentcdb1edf966a892abebcba425a85b7d4e47758302 (diff)
Update AOSP Dialer source from internal google3 repository at
cl/152373142. Test: make, treehugger This CL updates the AOSP Dialer source with all the changes that have gone into the private google3 repository. This includes all the changes from cl/151342913 (3/27/2017) to cl/152373142 (4/06/2017). This goal of these drops is to keep the AOSP source in sync with the internal google3 repository. Currently these sync are done by hand with very minor modifications to the internal source code. See the Android.mk file for list of modifications. Our current goal is to do frequent drops (daily if possible) and eventually switched to an automated process. Change-Id: I2fbc88cf6867b90ac8b65f75e5e34468988c7217
Diffstat (limited to 'java/com/android/dialer/blocking')
-rw-r--r--java/com/android/dialer/blocking/BlockedNumbersAutoMigrator.java97
-rw-r--r--java/com/android/dialer/blocking/FilteredNumberAsyncQueryHandler.java14
-rw-r--r--java/com/android/dialer/blocking/FilteredNumbersUtil.java2
-rw-r--r--java/com/android/dialer/blocking/res/drawable-hdpi/ic_block_24dp.pngbin478 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-hdpi/ic_report_24dp.pngbin240 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-hdpi/ic_report_white_36dp.pngbin312 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-mdpi/ic_block_24dp.pngbin335 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-mdpi/ic_report_24dp.pngbin174 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-mdpi/ic_report_white_36dp.pngbin240 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-xhdpi/ic_block_24dp.pngbin665 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-xhdpi/ic_report_24dp.pngbin272 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-xhdpi/ic_report_white_36dp.pngbin340 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_block_24dp.pngbin973 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_report_24dp.pngbin340 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_report_white_36dp.pngbin522 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_block_24dp.pngbin1295 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_report_24dp.pngbin450 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_report_white_36dp.pngbin649 -> 0 bytes
-rw-r--r--java/com/android/dialer/blocking/res/drawable/blocked_contact.xml2
-rw-r--r--java/com/android/dialer/blocking/res/values-de/strings.xml4
20 files changed, 75 insertions, 44 deletions
diff --git a/java/com/android/dialer/blocking/BlockedNumbersAutoMigrator.java b/java/com/android/dialer/blocking/BlockedNumbersAutoMigrator.java
index 1773e9b84..3cc42207d 100644
--- a/java/com/android/dialer/blocking/BlockedNumbersAutoMigrator.java
+++ b/java/com/android/dialer/blocking/BlockedNumbersAutoMigrator.java
@@ -18,10 +18,14 @@ package com.android.dialer.blocking;
import android.content.Context;
import android.content.SharedPreferences;
+import android.preference.PreferenceManager;
import android.support.annotation.NonNull;
+import android.support.annotation.Nullable;
import com.android.dialer.blocking.FilteredNumberAsyncQueryHandler.OnHasBlockedNumbersListener;
+import com.android.dialer.common.Assert;
import com.android.dialer.common.LogUtil;
-import java.util.Objects;
+import com.android.dialer.common.concurrent.DialerExecutor.Worker;
+import com.android.dialer.common.concurrent.DialerExecutorFactory;
/**
* Class responsible for checking if the user can be auto-migrated to {@link
@@ -32,36 +36,42 @@ public class BlockedNumbersAutoMigrator {
static final String HAS_CHECKED_AUTO_MIGRATE_KEY = "checkedAutoMigrate";
- @NonNull private final Context context;
- @NonNull private final SharedPreferences sharedPreferences;
+ @NonNull private final Context appContext;
@NonNull private final FilteredNumberAsyncQueryHandler queryHandler;
+ @NonNull private final DialerExecutorFactory dialerExecutorFactory;
/**
- * Constructs the BlockedNumbersAutoMigrator with the given {@link SharedPreferences} and {@link
+ * Constructs the BlockedNumbersAutoMigrator with the given {@link
* FilteredNumberAsyncQueryHandler}.
*
- * @param sharedPreferences The SharedPreferences used to persist information.
* @param queryHandler The FilteredNumberAsyncQueryHandler used to determine if there are blocked
* numbers.
* @throws NullPointerException if sharedPreferences or queryHandler are null.
*/
public BlockedNumbersAutoMigrator(
- @NonNull Context context,
- @NonNull SharedPreferences sharedPreferences,
- @NonNull FilteredNumberAsyncQueryHandler queryHandler) {
- this.context = Objects.requireNonNull(context);
- this.sharedPreferences = Objects.requireNonNull(sharedPreferences);
- this.queryHandler = Objects.requireNonNull(queryHandler);
+ @NonNull Context appContext,
+ @NonNull FilteredNumberAsyncQueryHandler queryHandler,
+ @NonNull DialerExecutorFactory dialerExecutorFactory) {
+ this.appContext = Assert.isNotNull(appContext);
+ this.queryHandler = Assert.isNotNull(queryHandler);
+ this.dialerExecutorFactory = Assert.isNotNull(dialerExecutorFactory);
+ }
+
+ public void asyncAutoMigrate() {
+ dialerExecutorFactory
+ .createNonUiTaskBuilder(new ShouldAttemptAutoMigrate(appContext))
+ .onSuccess(this::autoMigrate)
+ .build()
+ .executeParallel(null);
}
/**
* Attempts to perform the auto-migration. Auto-migration will only be attempted once and can be
* performed only when the user has no blocked numbers. As a result of this method, the user will
- * be migrated to the framework blocking solution, as determined by {@link
- * FilteredNumberCompat#hasMigratedToNewBlocking()}.
+ * be migrated to the framework blocking solution if blocked numbers don't exist.
*/
- public void autoMigrate() {
- if (!shouldAttemptAutoMigrate()) {
+ private void autoMigrate(boolean shouldAttemptAutoMigrate) {
+ if (!shouldAttemptAutoMigrate) {
return;
}
@@ -75,36 +85,51 @@ public class BlockedNumbersAutoMigrator {
return;
}
LogUtil.i("BlockedNumbersAutoMigrator", "auto-migrating: no blocked numbers.");
- FilteredNumberCompat.setHasMigratedToNewBlocking(context, true);
+ FilteredNumberCompat.setHasMigratedToNewBlocking(appContext, true);
}
});
}
- private boolean shouldAttemptAutoMigrate() {
- if (sharedPreferences.contains(HAS_CHECKED_AUTO_MIGRATE_KEY)) {
- LogUtil.v("BlockedNumbersAutoMigrator", "not attempting auto-migrate: already checked once.");
- return false;
+ private static class ShouldAttemptAutoMigrate implements Worker<Void, Boolean> {
+ private final Context appContext;
+
+ ShouldAttemptAutoMigrate(Context appContext) {
+ this.appContext = appContext;
}
- if (!FilteredNumberCompat.canAttemptBlockOperations(context)) {
- // This may be the case where the user is on the lock screen, so we shouldn't record that the
- // migration status was checked.
+ @Nullable
+ @Override
+ public Boolean doInBackground(@Nullable Void input) {
+ SharedPreferences sharedPreferences =
+ PreferenceManager.getDefaultSharedPreferences(appContext);
+
+ if (sharedPreferences.contains(HAS_CHECKED_AUTO_MIGRATE_KEY)) {
+ LogUtil.v(
+ "BlockedNumbersAutoMigrator", "not attempting auto-migrate: already checked once.");
+ return false;
+ }
+
+ if (!FilteredNumberCompat.canAttemptBlockOperations(appContext)) {
+ // This may be the case where the user is on the lock screen, so we shouldn't record that
+ // the migration status was checked.
+ LogUtil.i(
+ "BlockedNumbersAutoMigrator", "not attempting auto-migrate: current user can't block");
+ return false;
+ }
LogUtil.i(
- "BlockedNumbersAutoMigrator", "not attempting auto-migrate: current user can't block");
- return false;
- }
- LogUtil.i("BlockedNumbersAutoMigrator", "updating state as already checked for auto-migrate.");
- sharedPreferences.edit().putBoolean(HAS_CHECKED_AUTO_MIGRATE_KEY, true).apply();
+ "BlockedNumbersAutoMigrator", "updating state as already checked for auto-migrate.");
+ sharedPreferences.edit().putBoolean(HAS_CHECKED_AUTO_MIGRATE_KEY, true).apply();
- if (!FilteredNumberCompat.canUseNewFiltering()) {
- LogUtil.i("BlockedNumbersAutoMigrator", "not attempting auto-migrate: not available.");
- return false;
- }
+ if (!FilteredNumberCompat.canUseNewFiltering()) {
+ LogUtil.i("BlockedNumbersAutoMigrator", "not attempting auto-migrate: not available.");
+ return false;
+ }
- if (FilteredNumberCompat.hasMigratedToNewBlocking(context)) {
- LogUtil.i("BlockedNumbersAutoMigrator", "not attempting auto-migrate: already migrated.");
- return false;
+ if (FilteredNumberCompat.hasMigratedToNewBlocking(appContext)) {
+ LogUtil.i("BlockedNumbersAutoMigrator", "not attempting auto-migrate: already migrated.");
+ return false;
+ }
+ return true;
}
- return true;
}
}
diff --git a/java/com/android/dialer/blocking/FilteredNumberAsyncQueryHandler.java b/java/com/android/dialer/blocking/FilteredNumberAsyncQueryHandler.java
index 852e7a0ed..bd4156846 100644
--- a/java/com/android/dialer/blocking/FilteredNumberAsyncQueryHandler.java
+++ b/java/com/android/dialer/blocking/FilteredNumberAsyncQueryHandler.java
@@ -56,8 +56,14 @@ public class FilteredNumberAsyncQueryHandler extends AsyncQueryHandler {
@Override
protected void onQueryComplete(int token, Object cookie, Cursor cursor) {
- if (cookie != null) {
- ((Listener) cookie).onQueryComplete(token, cookie, cursor);
+ try {
+ if (cookie != null) {
+ ((Listener) cookie).onQueryComplete(token, cookie, cursor);
+ }
+ } finally {
+ if (cursor != null) {
+ cursor.close();
+ }
}
}
@@ -82,7 +88,7 @@ public class FilteredNumberAsyncQueryHandler extends AsyncQueryHandler {
}
}
- public void hasBlockedNumbers(final OnHasBlockedNumbersListener listener) {
+ void hasBlockedNumbers(final OnHasBlockedNumbersListener listener) {
if (!FilteredNumberCompat.canAttemptBlockOperations(context)) {
listener.onHasBlockedNumbers(false);
return;
@@ -405,7 +411,7 @@ public class FilteredNumberAsyncQueryHandler extends AsyncQueryHandler {
void onUnblockComplete(int rows, ContentValues values);
}
- public interface OnHasBlockedNumbersListener {
+ interface OnHasBlockedNumbersListener {
/**
* @param hasBlockedNumbers {@code true} if any blocked numbers are stored. {@code false}
diff --git a/java/com/android/dialer/blocking/FilteredNumbersUtil.java b/java/com/android/dialer/blocking/FilteredNumbersUtil.java
index f09370e6e..8908238ea 100644
--- a/java/com/android/dialer/blocking/FilteredNumbersUtil.java
+++ b/java/com/android/dialer/blocking/FilteredNumbersUtil.java
@@ -285,7 +285,7 @@ public class FilteredNumbersUtil {
(NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE);
Notification.Builder builder =
new Notification.Builder(context)
- .setSmallIcon(R.drawable.ic_block_24dp)
+ .setSmallIcon(R.drawable.quantum_ic_block_white_24)
.setContentTitle(
context.getString(R.string.call_blocking_disabled_notification_title))
.setContentText(
diff --git a/java/com/android/dialer/blocking/res/drawable-hdpi/ic_block_24dp.png b/java/com/android/dialer/blocking/res/drawable-hdpi/ic_block_24dp.png
deleted file mode 100644
index 2ccc89d24..000000000
--- a/java/com/android/dialer/blocking/res/drawable-hdpi/ic_block_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-hdpi/ic_report_24dp.png b/java/com/android/dialer/blocking/res/drawable-hdpi/ic_report_24dp.png
deleted file mode 100644
index dc0c995c1..000000000
--- a/java/com/android/dialer/blocking/res/drawable-hdpi/ic_report_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-hdpi/ic_report_white_36dp.png b/java/com/android/dialer/blocking/res/drawable-hdpi/ic_report_white_36dp.png
deleted file mode 100644
index 919a872e0..000000000
--- a/java/com/android/dialer/blocking/res/drawable-hdpi/ic_report_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-mdpi/ic_block_24dp.png b/java/com/android/dialer/blocking/res/drawable-mdpi/ic_block_24dp.png
deleted file mode 100644
index ec1b33f0e..000000000
--- a/java/com/android/dialer/blocking/res/drawable-mdpi/ic_block_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-mdpi/ic_report_24dp.png b/java/com/android/dialer/blocking/res/drawable-mdpi/ic_report_24dp.png
deleted file mode 100644
index 70b82d6c1..000000000
--- a/java/com/android/dialer/blocking/res/drawable-mdpi/ic_report_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-mdpi/ic_report_white_36dp.png b/java/com/android/dialer/blocking/res/drawable-mdpi/ic_report_white_36dp.png
deleted file mode 100644
index dc0c995c1..000000000
--- a/java/com/android/dialer/blocking/res/drawable-mdpi/ic_report_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-xhdpi/ic_block_24dp.png b/java/com/android/dialer/blocking/res/drawable-xhdpi/ic_block_24dp.png
deleted file mode 100644
index 7aba97b65..000000000
--- a/java/com/android/dialer/blocking/res/drawable-xhdpi/ic_block_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-xhdpi/ic_report_24dp.png b/java/com/android/dialer/blocking/res/drawable-xhdpi/ic_report_24dp.png
deleted file mode 100644
index 18e7764ab..000000000
--- a/java/com/android/dialer/blocking/res/drawable-xhdpi/ic_report_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-xhdpi/ic_report_white_36dp.png b/java/com/android/dialer/blocking/res/drawable-xhdpi/ic_report_white_36dp.png
deleted file mode 100644
index aed766804..000000000
--- a/java/com/android/dialer/blocking/res/drawable-xhdpi/ic_report_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_block_24dp.png b/java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_block_24dp.png
deleted file mode 100644
index fddfa54b8..000000000
--- a/java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_block_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_report_24dp.png b/java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_report_24dp.png
deleted file mode 100644
index aed766804..000000000
--- a/java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_report_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_report_white_36dp.png b/java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_report_white_36dp.png
deleted file mode 100644
index f7cfacbd4..000000000
--- a/java/com/android/dialer/blocking/res/drawable-xxhdpi/ic_report_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_block_24dp.png b/java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_block_24dp.png
deleted file mode 100644
index 0378d1bed..000000000
--- a/java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_block_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_report_24dp.png b/java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_report_24dp.png
deleted file mode 100644
index 855e59015..000000000
--- a/java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_report_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_report_white_36dp.png b/java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_report_white_36dp.png
deleted file mode 100644
index 7ef0d7afc..000000000
--- a/java/com/android/dialer/blocking/res/drawable-xxxhdpi/ic_report_white_36dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/dialer/blocking/res/drawable/blocked_contact.xml b/java/com/android/dialer/blocking/res/drawable/blocked_contact.xml
index 09d7989e8..905616d4a 100644
--- a/java/com/android/dialer/blocking/res/drawable/blocked_contact.xml
+++ b/java/com/android/dialer/blocking/res/drawable/blocked_contact.xml
@@ -28,7 +28,7 @@
</item>
<item
- android:drawable="@drawable/ic_report_24dp"
+ android:drawable="@drawable/quantum_ic_report_white_24"
android:gravity="center"
android:height="18dp"
android:width="18dp"/>
diff --git a/java/com/android/dialer/blocking/res/values-de/strings.xml b/java/com/android/dialer/blocking/res/values-de/strings.xml
index f1677e91f..37507ebbe 100644
--- a/java/com/android/dialer/blocking/res/values-de/strings.xml
+++ b/java/com/android/dialer/blocking/res/values-de/strings.xml
@@ -21,8 +21,8 @@
<string name="migrate_blocked_numbers_dialog_message" msgid="8309736147266462485">"Um dich besser schützen zu können, müssen die Einstellungen der Blockierung beim Telefon geändert werden. Von blockierten Nummern erhältst du jetzt keine Anrufe und Nachrichten mehr und diese Nummern können auch an andere Apps weitergegeben werden."</string>
<string name="migrate_blocked_numbers_dialog_allow_button" msgid="5192836471557751367">"Zulassen"</string>
<string name="block_number_confirmation_title" msgid="2699521227461376076">"<xliff:g id="NUMBER">%1$s</xliff:g> blockieren?"</string>
- <string name="block_number_confirmation_message_vvm" msgid="6501105244172290939">"Anrufe von dieser Nummer werden blockiert und Mailbox-Nachrichten automatisch gelöscht."</string>
- <string name="block_number_confirmation_message_no_vvm" msgid="8236641245709649882">"Anrufe von dieser Nummer werden blockiert. Der Anrufer hat aber unter Umständen weiterhin die Möglichkeit, dir Mailbox-Nachrichten zu hinterlassen."</string>
+ <string name="block_number_confirmation_message_vvm" msgid="6501105244172290939">"Anrufe von dieser Nummer werden blockiert und Mailboxnachrichten automatisch gelöscht."</string>
+ <string name="block_number_confirmation_message_no_vvm" msgid="8236641245709649882">"Anrufe von dieser Nummer werden blockiert. Der Anrufer hat aber unter Umständen weiterhin die Möglichkeit, dir Mailboxnachrichten zu hinterlassen."</string>
<string name="block_number_confirmation_message_new_filtering" msgid="8487449683723062644">"Du erhältst von dieser Nummer keine Anrufe oder Nachrichten mehr."</string>
<string name="block_number_ok" msgid="739786082788038932">"BLOCKIEREN"</string>
<string name="unblock_number_confirmation_title" msgid="7897778825085659941">"Blockierung von <xliff:g id="NUMBER">%1$s</xliff:g> aufheben?"</string>