Use component for iconography
Test: tap, manual
PiperOrigin-RevId: 196582079
Change-Id: Iffbfa408cbb32e81824cd46a67d51baa270132cf
diff --git a/java/com/android/incallui/answer/impl/AnswerFragment.java b/java/com/android/incallui/answer/impl/AnswerFragment.java
index fb1de05..d44a5da 100644
--- a/java/com/android/incallui/answer/impl/AnswerFragment.java
+++ b/java/com/android/incallui/answer/impl/AnswerFragment.java
@@ -82,9 +82,11 @@
import com.android.incallui.maps.MapsComponent;
import com.android.incallui.sessiondata.AvatarPresenter;
import com.android.incallui.sessiondata.MultimediaFragment;
+import com.android.incallui.speakeasy.SpeakEasyComponent;
import com.android.incallui.util.AccessibilityUtil;
import com.android.incallui.video.protocol.VideoCallScreen;
import com.android.incallui.videotech.utils.VideoUtils;
+import com.google.common.base.Optional;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
@@ -206,7 +208,7 @@
}
};
- @DrawableRes public final int icon;
+ @DrawableRes public int icon;
@StringRes public final int contentDescription;
@StringRes public final int accessibilityLabel;
@StringRes public final int hintText;
@@ -456,6 +458,11 @@
answerAndReleaseButton.setVisibility(View.VISIBLE);
answerScreenDelegate.onAnswerAndReleaseButtonEnabled();
} else if (allowSpeakEasy()) {
+ Optional<Integer> alternativeIcon = SpeakEasyComponent.get(getContext()).speakEasyIcon();
+ if (alternativeIcon.isPresent()) {
+ // TODO(erfanian): Replace enum hack when we have a dedicated button.
+ SecondaryBehavior.SPEAKEASY.icon = alternativeIcon.get();
+ }
answerAndReleaseBehavior = SecondaryBehavior.SPEAKEASY;
answerAndReleaseBehavior.applyToView(answerAndReleaseButton);
answerAndReleaseButton.setVisibility(View.VISIBLE);
diff --git a/java/com/android/incallui/speakeasy/SpeakEasyComponent.java b/java/com/android/incallui/speakeasy/SpeakEasyComponent.java
index 320bc69..6dae441 100644
--- a/java/com/android/incallui/speakeasy/SpeakEasyComponent.java
+++ b/java/com/android/incallui/speakeasy/SpeakEasyComponent.java
@@ -30,6 +30,8 @@
public abstract Optional<Fragment> speakEasySettingsFragment();
+ public abstract Optional<Integer> speakEasyIcon();
+
public static SpeakEasyComponent get(Context context) {
return ((SpeakEasyComponent.HasComponent)
((HasRootComponent) context.getApplicationContext()).component())
diff --git a/java/com/android/incallui/speakeasy/StubSpeakEasyModule.java b/java/com/android/incallui/speakeasy/StubSpeakEasyModule.java
index d5f6443..67b564c 100644
--- a/java/com/android/incallui/speakeasy/StubSpeakEasyModule.java
+++ b/java/com/android/incallui/speakeasy/StubSpeakEasyModule.java
@@ -36,4 +36,9 @@
static Optional<Fragment> provideSpeakEasySettingsFragment() {
return Optional.absent();
}
+
+ @Provides
+ static Optional<Integer> provideSpeakEasyIcon() {
+ return Optional.absent();
+ }
}