From 71a22dc081e458706f07beb1684087dc4a6aedf5 Mon Sep 17 00:00:00 2001 From: wangqi Date: Mon, 21 May 2018 12:29:32 -0700 Subject: Add promotion module. Refactor Duo disclosure card to general promotion card. Bug: 78905507 Test: unit tests PiperOrigin-RevId: 197436677 Change-Id: I511c39308cadfb96ee4519b71ca29b75d0e6750b --- .../android/dialer/main/impl/OldMainActivityPeer.java | 16 +++++++++++----- .../main/impl/res/layout/promotion_bottom_sheet.xml | 2 -- 2 files changed, 11 insertions(+), 7 deletions(-) (limited to 'java/com/android/dialer/main') diff --git a/java/com/android/dialer/main/impl/OldMainActivityPeer.java b/java/com/android/dialer/main/impl/OldMainActivityPeer.java index 16f46c10f..402edb3d5 100644 --- a/java/com/android/dialer/main/impl/OldMainActivityPeer.java +++ b/java/com/android/dialer/main/impl/OldMainActivityPeer.java @@ -109,7 +109,8 @@ import com.android.dialer.metrics.MetricsComponent; import com.android.dialer.postcall.PostCall; import com.android.dialer.precall.PreCall; import com.android.dialer.promotion.Promotion; -import com.android.dialer.promotion.RttPromotion; +import com.android.dialer.promotion.Promotion.PromotionType; +import com.android.dialer.promotion.PromotionComponent; import com.android.dialer.searchfragment.list.NewSearchFragment.SearchFragmentListener; import com.android.dialer.smartdial.util.SmartDialPrefix; import com.android.dialer.speeddial.SpeedDialFragment; @@ -128,6 +129,7 @@ import com.google.common.util.concurrent.Futures; import com.google.common.util.concurrent.ListenableFuture; import com.google.common.util.concurrent.MoreExecutors; import java.util.Locale; +import java.util.Optional; import java.util.concurrent.TimeUnit; /** @@ -1326,15 +1328,19 @@ public class OldMainActivityPeer implements MainActivityPeer, FragmentUtilListen showPromotionBottomSheet(activity, bottomSheet); } + @SuppressWarnings("AndroidApiChecker") // Use of optional private static void showPromotionBottomSheet(Context context, View view) { - // TODO(a bug): Use a promotion manager to get promotion to show. - Promotion promotion = new RttPromotion(context); BottomSheetBehavior bottomSheetBehavior = BottomSheetBehavior.from(view); - - if (!promotion.shouldShow()) { + Optional promotionOptional = + PromotionComponent.get(context) + .promotionManager() + .getHighestPriorityPromotion(PromotionType.BOTTOM_SHEET); + if (!promotionOptional.isPresent()) { bottomSheetBehavior.setState(BottomSheetBehavior.STATE_HIDDEN); return; } + + Promotion promotion = promotionOptional.get(); ImageView icon = view.findViewById(R.id.promotion_icon); icon.setImageResource(promotion.getIconRes()); TextView details = view.findViewById(R.id.promotion_details); diff --git a/java/com/android/dialer/main/impl/res/layout/promotion_bottom_sheet.xml b/java/com/android/dialer/main/impl/res/layout/promotion_bottom_sheet.xml index c7f2d9a01..709de52b8 100644 --- a/java/com/android/dialer/main/impl/res/layout/promotion_bottom_sheet.xml +++ b/java/com/android/dialer/main/impl/res/layout/promotion_bottom_sheet.xml @@ -62,7 +62,6 @@ android:textSize="14sp"/>