diff --git a/android/res/layout/place_page_banner.xml b/android/res/layout/place_page_banner.xml
index 1e75fc186c..3bd591c07a 100644
--- a/android/res/layout/place_page_banner.xml
+++ b/android/res/layout/place_page_banner.xml
@@ -2,9 +2,9 @@
diff --git a/android/res/layout/place_page_banner_content.xml b/android/res/layout/place_page_banner_content.xml
index 6c6c7e6d2b..35a8f94296 100644
--- a/android/res/layout/place_page_banner_content.xml
+++ b/android/res/layout/place_page_banner_content.xml
@@ -76,18 +76,21 @@
android:maxLines="1"
android:minLines="1"
android:textAppearance="@style/MwmTextAppearance.Body4"
+ android:textSize="12dp"
android:textColor="?textBannerTitle"
android:fontFamily="@string/robotoMedium"
android:textStyle="bold"
android:ellipsize="end"
tools:text="Закажи одежду в интернет-магазине Wildberries."
- tools:targetApi="jelly_bean"/>
+ tools:targetApi="jelly_bean"
+ tools:ignore="SpUsage"/>
+ android:layout_toEndOf="@+id/iv__banner_icon"
+ tools:ignore="SpUsage"/>
+ tools:targetApi="jelly_bean"
+ tools:ignore="SpUsage"/>
+ tools:targetApi="jelly_bean"
+ tools:ignore="SpUsage"/>
+ android:layout_height="wrap_content">
32dp
- 64dp
+ 66dp
+ 108dp
40dp
@dimen/primary_button_min_height
5dp
diff --git a/android/src/com/mapswithme/maps/widget/placepage/BannerController.java b/android/src/com/mapswithme/maps/widget/placepage/BannerController.java
index f22783823a..036b5df103 100644
--- a/android/src/com/mapswithme/maps/widget/placepage/BannerController.java
+++ b/android/src/com/mapswithme/maps/widget/placepage/BannerController.java
@@ -8,7 +8,6 @@ import android.support.annotation.NonNull;
import android.support.annotation.Nullable;
import android.support.v4.app.FragmentActivity;
import android.text.TextUtils;
-import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
@@ -35,7 +34,6 @@ import com.mapswithme.util.statistics.Statistics;
import java.util.Collections;
import java.util.List;
-import static android.view.ViewGroup.LayoutParams.WRAP_CONTENT;
import static com.mapswithme.util.statistics.Statistics.EventName.PP_BANNER_CLICK;
import static com.mapswithme.util.statistics.Statistics.EventName.PP_BANNER_SHOW;
import static com.mapswithme.util.statistics.Statistics.PP_BANNER_STATE_DETAILS;
@@ -103,8 +101,6 @@ final class BannerController
@NonNull
private View mAdsRemovalButton;
- private final float mCloseFrameHeight;
-
private boolean mOpened = false;
private boolean mError = false;
@Nullable
@@ -117,6 +113,8 @@ final class BannerController
private MyNativeAdsListener mAdsListener = new MyNativeAdsListener();
@NonNull
private final AdsRemovalPurchaseControllerProvider mAdsRemovalProvider;
+ private int mClosedHeight;
+ private int mOpentHeight;
BannerController(@NonNull ViewGroup bannerContainer, @NonNull CompoundNativeAdLoader loader,
@Nullable AdTracker tracker,
@@ -129,7 +127,8 @@ final class BannerController
mAdsLoader = loader;
mAdTracker = tracker;
Resources resources = mBannerView.getResources();
- mCloseFrameHeight = resources.getDimension(R.dimen.placepage_banner_height);
+ mClosedHeight = resources.getDimensionPixelSize(R.dimen.placepage_banner_small_height);
+ mOpentHeight = resources.getDimensionPixelSize(R.dimen.placepage_banner_large_height);
mAdsRemovalProvider = adsRemovalProvider;
initBannerViews();
}
@@ -258,7 +257,6 @@ final class BannerController
return;
mOpened = true;
- setFrameHeight(WRAP_CONTENT);
mMessage.setMaxLines(MAX_MESSAGE_LINES);
mTitle.setMaxLines(MAX_TITLE_LINES);
updateVisibility();
@@ -268,38 +266,37 @@ final class BannerController
Statistics.INSTANCE.trackPPBanner(PP_BANNER_SHOW, mCurrentAd, 1);
mCurrentAd.registerView(mBannerView);
}
-
}
void zoomIn(float ratio)
{
+ ViewGroup banner = mContainerView.findViewById(R.id.banner);
+ ViewGroup.LayoutParams lp = banner.getLayoutParams();
+ lp.height = (int) ((mOpentHeight - mClosedHeight) * ratio + mClosedHeight);
+ banner.setLayoutParams(lp);
+
}
void zoomOut(float ratio)
{
+ ViewGroup banner = mContainerView.findViewById(R.id.banner);
+ ViewGroup.LayoutParams lp = banner.getLayoutParams();
+ lp.height = (int) (mClosedHeight - (mClosedHeight - mOpentHeight) * ratio);
+ banner.setLayoutParams(lp);
}
- boolean close()
+ void close()
{
if (!isBannerContainerVisible() || mBanners == null || !mOpened)
- return false;
+ return;
mOpened = false;
- setFrameHeight((int) mCloseFrameHeight);
UiUtils.hide(mIcon);
mMessage.setMaxLines(MIN_MESSAGE_LINES);
mTitle.setMaxLines(MIN_TITLE_LINES);
updateVisibility();
if (mCurrentAd != null)
mCurrentAd.registerView(mBannerView);
- return true;
- }
-
- private void setFrameHeight(int height)
- {
- ViewGroup.LayoutParams lp = mBannerView.getLayoutParams();
- lp.height = height;
- mBannerView.setLayoutParams(lp);
}
private void loadIcon(@NonNull MwmNativeAd ad)
diff --git a/android/src/com/mapswithme/maps/widget/placepage/BottomSheetPlacePageController.java b/android/src/com/mapswithme/maps/widget/placepage/BottomSheetPlacePageController.java
index 71485adb5c..78d31c441a 100644
--- a/android/src/com/mapswithme/maps/widget/placepage/BottomSheetPlacePageController.java
+++ b/android/src/com/mapswithme/maps/widget/placepage/BottomSheetPlacePageController.java
@@ -114,12 +114,14 @@ public class BottomSheetPlacePageController implements PlacePageController, Loca
if (ratio >= 1)
{
+ mBannerController.zoomOut(1);
mBannerController.open();
return;
}
if (ratio == 0)
{
+ mBannerController.zoomIn(ratio);
mBannerController.close();
return;
}