From 46d76fcbd61cd38a0376b38b6d43227b79d8a829 Mon Sep 17 00:00:00 2001 From: Marcel Kummer Date: Sat, 23 Apr 2022 07:59:31 +0200 Subject: [PATCH] Fix place page corner rounding (#2442) * [ios] Set label for place page divider and background views The views are just named 'view' in the storyboard. For better clarity, let's call them 'Background View' and 'Divider View' instead. Signed-off-by: Marcel Kummer * [ios] Stop rounding bottom corners of PlacePageHeaderView There's always something following below it. Only the top corners shall be rounded to avoid visual artifacts. Signed-off-by: Marcel Kummer * [ios] Fix rounded corners on bottom of place page (iPad) This clips the action bar buttons to the action bar shape. Rounds the bottom corners while keeping the top corners pointy. Signed-off-by: Marcel Kummer * [ios] Fix rounded corners on top of place page (iPhone) The top corners of the place page had a rounded shadow, but views below the shadow still drew pointy corners. This change should round them properly, too. Funnily enough, the glitch only appears on iPhone devices, not in the iPad layout. Signed-off-by: Marcel Kummer --- .../PlacePageHeaderViewController.swift | 2 ++ iphone/Maps/UI/PlacePage/PlacePage.storyboard | 5 +++-- iphone/Maps/UI/PlacePage/PlacePageViewController.swift | 10 ++++++++++ 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/iphone/Maps/UI/PlacePage/Components/PlacePageHeader/PlacePageHeaderViewController.swift b/iphone/Maps/UI/PlacePage/Components/PlacePageHeader/PlacePageHeaderViewController.swift index c00ca493aa..103a48187e 100644 --- a/iphone/Maps/UI/PlacePage/Components/PlacePageHeader/PlacePageHeaderViewController.swift +++ b/iphone/Maps/UI/PlacePage/Components/PlacePageHeader/PlacePageHeaderViewController.swift @@ -9,6 +9,7 @@ protocol PlacePageHeaderViewProtocol: AnyObject { class PlacePageHeaderViewController: UIViewController { var presenter: PlacePageHeaderPresenterProtocol? + @IBOutlet private var headerView: PlacePageHeaderView! @IBOutlet private var titleLabel: UILabel? @IBOutlet private var expandView: UIView! @IBOutlet private var shadowView: UIView! @@ -18,6 +19,7 @@ class PlacePageHeaderViewController: UIViewController { presenter?.configure() let tap = UITapGestureRecognizer(target: self, action: #selector(onExpandPressed(sender:))) expandView.addGestureRecognizer(tap) + headerView.layer.maskedCorners = [.layerMinXMinYCorner, .layerMaxXMinYCorner] } @objc func onExpandPressed(sender: UITapGestureRecognizer) { diff --git a/iphone/Maps/UI/PlacePage/PlacePage.storyboard b/iphone/Maps/UI/PlacePage/PlacePage.storyboard index bfff12f7f3..ba566beeb8 100644 --- a/iphone/Maps/UI/PlacePage/PlacePage.storyboard +++ b/iphone/Maps/UI/PlacePage/PlacePage.storyboard @@ -19,7 +19,7 @@ - + @@ -52,7 +52,7 @@ - + @@ -1796,6 +1796,7 @@ + diff --git a/iphone/Maps/UI/PlacePage/PlacePageViewController.swift b/iphone/Maps/UI/PlacePage/PlacePageViewController.swift index f350c7eaf9..9733edffde 100644 --- a/iphone/Maps/UI/PlacePage/PlacePageViewController.swift +++ b/iphone/Maps/UI/PlacePage/PlacePageViewController.swift @@ -58,7 +58,17 @@ final class PlacePageScrollView: UIScrollView { bgView.styleName = "PPBackgroundView" stackView.insertSubview(bgView, at: 0) bgView.alignToSuperview() + scrollView.decelerationRate = .fast + scrollView.layer.cornerRadius = 10 + scrollView.layer.maskedCorners = [.layerMinXMinYCorner, .layerMaxXMinYCorner] + + stackView.layer.cornerRadius = 10 + stackView.layer.maskedCorners = [.layerMinXMinYCorner, .layerMaxXMinYCorner] + + actionBarContainerView.layer.cornerRadius = 10 + actionBarContainerView.layer.masksToBounds = true + actionBarContainerView.layer.maskedCorners = [.layerMinXMaxYCorner, .layerMaxXMaxYCorner] } override func viewDidLayoutSubviews() {