summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorEric Erfanian <erfanian@google.com>2017-08-29 21:58:45 -0700
committerEric Erfanian <erfanian@google.com>2017-08-30 07:17:04 -0700
commit24dbc840985b12a8e61e6e190e8508c72d58bcae (patch)
tree4f1d3229eca3d62b3faf5b481a60fbad5ab7e072
parent4e9a7930756e2e1dbfba20355f8f716987835a3a (diff)
Make incallui/spam a standalone build target
Previously incallui/spam was being built directly into the incallui build target. With this CL it's now a standalone build target. This change should make it easier to test spam notifications. Bug: 62937258 Test: N/A Change-Id: I5f238ed7f9a4eaaff4b2a325479d2b6de19bdf07 PiperOrigin-RevId: 165479077
-rw-r--r--assets/quantum/res/drawable/quantum_ic_block_vd_theme_24.xml10
-rw-r--r--assets/quantum/res/drawable/quantum_ic_call_end_vd_theme_24.xml10
-rw-r--r--java/com/android/incallui/AndroidManifest.xml19
-rw-r--r--java/com/android/incallui/ReturnToCallController.java2
-rw-r--r--java/com/android/incallui/StatusBarNotifier.java8
-rw-r--r--java/com/android/incallui/commontheme/res/values/colors.xml21
-rw-r--r--java/com/android/incallui/res/drawable-hdpi/ic_block_grey600_24dp.pngbin518 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-hdpi/ic_call_end_white_24dp.pngbin454 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-hdpi/ic_close_grey600_24dp.pngbin225 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-hdpi/ic_person_add_grey600_24dp.pngbin300 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-mdpi/ic_block_grey600_24dp.pngbin348 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-mdpi/ic_call_end_white_24dp.pngbin315 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-mdpi/ic_close_grey600_24dp.pngbin178 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-mdpi/ic_person_add_grey600_24dp.pngbin211 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xhdpi/ic_block_grey600_24dp.pngbin690 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xhdpi/ic_call_end_white_24dp.pngbin534 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xhdpi/ic_close_grey600_24dp.pngbin261 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xhdpi/ic_person_add_grey600_24dp.pngbin341 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xxhdpi/ic_block_grey600_24dp.pngbin1029 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xxhdpi/ic_call_end_white_24dp.pngbin736 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xxhdpi/ic_close_grey600_24dp.pngbin353 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xxhdpi/ic_person_add_grey600_24dp.pngbin485 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xxxhdpi/ic_block_grey600_24dp.pngbin1353 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xxxhdpi/ic_call_end_white_24dp.pngbin929 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xxxhdpi/ic_close_grey600_24dp.pngbin444 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/drawable-xxxhdpi/ic_person_add_grey600_24dp.pngbin638 -> 0 bytes
-rw-r--r--java/com/android/incallui/res/layout/caller_in_conference.xml2
-rw-r--r--java/com/android/incallui/res/values/colors.xml3
-rw-r--r--java/com/android/incallui/res/values/strings.xml31
-rw-r--r--java/com/android/incallui/spam/AndroidManifest.xml41
-rw-r--r--java/com/android/incallui/spam/SpamCallListListener.java13
-rw-r--r--java/com/android/incallui/spam/SpamNotificationActivity.java5
-rw-r--r--java/com/android/incallui/spam/res/drawable/spam_notification_icon.xml (renamed from java/com/android/incallui/res/drawable/spam_notification_icon.xml)0
-rw-r--r--java/com/android/incallui/spam/res/values/strings.xml54
34 files changed, 150 insertions, 69 deletions
diff --git a/assets/quantum/res/drawable/quantum_ic_block_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_block_vd_theme_24.xml
new file mode 100644
index 000000000..8c445351b
--- /dev/null
+++ b/assets/quantum/res/drawable/quantum_ic_block_vd_theme_24.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0"
+ android:tint="?attr/colorControlNormal">
+ <path
+ android:fillColor="@android:color/white"
+ android:pathData="M12,2C6.48,2 2,6.48 2,12s4.48,10 10,10 10,-4.48 10,-10S17.52,2 12,2zM4,12c0,-4.42 3.58,-8 8,-8 1.85,0 3.55,0.63 4.9,1.69L5.69,16.9C4.63,15.55 4,13.85 4,12zM12,20c-1.85,0 -3.55,-0.63 -4.9,-1.69L18.31,7.1C19.37,8.45 20,10.15 20,12c0,4.42 -3.58,8 -8,8z"/>
+</vector>
diff --git a/assets/quantum/res/drawable/quantum_ic_call_end_vd_theme_24.xml b/assets/quantum/res/drawable/quantum_ic_call_end_vd_theme_24.xml
new file mode 100644
index 000000000..ea9a0931f
--- /dev/null
+++ b/assets/quantum/res/drawable/quantum_ic_call_end_vd_theme_24.xml
@@ -0,0 +1,10 @@
+<vector xmlns:android="http://schemas.android.com/apk/res/android"
+ android:width="24dp"
+ android:height="24dp"
+ android:viewportWidth="24.0"
+ android:viewportHeight="24.0"
+ android:tint="?attr/colorControlNormal">
+ <path
+ android:fillColor="@android:color/white"
+ android:pathData="M12,9c-1.6,0 -3.15,0.25 -4.6,0.72v3.1c0,0.39 -0.23,0.74 -0.56,0.9 -0.98,0.49 -1.87,1.12 -2.66,1.85 -0.18,0.18 -0.43,0.28 -0.7,0.28 -0.28,0 -0.53,-0.11 -0.71,-0.29L0.29,13.08c-0.18,-0.17 -0.29,-0.42 -0.29,-0.7 0,-0.28 0.11,-0.53 0.29,-0.71C3.34,8.78 7.46,7 12,7s8.66,1.78 11.71,4.67c0.18,0.18 0.29,0.43 0.29,0.71 0,0.28 -0.11,0.53 -0.29,0.71l-2.48,2.48c-0.18,0.18 -0.43,0.29 -0.71,0.29 -0.27,0 -0.52,-0.11 -0.7,-0.28 -0.79,-0.74 -1.69,-1.36 -2.67,-1.85 -0.33,-0.16 -0.56,-0.5 -0.56,-0.9v-3.1C15.15,9.25 13.6,9 12,9z"/>
+</vector>
diff --git a/java/com/android/incallui/AndroidManifest.xml b/java/com/android/incallui/AndroidManifest.xml
index 703e5b509..d854a7fc8 100644
--- a/java/com/android/incallui/AndroidManifest.xml
+++ b/java/com/android/incallui/AndroidManifest.xml
@@ -92,21 +92,6 @@
</intent-filter>
</service>
- <!--
- Comments for attributes in SpamNotificationActivity:
- taskAffinity="" -> Open the dialog without opening the dialer app behind it
- noHistory="true" -> Navigating away finishes activity
- excludeFromRecents="true" -> Don't show in "recent apps" screen
- -->
- <activity
- android:excludeFromRecents="true"
- android:exported="false"
- android:name="com.android.incallui.spam.SpamNotificationActivity"
- android:noHistory="true"
- android:taskAffinity=""
- android:theme="@style/AfterCallNotificationTheme">
- </activity>
-
<activity
android:excludeFromRecents="true"
android:exported="false"
@@ -115,10 +100,6 @@
android:theme="@style/Theme.Incall.DialogHolder"
/>
- <service
- android:exported="false"
- android:name="com.android.incallui.spam.SpamNotificationService"/>
-
<!-- BroadcastReceiver for receiving Intents from Notification mechanism. -->
<receiver
android:directBootAware="true"
diff --git a/java/com/android/incallui/ReturnToCallController.java b/java/com/android/incallui/ReturnToCallController.java
index 39a07235c..e5c761820 100644
--- a/java/com/android/incallui/ReturnToCallController.java
+++ b/java/com/android/incallui/ReturnToCallController.java
@@ -241,7 +241,7 @@ public class ReturnToCallController implements InCallUiListener, Listener, Audio
.build());
actions.add(
Action.builder()
- .setIcon(Icon.createWithResource(context, R.drawable.quantum_ic_call_end_white_24))
+ .setIcon(Icon.createWithResource(context, R.drawable.quantum_ic_call_end_vd_theme_24))
.setName(context.getText(R.string.incall_label_end_call))
.setIntent(endCall)
.build());
diff --git a/java/com/android/incallui/StatusBarNotifier.java b/java/com/android/incallui/StatusBarNotifier.java
index 5e2cc61d3..270c42b75 100644
--- a/java/com/android/incallui/StatusBarNotifier.java
+++ b/java/com/android/incallui/StatusBarNotifier.java
@@ -387,7 +387,8 @@ public class StatusBarNotifier
builder.setChannelId(NotificationChannelId.ONGOING_CALL);
}
break;
- default: // fall out
+ default:
+ break;
}
// Set the content
@@ -663,7 +664,7 @@ public class StatusBarNotifier
}
// If ReturnToCall is enabled, use the static icon. The animated one will show in the bubble.
if (ReturnToCallController.isEnabled(mContext)) {
- return R.drawable.quantum_ic_call_white_24;
+ return R.drawable.quantum_ic_call_vd_theme_24;
} else {
return R.drawable.on_going_call;
}
@@ -864,7 +865,7 @@ public class StatusBarNotifier
createNotificationPendingIntent(mContext, ACTION_HANG_UP_ONGOING_CALL);
builder.addAction(
new Notification.Action.Builder(
- Icon.createWithResource(mContext, R.drawable.ic_call_end_white_24dp),
+ Icon.createWithResource(mContext, R.drawable.quantum_ic_call_end_white_24),
mContext.getText(R.string.notification_action_end_call),
hangupPendingIntent)
.build());
@@ -1023,3 +1024,4 @@ public class StatusBarNotifier
}
}
}
+
diff --git a/java/com/android/incallui/commontheme/res/values/colors.xml b/java/com/android/incallui/commontheme/res/values/colors.xml
index d38e34716..50b06179f 100644
--- a/java/com/android/incallui/commontheme/res/values/colors.xml
+++ b/java/com/android/incallui/commontheme/res/values/colors.xml
@@ -1,5 +1,24 @@
<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+
<resources>
<!-- 50% black background drawn over the video to make it easier to see text and buttons. -->
<color name="videocall_overlay_background_color">#7E000000</color>
-</resources> \ No newline at end of file
+
+ <!-- Background color for spam. This color must match one of background_colors_dark in call UI. -->
+ <color name="incall_call_spam_background_color">@color/blocked_contact_background</color>
+</resources>
diff --git a/java/com/android/incallui/res/drawable-hdpi/ic_block_grey600_24dp.png b/java/com/android/incallui/res/drawable-hdpi/ic_block_grey600_24dp.png
deleted file mode 100644
index 1e9294c12..000000000
--- a/java/com/android/incallui/res/drawable-hdpi/ic_block_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-hdpi/ic_call_end_white_24dp.png b/java/com/android/incallui/res/drawable-hdpi/ic_call_end_white_24dp.png
deleted file mode 100644
index 757d339c4..000000000
--- a/java/com/android/incallui/res/drawable-hdpi/ic_call_end_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-hdpi/ic_close_grey600_24dp.png b/java/com/android/incallui/res/drawable-hdpi/ic_close_grey600_24dp.png
deleted file mode 100644
index 9ab350e9a..000000000
--- a/java/com/android/incallui/res/drawable-hdpi/ic_close_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-hdpi/ic_person_add_grey600_24dp.png b/java/com/android/incallui/res/drawable-hdpi/ic_person_add_grey600_24dp.png
deleted file mode 100644
index 185d03393..000000000
--- a/java/com/android/incallui/res/drawable-hdpi/ic_person_add_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-mdpi/ic_block_grey600_24dp.png b/java/com/android/incallui/res/drawable-mdpi/ic_block_grey600_24dp.png
deleted file mode 100644
index edd666b73..000000000
--- a/java/com/android/incallui/res/drawable-mdpi/ic_block_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-mdpi/ic_call_end_white_24dp.png b/java/com/android/incallui/res/drawable-mdpi/ic_call_end_white_24dp.png
deleted file mode 100644
index 17eb4824e..000000000
--- a/java/com/android/incallui/res/drawable-mdpi/ic_call_end_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-mdpi/ic_close_grey600_24dp.png b/java/com/android/incallui/res/drawable-mdpi/ic_close_grey600_24dp.png
deleted file mode 100644
index 73faf52eb..000000000
--- a/java/com/android/incallui/res/drawable-mdpi/ic_close_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-mdpi/ic_person_add_grey600_24dp.png b/java/com/android/incallui/res/drawable-mdpi/ic_person_add_grey600_24dp.png
deleted file mode 100644
index ec3237086..000000000
--- a/java/com/android/incallui/res/drawable-mdpi/ic_person_add_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xhdpi/ic_block_grey600_24dp.png b/java/com/android/incallui/res/drawable-xhdpi/ic_block_grey600_24dp.png
deleted file mode 100644
index 36210a8cb..000000000
--- a/java/com/android/incallui/res/drawable-xhdpi/ic_block_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xhdpi/ic_call_end_white_24dp.png b/java/com/android/incallui/res/drawable-xhdpi/ic_call_end_white_24dp.png
deleted file mode 100644
index b00d82edd..000000000
--- a/java/com/android/incallui/res/drawable-xhdpi/ic_call_end_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xhdpi/ic_close_grey600_24dp.png b/java/com/android/incallui/res/drawable-xhdpi/ic_close_grey600_24dp.png
deleted file mode 100644
index a3896c5c6..000000000
--- a/java/com/android/incallui/res/drawable-xhdpi/ic_close_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xhdpi/ic_person_add_grey600_24dp.png b/java/com/android/incallui/res/drawable-xhdpi/ic_person_add_grey600_24dp.png
deleted file mode 100644
index e56481ed7..000000000
--- a/java/com/android/incallui/res/drawable-xhdpi/ic_person_add_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxhdpi/ic_block_grey600_24dp.png b/java/com/android/incallui/res/drawable-xxhdpi/ic_block_grey600_24dp.png
deleted file mode 100644
index 9f5120373..000000000
--- a/java/com/android/incallui/res/drawable-xxhdpi/ic_block_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxhdpi/ic_call_end_white_24dp.png b/java/com/android/incallui/res/drawable-xxhdpi/ic_call_end_white_24dp.png
deleted file mode 100644
index aeabe4a81..000000000
--- a/java/com/android/incallui/res/drawable-xxhdpi/ic_call_end_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxhdpi/ic_close_grey600_24dp.png b/java/com/android/incallui/res/drawable-xxhdpi/ic_close_grey600_24dp.png
deleted file mode 100644
index 22d7aa55e..000000000
--- a/java/com/android/incallui/res/drawable-xxhdpi/ic_close_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxhdpi/ic_person_add_grey600_24dp.png b/java/com/android/incallui/res/drawable-xxhdpi/ic_person_add_grey600_24dp.png
deleted file mode 100644
index c17dfe05f..000000000
--- a/java/com/android/incallui/res/drawable-xxhdpi/ic_person_add_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxxhdpi/ic_block_grey600_24dp.png b/java/com/android/incallui/res/drawable-xxxhdpi/ic_block_grey600_24dp.png
deleted file mode 100644
index 01df2b52b..000000000
--- a/java/com/android/incallui/res/drawable-xxxhdpi/ic_block_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxxhdpi/ic_call_end_white_24dp.png b/java/com/android/incallui/res/drawable-xxxhdpi/ic_call_end_white_24dp.png
deleted file mode 100644
index a6e8a7bc1..000000000
--- a/java/com/android/incallui/res/drawable-xxxhdpi/ic_call_end_white_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxxhdpi/ic_close_grey600_24dp.png b/java/com/android/incallui/res/drawable-xxxhdpi/ic_close_grey600_24dp.png
deleted file mode 100644
index 7d1c061f7..000000000
--- a/java/com/android/incallui/res/drawable-xxxhdpi/ic_close_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/drawable-xxxhdpi/ic_person_add_grey600_24dp.png b/java/com/android/incallui/res/drawable-xxxhdpi/ic_person_add_grey600_24dp.png
deleted file mode 100644
index e24919737..000000000
--- a/java/com/android/incallui/res/drawable-xxxhdpi/ic_person_add_grey600_24dp.png
+++ /dev/null
Binary files differ
diff --git a/java/com/android/incallui/res/layout/caller_in_conference.xml b/java/com/android/incallui/res/layout/caller_in_conference.xml
index 3a6773d20..4f4b2f043 100644
--- a/java/com/android/incallui/res/layout/caller_in_conference.xml
+++ b/java/com/android/incallui/res/layout/caller_in_conference.xml
@@ -113,7 +113,7 @@
android:clickable="true"
android:contentDescription="@string/conference_caller_disconnect_content_description"
android:scaleType="center"
- android:src="@drawable/ic_call_end_white_24dp"
+ android:src="@drawable/quantum_ic_call_end_white_24"
android:tint="@color/conference_call_manager_icon_color"/>
</LinearLayout> <!-- End of single list element -->
diff --git a/java/com/android/incallui/res/values/colors.xml b/java/com/android/incallui/res/values/colors.xml
index 0c73cdb10..5d97d729f 100644
--- a/java/com/android/incallui/res/values/colors.xml
+++ b/java/com/android/incallui/res/values/colors.xml
@@ -69,9 +69,6 @@
<item>#841F10</item>
</array>
- <!-- Background color for spam. This color must match one of background_colors above. -->
- <color name="incall_call_spam_background_color">@color/blocked_contact_background</color>
-
<!-- Ripple color used over light backgrounds. -->
<color name="ripple_light">#40000000</color>
diff --git a/java/com/android/incallui/res/values/strings.xml b/java/com/android/incallui/res/values/strings.xml
index 22c3c23cc..8d6940ed8 100644
--- a/java/com/android/incallui/res/values/strings.xml
+++ b/java/com/android/incallui/res/values/strings.xml
@@ -309,37 +309,6 @@
<!-- Displayed when a place is closed. -->
<string name="closed_now">Closed now</string>
- <!-- Title for the notification to the user after a call from an unknown number ends. [CHAR LIMIT=100] -->
- <string name="non_spam_notification_title">Know <xliff:g id="number">%1$s</xliff:g>?</string>
- <!-- Title for the notification to the user after a call from an spammer ends. [CHAR LIMIT=100] -->
- <string name="spam_notification_title">Is <xliff:g id="number">%1$s</xliff:g> spam?</string>
- <!-- Text for the toast shown after the user presses block/report spam. [CHAR LIMIT=100] -->
- <string name="spam_notification_block_report_toast_text"><xliff:g id="number">%1$s</xliff:g> blocked and call was reported as spam.</string>
- <!-- Text for the toast shown after the user presses not spam. [CHAR LIMIT=100] -->
- <string name="spam_notification_not_spam_toast_text">Call from <xliff:g id="number">%1$s</xliff:g> reported as not spam.</string>
- <!-- Text displayed in the collapsed notification to the user after a non-spam call ends. [CHAR LIMIT=100] -->
- <string name="spam_notification_non_spam_call_collapsed_text">Tap to add to contacts or block spam number.</string>
- <!-- Text displayed in the expanded notification to the user after a non-spam call ends. [CHAR LIMIT=NONE] -->
- <string name="spam_notification_non_spam_call_expanded_text">This is the first time this number called you. If this call was spam, you can block this number and report it.</string>
- <!-- Text displayed in the collapsed notification to the user after a spam call ends. [CHAR LIMIT=100] -->
- <string name="spam_notification_spam_call_collapsed_text">Tap to report as NOT SPAM, or block it.</string>
- <!-- Text displayed in the expanded notification to the user after a spam call ends. [CHAR LIMIT=NONE] -->
- <string name="spam_notification_spam_call_expanded_text">We suspected this to be a spammer. If this call wasn\'t spam, tap "NOT SPAM" to report our mistake.</string>
- <!-- Text for the reporting spam action in the after call prompt. [CHAR LIMIT=20] -->
- <string name="spam_notification_report_spam_action_text">Block &amp; report</string>
- <!-- Text for the adding to contacts action in the after call prompt. [CHAR LIMIT=20] -->
- <string name="spam_notification_add_contact_action_text">Add contact</string>
- <!-- Text for the reporting as not spam action in the after call prompt. [CHAR LIMIT=20] -->
- <string name="spam_notification_not_spam_action_text">Not spam</string>
- <!-- Text for the blocking spam action in the after call prompt. [CHAR LIMIT=20] -->
- <string name="spam_notification_block_spam_action_text">Block number</string>
- <!-- Text for the adding to contacts action in the after call dialog. [CHAR LIMIT=40] -->
- <string name="spam_notification_dialog_add_contact_action_text">Add to contacts</string>
- <!-- Text for the blocking and reporting spam action in the after call dialog. [CHAR LIMIT=40] -->
- <string name="spam_notification_dialog_block_report_spam_action_text">Block &amp; report spam</string>
- <!-- Text for the marking a call as not spam in the after call dialog. [CHAR LIMIT=40] -->
- <string name="spam_notification_dialog_was_not_spam_action_text">Not spam</string>
-
<string name="callFailed_simError">No SIM or SIM error</string>
<string name="conference_caller_disconnect_content_description">End call</string>
diff --git a/java/com/android/incallui/spam/AndroidManifest.xml b/java/com/android/incallui/spam/AndroidManifest.xml
new file mode 100644
index 000000000..46319a6c1
--- /dev/null
+++ b/java/com/android/incallui/spam/AndroidManifest.xml
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2016 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+<manifest xmlns:android="http://schemas.android.com/apk/res/android"
+ package="com.android.incallui.autoresizetext">
+
+ <application>
+ <!--
+ Comments for attributes in SpamNotificationActivity:
+ taskAffinity="" -> Open the dialog without opening the dialer app behind it
+ noHistory="true" -> Navigating away finishes activity
+ excludeFromRecents="true" -> Don't show in "recent apps" screen
+ -->
+ <activity
+ android:excludeFromRecents="true"
+ android:exported="false"
+ android:name=".SpamNotificationActivity"
+ android:noHistory="true"
+ android:taskAffinity=""
+ android:theme="@style/AfterCallNotificationTheme">
+ </activity>
+
+ <service
+ android:exported="false"
+ android:name=".SpamNotificationService"/>
+
+ </application>
+</manifest>
diff --git a/java/com/android/incallui/spam/SpamCallListListener.java b/java/com/android/incallui/spam/SpamCallListListener.java
index 997d4d6bc..f8bc9cebe 100644
--- a/java/com/android/incallui/spam/SpamCallListListener.java
+++ b/java/com/android/incallui/spam/SpamCallListListener.java
@@ -50,7 +50,6 @@ import com.android.dialer.notification.NotificationChannelId;
import com.android.dialer.spam.Spam;
import com.android.dialer.telecom.TelecomUtil;
import com.android.dialer.util.PermissionsUtil;
-import com.android.incallui.R;
import com.android.incallui.call.CallList;
import com.android.incallui.call.DialerCall;
import com.android.incallui.call.DialerCall.CallHistoryStatus;
@@ -90,7 +89,7 @@ public class SpamCallListListener implements CallList.Listener {
/** Checks if the number is in the call history. */
@TargetApi(VERSION_CODES.M)
- private final class NumberInCallHistoryWorker implements Worker<Void, Integer> {
+ private static final class NumberInCallHistoryWorker implements Worker<Void, Integer> {
private final Context appContext;
private final String number;
@@ -262,7 +261,7 @@ public class SpamCallListListener implements CallList.Listener {
.setCategory(Notification.CATEGORY_STATUS)
.setPriority(Notification.PRIORITY_DEFAULT)
.setColor(context.getColor(R.color.dialer_theme_color))
- .setSmallIcon(R.drawable.ic_call_end_white_24dp)
+ .setSmallIcon(R.drawable.quantum_ic_call_end_vd_theme_24)
.setGroup(GROUP_KEY);
if (BuildCompat.isAtLeastO()) {
builder.setChannelId(NotificationChannelId.DEFAULT);
@@ -289,7 +288,7 @@ public class SpamCallListListener implements CallList.Listener {
// Add contact
.addAction(
new Notification.Action.Builder(
- R.drawable.ic_person_add_grey600_24dp,
+ R.drawable.quantum_ic_person_add_vd_theme_24,
context.getString(R.string.spam_notification_add_contact_action_text),
createActivityPendingIntent(
call, SpamNotificationActivity.ACTION_ADD_TO_CONTACTS))
@@ -297,7 +296,7 @@ public class SpamCallListListener implements CallList.Listener {
// Block/report spam
.addAction(
new Notification.Action.Builder(
- R.drawable.ic_block_grey600_24dp,
+ R.drawable.quantum_ic_block_vd_theme_24,
context.getString(R.string.spam_notification_report_spam_action_text),
createBlockReportSpamPendingIntent(call))
.build())
@@ -401,14 +400,14 @@ public class SpamCallListListener implements CallList.Listener {
// Not spam
.addAction(
new Notification.Action.Builder(
- R.drawable.ic_close_grey600_24dp,
+ R.drawable.quantum_ic_close_vd_theme_24,
context.getString(R.string.spam_notification_not_spam_action_text),
createNotSpamPendingIntent(call))
.build())
// Block/report spam
.addAction(
new Notification.Action.Builder(
- R.drawable.ic_block_grey600_24dp,
+ R.drawable.quantum_ic_block_vd_theme_24,
context.getString(R.string.spam_notification_block_spam_action_text),
createBlockReportSpamPendingIntent(call))
.build())
diff --git a/java/com/android/incallui/spam/SpamNotificationActivity.java b/java/com/android/incallui/spam/SpamNotificationActivity.java
index 160db2622..86988ad23 100644
--- a/java/com/android/incallui/spam/SpamNotificationActivity.java
+++ b/java/com/android/incallui/spam/SpamNotificationActivity.java
@@ -39,7 +39,6 @@ import com.android.dialer.logging.Logger;
import com.android.dialer.logging.ReportingLocation;
import com.android.dialer.notification.DialerNotificationManager;
import com.android.dialer.spam.Spam;
-import com.android.incallui.R;
import com.android.incallui.call.DialerCall;
/** Creates the after call notification dialogs. */
@@ -374,7 +373,7 @@ public class SpamNotificationActivity extends FragmentActivity {
.setTitle(getString(R.string.spam_notification_title, getFormattedNumber(number)))
.setMessage(getString(R.string.spam_notification_spam_call_expanded_text))
.setNeutralButton(
- getString(R.string.notification_action_dismiss),
+ getString(R.string.spam_notification_action_dismiss),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
@@ -460,7 +459,7 @@ public class SpamNotificationActivity extends FragmentActivity {
.setCancelable(false)
.setMessage(getString(R.string.spam_notification_non_spam_call_expanded_text))
.setNeutralButton(
- getString(R.string.notification_action_dismiss),
+ getString(R.string.spam_notification_action_dismiss),
new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
diff --git a/java/com/android/incallui/res/drawable/spam_notification_icon.xml b/java/com/android/incallui/spam/res/drawable/spam_notification_icon.xml
index a414428cb..a414428cb 100644
--- a/java/com/android/incallui/res/drawable/spam_notification_icon.xml
+++ b/java/com/android/incallui/spam/res/drawable/spam_notification_icon.xml
diff --git a/java/com/android/incallui/spam/res/values/strings.xml b/java/com/android/incallui/spam/res/values/strings.xml
new file mode 100644
index 000000000..02e7225a0
--- /dev/null
+++ b/java/com/android/incallui/spam/res/values/strings.xml
@@ -0,0 +1,54 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ ~ Copyright (C) 2017 The Android Open Source Project
+ ~
+ ~ Licensed under the Apache License, Version 2.0 (the "License");
+ ~ you may not use this file except in compliance with the License.
+ ~ You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License
+ -->
+
+<resources xmlns:xliff="urn:oasis:names:tc:xliff:document:1.2">
+
+ <!-- Title for the notification to the user after a call from an unknown number ends. [CHAR LIMIT=100] -->
+ <string name="non_spam_notification_title">Know <xliff:g id="number">%1$s</xliff:g>?</string>
+ <!-- Title for the notification to the user after a call from an spammer ends. [CHAR LIMIT=100] -->
+ <string name="spam_notification_title">Is <xliff:g id="number">%1$s</xliff:g> spam?</string>
+ <!-- Text for the toast shown after the user presses block/report spam. [CHAR LIMIT=100] -->
+ <string name="spam_notification_block_report_toast_text"><xliff:g id="number">%1$s</xliff:g> blocked and call was reported as spam.</string>
+ <!-- Text for the toast shown after the user presses not spam. [CHAR LIMIT=100] -->
+ <string name="spam_notification_not_spam_toast_text">Call from <xliff:g id="number">%1$s</xliff:g> reported as not spam.</string>
+ <!-- Text displayed in the collapsed notification to the user after a non-spam call ends. [CHAR LIMIT=100] -->
+ <string name="spam_notification_non_spam_call_collapsed_text">Tap to add to contacts or block spam number.</string>
+ <!-- Text displayed in the expanded notification to the user after a non-spam call ends. [CHAR LIMIT=NONE] -->
+ <string name="spam_notification_non_spam_call_expanded_text">This is the first time this number called you. If this call was spam, you can block this number and report it.</string>
+ <!-- Text displayed in the collapsed notification to the user after a spam call ends. [CHAR LIMIT=100] -->
+ <string name="spam_notification_spam_call_collapsed_text">Tap to report as NOT SPAM, or block it.</string>
+ <!-- Text displayed in the expanded notification to the user after a spam call ends. [CHAR LIMIT=NONE] -->
+ <string name="spam_notification_spam_call_expanded_text">We suspected this to be a spammer. If this call wasn\'t spam, tap "NOT SPAM" to report our mistake.</string>
+ <!-- Text for the reporting spam action in the after call prompt. [CHAR LIMIT=20] -->
+ <string name="spam_notification_report_spam_action_text">Block &amp; report</string>
+ <!-- Text for the adding to contacts action in the after call prompt. [CHAR LIMIT=20] -->
+ <string name="spam_notification_add_contact_action_text">Add contact</string>
+ <!-- Text for the reporting as not spam action in the after call prompt. [CHAR LIMIT=20] -->
+ <string name="spam_notification_not_spam_action_text">Not spam</string>
+ <!-- Text for the blocking spam action in the after call prompt. [CHAR LIMIT=20] -->
+ <string name="spam_notification_block_spam_action_text">Block number</string>
+ <!-- Text for the adding to contacts action in the after call dialog. [CHAR LIMIT=40] -->
+ <string name="spam_notification_dialog_add_contact_action_text">Add to contacts</string>
+ <!-- Text for the blocking and reporting spam action in the after call dialog. [CHAR LIMIT=40] -->
+ <string name="spam_notification_dialog_block_report_spam_action_text">Block &amp; report spam</string>
+ <!-- Text for the marking a call as not spam in the after call dialog. [CHAR LIMIT=40] -->
+ <string name="spam_notification_dialog_was_not_spam_action_text">Not spam</string>
+
+ <!-- Label for "Dismiss" notification action. [CHAR LIMIT=12] -->
+ <string name="spam_notification_action_dismiss">Decline</string>
+
+</resources>