summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--java/com/android/dialer/voicemail/settings/RecordButton.java14
-rw-r--r--java/com/android/dialer/voicemail/settings/res/drawable/start_playback_drawable.xml1
-rw-r--r--java/com/android/dialer/voicemail/settings/res/drawable/start_recording_drawable.xml1
-rw-r--r--java/com/android/incallui/calllocation/impl/LocationHelper.java9
4 files changed, 24 insertions, 1 deletions
diff --git a/java/com/android/dialer/voicemail/settings/RecordButton.java b/java/com/android/dialer/voicemail/settings/RecordButton.java
index d62637053..ac64cde34 100644
--- a/java/com/android/dialer/voicemail/settings/RecordButton.java
+++ b/java/com/android/dialer/voicemail/settings/RecordButton.java
@@ -18,10 +18,12 @@ package com.android.dialer.voicemail.settings;
import android.content.Context;
import android.graphics.Canvas;
+import android.graphics.Color;
import android.graphics.Paint;
import android.graphics.Rect;
import android.graphics.RectF;
import android.graphics.drawable.Drawable;
+import android.graphics.drawable.LayerDrawable;
import android.support.v4.content.ContextCompat;
import android.util.AttributeSet;
import android.widget.Button;
@@ -94,6 +96,8 @@ public class RecordButton extends Button {
recordedDrawable = ContextCompat.getDrawable(getContext(), R.drawable.start_playback_drawable);
playingDrawable = ContextCompat.getDrawable(getContext(), R.drawable.stop_playback_drawable);
+ fixQuantumIconTint(Color.WHITE);
+
mainTrackPaint = getBasePaint(R.color.dialer_call_green);
secondaryTrackPaint = getBasePaint(R.color.dialer_call_green);
secondaryTrackPaint.setAlpha(secondaryTrackAlpha);
@@ -101,6 +105,16 @@ public class RecordButton extends Button {
setState(RecordVoicemailGreetingActivity.RECORD_GREETING_INIT);
}
+ private void fixQuantumIconTint(int color) {
+ Drawable playArrow = ((LayerDrawable) recordedDrawable).findDrawableByLayerId(R.id.play_icon);
+ playArrow.mutate().setTint(color);
+ ((LayerDrawable) recordedDrawable).setDrawableByLayerId(R.id.play_icon, playArrow);
+
+ Drawable micIcon = ((LayerDrawable) readyDrawable).findDrawableByLayerId(R.id.record_icon);
+ micIcon.mutate().setTint(color);
+ ((LayerDrawable) readyDrawable).setDrawableByLayerId(R.id.record_icon, micIcon);
+ }
+
/** Returns Paint with base attributes for drawing the main and secondary tracks */
private Paint getBasePaint(int id) {
Paint paint = new Paint();
diff --git a/java/com/android/dialer/voicemail/settings/res/drawable/start_playback_drawable.xml b/java/com/android/dialer/voicemail/settings/res/drawable/start_playback_drawable.xml
index 2a7ec4a7c..97917465c 100644
--- a/java/com/android/dialer/voicemail/settings/res/drawable/start_playback_drawable.xml
+++ b/java/com/android/dialer/voicemail/settings/res/drawable/start_playback_drawable.xml
@@ -21,6 +21,7 @@
</shape>
</item>
<item
+ android:id="@+id/play_icon"
android:top="24dp"
android:bottom="24dp"
android:left="24dp"
diff --git a/java/com/android/dialer/voicemail/settings/res/drawable/start_recording_drawable.xml b/java/com/android/dialer/voicemail/settings/res/drawable/start_recording_drawable.xml
index 42d27fc2a..8a4d9e723 100644
--- a/java/com/android/dialer/voicemail/settings/res/drawable/start_recording_drawable.xml
+++ b/java/com/android/dialer/voicemail/settings/res/drawable/start_recording_drawable.xml
@@ -21,6 +21,7 @@
</shape>
</item>
<item
+ android:id="@+id/record_icon"
android:top="24dp"
android:bottom="24dp"
android:left="24dp"
diff --git a/java/com/android/incallui/calllocation/impl/LocationHelper.java b/java/com/android/incallui/calllocation/impl/LocationHelper.java
index 7fbd60d04..5c105e4c0 100644
--- a/java/com/android/incallui/calllocation/impl/LocationHelper.java
+++ b/java/com/android/incallui/calllocation/impl/LocationHelper.java
@@ -49,6 +49,7 @@ public class LocationHelper {
public static final int LOCATION_STATUS_STALE = 2;
public static final int LOCATION_STATUS_INACCURATE = 3;
public static final int LOCATION_STATUS_NO_LOCATION = 4;
+ public static final int LOCATION_STATUS_MOCK = 5;
/** Possible return values for {@code checkLocation()} */
@IntDef({
@@ -56,7 +57,8 @@ public class LocationHelper {
LOCATION_STATUS_OK,
LOCATION_STATUS_STALE,
LOCATION_STATUS_INACCURATE,
- LOCATION_STATUS_NO_LOCATION
+ LOCATION_STATUS_NO_LOCATION,
+ LOCATION_STATUS_MOCK
})
@Retention(RetentionPolicy.SOURCE)
public @interface LocationStatus {}
@@ -118,6 +120,11 @@ public class LocationHelper {
return LOCATION_STATUS_INACCURATE;
}
+ if (location.isFromMockProvider()) {
+ LogUtil.i("LocationHelper.checkLocation", "from mock provider");
+ return LOCATION_STATUS_MOCK;
+ }
+
return LOCATION_STATUS_OK;
}