forked from organicmaps/organicmaps
[iOS] Redesign of ads banners in PP and Search
https://jira.mail.ru/browse/MAPSME-13357
This commit is contained in:
parent
ff467abed7
commit
77f2c39a64
7 changed files with 106 additions and 75 deletions
|
@ -19,7 +19,7 @@
|
|||
- (void)setAdView:(UIView *)view iconView:(UIImageView *)iconImageView actionButtons:(NSArray<UIButton *> *)buttons
|
||||
{
|
||||
self.associatedView = (MPNativeView *)view;
|
||||
((MWMAdBanner *)view).mpNativeAd = self;
|
||||
((AdBannerView *)view).mpNativeAd = self;
|
||||
if (!self.hasAttachedToView) {
|
||||
id<MPNativeAdAdapter> adapter = self.adAdapter;
|
||||
if ([adapter isKindOfClass:[FacebookNativeAdAdapter class]])
|
||||
|
|
|
@ -6,6 +6,26 @@ class AdsStyleSheet: IStyleSheet {
|
|||
s.backgroundColor = colors.bannerBackground
|
||||
}
|
||||
|
||||
theme.add(styleName: "AdBannerTitle", forType: .light) { (s) -> (Void) in
|
||||
s.font = fonts.bold12
|
||||
s.fontColor = colors.blackSecondaryText
|
||||
}
|
||||
|
||||
theme.add(styleName: "AdBannerTitle", forType: .dark) { (s) -> (Void) in
|
||||
s.font = fonts.bold12
|
||||
s.fontColor = colors.primaryDark
|
||||
}
|
||||
|
||||
theme.add(styleName: "AdBannerSubtitle", forType: .light) { (s) -> (Void) in
|
||||
s.font = fonts.regular12
|
||||
s.fontColor = colors.blackSecondaryText
|
||||
}
|
||||
|
||||
theme.add(styleName: "AdBannerSubtitle", forType: .dark) { (s) -> (Void) in
|
||||
s.font = fonts.regular12
|
||||
s.fontColor = colors.pressBackground
|
||||
}
|
||||
|
||||
theme.add(styleName: "AdBannerPrivacyImage") { (s) -> (Void) in
|
||||
s.cornerRadius = 4
|
||||
s.clip = true
|
||||
|
@ -14,13 +34,13 @@ class AdsStyleSheet: IStyleSheet {
|
|||
theme.add(styleName: "AdBannerButton") { (s) -> (Void) in
|
||||
s.font = fonts.medium14
|
||||
s.backgroundColor = colors.bannerButtonBackground
|
||||
s.fontColor = colors.blackSecondaryText
|
||||
s.fontColor = UIColor.white
|
||||
s.clip = true
|
||||
s.cornerRadius = 8
|
||||
s.cornerRadius = 10
|
||||
}
|
||||
|
||||
theme.add(styleName: "AdCallToActionButton", from: "AdBannerButton") { (s) -> (Void) in
|
||||
s.cornerRadius = 10
|
||||
s.font = fonts.medium12
|
||||
}
|
||||
|
||||
theme.add(styleName: "RemoveAdsOptionsButton") { (s) -> (Void) in
|
||||
|
|
|
@ -34,7 +34,7 @@ class DayColors: IColors {
|
|||
var blackOpaque = UIColor(0, 0, 0, alpha04)
|
||||
var toastBackground = UIColor(255, 255, 255, alpha87)
|
||||
var statusBarBackground = UIColor(255, 255, 255, alpha36)
|
||||
var bannerBackground = UIColor(249, 251, 231, alpha100)
|
||||
var bannerBackground = UIColor(242, 245, 212, alpha100)
|
||||
var border = UIColor(0, 0, 0, alpha04)
|
||||
var discountBackground = UIColor(240, 100, 60, alpha100)
|
||||
var discountText = UIColor(60, 64, 68, alpha100)
|
||||
|
@ -49,7 +49,7 @@ class DayColors: IColors {
|
|||
var ratingYellow = UIColor(245, 176, 39, alpha100)
|
||||
var ratingLightGreen = UIColor(124, 179, 66, alpha100)
|
||||
var ratingGreen = UIColor(67, 160, 71, alpha100)
|
||||
var bannerButtonBackground = UIColor(0, 0, 0, alpha12)
|
||||
var bannerButtonBackground = UIColor(60, 140, 60, alpha70)
|
||||
var facebookButtonBackground = UIColor(59, 89, 152, alpha100);
|
||||
var facebookButtonBackgroundDisabled = UIColor(59, 89, 152, alpha70);
|
||||
var allPassSubscriptionTitle = UIColor(0, 0, 0, alpha100)
|
||||
|
@ -100,7 +100,7 @@ class NightColors: IColors {
|
|||
var blackOpaque = UIColor(255, 255, 255, alpha04)
|
||||
var toastBackground = UIColor(0, 0, 0, alpha87)
|
||||
var statusBarBackground = UIColor(0, 0, 0, alpha32)
|
||||
var bannerBackground = UIColor(71, 75, 79, alpha100)
|
||||
var bannerBackground = UIColor(255, 255, 255, alpha54)
|
||||
var border = UIColor(255, 255, 255, alpha04)
|
||||
var discountBackground = UIColor(240, 100, 60, alpha100)
|
||||
var discountText = UIColor(60, 64, 68, alpha100)
|
||||
|
@ -115,7 +115,7 @@ class NightColors: IColors {
|
|||
var ratingYellow = UIColor(245, 176, 39, alpha100)
|
||||
var ratingLightGreen = UIColor(124, 179, 66, alpha100)
|
||||
var ratingGreen = UIColor(67, 160, 71, alpha100)
|
||||
var bannerButtonBackground = UIColor(255, 255, 255, alpha12)
|
||||
var bannerButtonBackground = UIColor(89, 115, 128, alpha70)
|
||||
var facebookButtonBackground = UIColor(59, 89, 152, alpha100);
|
||||
var facebookButtonBackgroundDisabled = UIColor(59, 89, 152, alpha70);
|
||||
var allPassSubscriptionTitle = UIColor(0, 0, 0, alpha100)
|
||||
|
|
|
@ -36,7 +36,7 @@ private func attributedTitle(title: String, indent: CGFloat) -> NSAttributedStri
|
|||
return NSAttributedString(string: title,
|
||||
attributes: [NSAttributedString.Key.paragraphStyle: paragraphStyle,
|
||||
NSAttributedString.Key.font: UIFont.bold12(),
|
||||
NSAttributedString.Key.foregroundColor: UIColor.blackSecondaryText()
|
||||
NSAttributedString.Key.foregroundColor: UIColor.isNightMode() ? UIColor.pressBackground() : UIColor.blackSecondaryText()
|
||||
])
|
||||
}
|
||||
|
||||
|
@ -232,7 +232,6 @@ class AdBannerView: UIView {
|
|||
adCallToActionButtons.forEach { $0.setTitle(ad.ctaText, for: .normal) }
|
||||
}
|
||||
mpNativeAd?.setAdView(self, iconView: adIconImageView, actionButtons: adCallToActionButtons)
|
||||
|
||||
adTitleLabel.attributedText = attributedTitle(title: ad.title,
|
||||
indent: adPrivacyImage.width + DAAImageWidth.constant)
|
||||
adBodyLabel.text = ad.text
|
||||
|
@ -260,4 +259,11 @@ class AdBannerView: UIView {
|
|||
super.willMove(toSuperview: newSuperview)
|
||||
mpNativeAd?.nativeViewWillMove(toSuperview: newSuperview)
|
||||
}
|
||||
|
||||
|
||||
override func applyTheme() {
|
||||
super.applyTheme()
|
||||
adTitleLabel.attributedText = attributedTitle(title: adTitleLabel.attributedText?.string ?? "",
|
||||
indent: adPrivacyImage.width + DAAImageWidth.constant)
|
||||
}
|
||||
}
|
||||
|
|
|
@ -10,22 +10,22 @@
|
|||
<objects>
|
||||
<placeholder placeholderIdentifier="IBFilesOwner" id="-1" userLabel="File's Owner"/>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="-2" customClass="UIResponder"/>
|
||||
<view contentMode="scaleToFill" id="iN0-l3-epB" customClass="AdBannerView" customModule="maps_me" customModuleProvider="target">
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="110"/>
|
||||
<view contentMode="scaleToFill" preservesSuperviewLayoutMargins="YES" insetsLayoutMarginsFromSafeArea="NO" id="iN0-l3-epB" customClass="AdBannerView" customModule="maps_me" customModuleProvider="target">
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="55"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<view clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="gYF-KR-F2p">
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="110"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="394" height="55"/>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" priority="999" constant="109" id="c1T-Qd-ORX"/>
|
||||
</constraints>
|
||||
</view>
|
||||
<view clipsSubviews="YES" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="AfO-KW-tyB">
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="110"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="55"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="h4t-4z-OMT">
|
||||
<rect key="frame" x="-40" y="8" width="40" height="40"/>
|
||||
<rect key="frame" x="6" y="8" width="40" height="40"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="width" constant="40" id="Tse-HX-upt"/>
|
||||
<constraint firstAttribute="height" constant="40" id="eGj-tP-y29"/>
|
||||
|
@ -35,7 +35,7 @@
|
|||
</userDefinedRuntimeAttributes>
|
||||
</imageView>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="6hQ-rg-viN" userLabel="Privacy images">
|
||||
<rect key="frame" x="8" y="10" width="40" height="12"/>
|
||||
<rect key="frame" x="54" y="10" width="40" height="12"/>
|
||||
<subviews>
|
||||
<imageView userInteractionEnabled="NO" contentMode="scaleAspectFit" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="ic_ads_fb" translatesAutoresizingMaskIntoConstraints="NO" id="tQY-db-Vng">
|
||||
<rect key="frame" x="0.0" y="0.0" width="20" height="12"/>
|
||||
|
@ -48,9 +48,6 @@
|
|||
<constraints>
|
||||
<constraint firstAttribute="width" constant="20" id="s4f-Vq-gd4"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="string" keyPath="mwm_name" value="img_ad"/>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</imageView>
|
||||
</subviews>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||
|
@ -69,28 +66,28 @@
|
|||
</userDefinedRuntimeAttributes>
|
||||
</view>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="300" text="Delivery Club" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="GhG-Kh-VRe">
|
||||
<rect key="frame" x="12" y="8" width="313" height="14.5"/>
|
||||
<rect key="frame" x="58" y="8" width="267" height="14.5"/>
|
||||
<fontDescription key="fontDescription" type="system" weight="semibold" pointSize="12"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.59999999999999998" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="string" keyPath="styleName" value="bold12:blackSecondaryText"/>
|
||||
<userDefinedRuntimeAttribute type="string" keyPath="styleName" value="AdBannerTitle"/>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</label>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="TopLeft" horizontalHuggingPriority="451" verticalHuggingPriority="249" horizontalCompressionResistancePriority="249" text="Как " textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="D5E-LW-54x">
|
||||
<rect key="frame" x="8" y="26.5" width="317" height="75.5"/>
|
||||
<rect key="frame" x="54" y="26.5" width="271" height="21.5"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="12"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="0.59999999999999998" colorSpace="calibratedRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="string" keyPath="styleName" value="regular12:blackSecondaryText"/>
|
||||
<userDefinedRuntimeAttribute type="string" keyPath="styleName" value="AdBannerSubtitle"/>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</label>
|
||||
<button opaque="NO" contentMode="scaleToFill" horizontalHuggingPriority="551" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="S7j-gp-e0z">
|
||||
<rect key="frame" x="329" y="24" width="69" height="24"/>
|
||||
<rect key="frame" x="329" y="24" width="69" height="20"/>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="24" id="gVK-6r-S73"/>
|
||||
<constraint firstAttribute="height" constant="20" id="gVK-6r-S73"/>
|
||||
<constraint firstAttribute="width" relation="greaterThanOrEqual" constant="64" id="uiG-cQ-epi"/>
|
||||
</constraints>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="12"/>
|
||||
|
@ -103,7 +100,7 @@
|
|||
</userDefinedRuntimeAttributes>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="gqm-uV-OY1">
|
||||
<rect key="frame" x="12" y="110" width="189" height="36"/>
|
||||
<rect key="frame" x="12" y="56" width="189" height="36"/>
|
||||
<color key="backgroundColor" red="0.95294117649999999" green="0.92156862750000001" blue="0.85490196080000003" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="36" id="aDD-9o-FLS"/>
|
||||
|
@ -119,8 +116,8 @@
|
|||
<action selector="removeAction:" destination="iN0-l3-epB" eventType="touchUpInside" id="TR7-gf-UPR"/>
|
||||
</connections>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="E1H-8C-XdJ">
|
||||
<rect key="frame" x="213" y="110" width="189" height="36"/>
|
||||
<button opaque="NO" contentMode="scaleToFill" horizontalCompressionResistancePriority="749" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="E1H-8C-XdJ">
|
||||
<rect key="frame" x="213" y="56" width="189" height="36"/>
|
||||
<color key="backgroundColor" red="0.95294117649999999" green="0.92156862750000001" blue="0.85490196080000003" alpha="1" colorSpace="calibratedRGB"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="36" id="C9O-Uj-NAr"/>
|
||||
|
@ -133,11 +130,11 @@
|
|||
</userDefinedRuntimeAttributes>
|
||||
</button>
|
||||
<button hidden="YES" opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="Nqu-Vs-pn3">
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="110"/>
|
||||
<rect key="frame" x="0.0" y="0.0" width="414" height="55"/>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
</button>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="rqd-t1-0u9">
|
||||
<rect key="frame" x="6" y="8" width="42" height="16"/>
|
||||
<rect key="frame" x="52" y="8" width="42" height="16"/>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||
<connections>
|
||||
<action selector="privacyAction" destination="iN0-l3-epB" eventType="touchUpInside" id="eP1-re-kOd"/>
|
||||
|
@ -176,17 +173,16 @@
|
|||
<constraint firstAttribute="trailing" secondItem="Nqu-Vs-pn3" secondAttribute="trailing" id="AWi-Mn-XTZ"/>
|
||||
<constraint firstItem="gqm-uV-OY1" firstAttribute="top" secondItem="D5E-LW-54x" secondAttribute="bottom" constant="8" id="C4X-58-vYe"/>
|
||||
<constraint firstItem="h4t-4z-OMT" firstAttribute="top" secondItem="AfO-KW-tyB" secondAttribute="top" constant="8" id="DUh-tO-f6C"/>
|
||||
<constraint firstItem="h4t-4z-OMT" firstAttribute="leading" secondItem="AfO-KW-tyB" secondAttribute="leading" constant="6" id="DcB-kh-pyE"/>
|
||||
<constraint firstItem="E1H-8C-XdJ" firstAttribute="leading" secondItem="AfO-KW-tyB" secondAttribute="leading" priority="250" constant="12" id="Exj-rS-B8B"/>
|
||||
<constraint firstItem="h4t-4z-OMT" firstAttribute="trailing" secondItem="AfO-KW-tyB" secondAttribute="leading" priority="500" id="GO8-Qj-eak"/>
|
||||
<constraint firstItem="h4t-4z-OMT" firstAttribute="leading" secondItem="AfO-KW-tyB" secondAttribute="leading" priority="250" constant="16" id="Nu6-G0-5U1"/>
|
||||
<constraint firstItem="Nqu-Vs-pn3" firstAttribute="top" secondItem="AfO-KW-tyB" secondAttribute="top" id="ODd-Iq-Ofv"/>
|
||||
<constraint firstItem="E1H-8C-XdJ" firstAttribute="leading" secondItem="gqm-uV-OY1" secondAttribute="trailing" priority="500" constant="12" id="Q82-e0-UWw"/>
|
||||
<constraint firstItem="gqm-uV-OY1" firstAttribute="width" secondItem="E1H-8C-XdJ" secondAttribute="width" id="QdF-UD-zv6"/>
|
||||
<constraint firstItem="D5E-LW-54x" firstAttribute="top" secondItem="GhG-Kh-VRe" secondAttribute="bottom" priority="700" constant="4" id="XKd-Rk-e6D"/>
|
||||
<constraint firstItem="E1H-8C-XdJ" firstAttribute="leading" secondItem="gqm-uV-OY1" secondAttribute="trailing" constant="12" id="Q82-e0-UWw"/>
|
||||
<constraint firstItem="gqm-uV-OY1" firstAttribute="width" secondItem="E1H-8C-XdJ" secondAttribute="width" priority="750" id="QdF-UD-zv6"/>
|
||||
<constraint firstItem="D5E-LW-54x" firstAttribute="top" secondItem="GhG-Kh-VRe" secondAttribute="bottom" constant="4" id="XKd-Rk-e6D"/>
|
||||
<constraint firstItem="GhG-Kh-VRe" firstAttribute="leading" secondItem="6hQ-rg-viN" secondAttribute="leading" constant="4" id="XiB-UN-5Bl"/>
|
||||
<constraint firstItem="S7j-gp-e0z" firstAttribute="top" secondItem="f7S-px-Yhe" secondAttribute="bottom" constant="-5" id="YKe-2R-a76"/>
|
||||
<constraint firstItem="At2-ZV-PEw" firstAttribute="trailing" secondItem="f7S-px-Yhe" secondAttribute="trailing" constant="-2" id="aOq-ZM-Z4F"/>
|
||||
<constraint firstItem="6hQ-rg-viN" firstAttribute="leading" secondItem="AfO-KW-tyB" secondAttribute="leading" priority="600" constant="8" id="bJ3-IZ-JyD"/>
|
||||
<constraint firstAttribute="trailing" secondItem="f7S-px-Yhe" secondAttribute="trailing" id="fFT-Zq-2Ad"/>
|
||||
<constraint firstItem="gqm-uV-OY1" firstAttribute="leading" secondItem="AfO-KW-tyB" secondAttribute="leading" constant="12" id="fLI-Wi-N2z"/>
|
||||
<constraint firstItem="E1H-8C-XdJ" firstAttribute="top" secondItem="D5E-LW-54x" secondAttribute="bottom" constant="8" id="g35-y3-zlb"/>
|
||||
|
@ -203,8 +199,7 @@
|
|||
<constraint firstItem="Nqu-Vs-pn3" firstAttribute="leading" secondItem="AfO-KW-tyB" secondAttribute="leading" id="qFd-S8-Ne5"/>
|
||||
<constraint firstAttribute="bottom" secondItem="E1H-8C-XdJ" secondAttribute="bottom" priority="250" constant="12" id="t7P-M4-f4j"/>
|
||||
<constraint firstAttribute="bottom" secondItem="Nqu-Vs-pn3" secondAttribute="bottom" id="vLY-ex-HA8"/>
|
||||
<constraint firstItem="D5E-LW-54x" firstAttribute="top" secondItem="GhG-Kh-VRe" secondAttribute="bottom" priority="250" constant="8" id="vPg-hg-U9c"/>
|
||||
<constraint firstItem="6hQ-rg-viN" firstAttribute="leading" secondItem="h4t-4z-OMT" secondAttribute="trailing" priority="250" constant="8" id="xru-9W-5gV"/>
|
||||
<constraint firstItem="6hQ-rg-viN" firstAttribute="leading" secondItem="h4t-4z-OMT" secondAttribute="trailing" constant="8" id="xru-9W-5gV"/>
|
||||
</constraints>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="string" keyPath="styleName" value="NativeAdView"/>
|
||||
|
@ -216,7 +211,7 @@
|
|||
<constraint firstItem="gYF-KR-F2p" firstAttribute="leading" secondItem="iN0-l3-epB" secondAttribute="leading" id="03l-Tw-NJR"/>
|
||||
<constraint firstItem="AfO-KW-tyB" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" id="6MD-r5-mXG"/>
|
||||
<constraint firstAttribute="trailing" secondItem="AfO-KW-tyB" secondAttribute="trailing" id="77h-Pe-ltA"/>
|
||||
<constraint firstAttribute="trailing" secondItem="gYF-KR-F2p" secondAttribute="trailing" id="bh9-gW-GRn"/>
|
||||
<constraint firstAttribute="trailing" secondItem="gYF-KR-F2p" secondAttribute="trailing" constant="20" symbolic="YES" id="bh9-gW-GRn"/>
|
||||
<constraint firstItem="gYF-KR-F2p" firstAttribute="top" secondItem="iN0-l3-epB" secondAttribute="top" id="fXP-gL-JvE"/>
|
||||
<constraint firstAttribute="bottom" secondItem="gYF-KR-F2p" secondAttribute="bottom" id="tFU-Pd-f4K"/>
|
||||
<constraint firstAttribute="bottom" secondItem="AfO-KW-tyB" secondAttribute="bottom" id="tfr-QC-Y8I"/>
|
||||
|
@ -247,14 +242,11 @@
|
|||
<outlet property="removeAdsImage" destination="At2-ZV-PEw" id="UEQ-rS-A8F"/>
|
||||
<outlet property="removeAdsLargeButton" destination="gqm-uV-OY1" id="u3t-CC-dEk"/>
|
||||
<outlet property="removeAdsSmallButton" destination="f7S-px-Yhe" id="EXJ-PN-S9b"/>
|
||||
<outletCollection property="detailedModeConstraints" destination="xru-9W-5gV" collectionClass="NSMutableArray" id="Rjd-h4-qRE"/>
|
||||
<outletCollection property="detailedModeConstraints" destination="pGf-Xx-22j" collectionClass="NSMutableArray" id="xdB-yz-q31"/>
|
||||
<outletCollection property="detailedModeConstraints" destination="Nu6-G0-5U1" collectionClass="NSMutableArray" id="wsV-Xb-O49"/>
|
||||
<outletCollection property="detailedModeConstraints" destination="t7P-M4-f4j" collectionClass="NSMutableArray" id="FGC-wM-H9Q"/>
|
||||
<outletCollection property="detailedModeConstraints" destination="pfq-qS-fIY" collectionClass="NSMutableArray" id="XYi-ye-c03"/>
|
||||
<outletCollection property="detailedModeConstraints" destination="vPg-hg-U9c" collectionClass="NSMutableArray" id="MuA-dg-KJm"/>
|
||||
</connections>
|
||||
<point key="canvasLocation" x="137.68115942028987" y="-137.94642857142856"/>
|
||||
<point key="canvasLocation" x="137.68115942028987" y="-156.36160714285714"/>
|
||||
</view>
|
||||
</objects>
|
||||
<resources>
|
||||
|
|
|
@ -31,6 +31,7 @@ class PlacePagePreviewViewController: UIViewController {
|
|||
@IBOutlet var addressLabel: UILabel!
|
||||
@IBOutlet var addressContainerView: UIStackView!
|
||||
@IBOutlet var searchSimilarButton: UIButton!
|
||||
@IBOutlet var scheduleContainerView: UIStackView!
|
||||
|
||||
@IBOutlet var titleDirectionView: DirectionView!
|
||||
@IBOutlet var subtitleDirectionView: DirectionView!
|
||||
|
@ -191,7 +192,7 @@ class PlacePagePreviewViewController: UIViewController {
|
|||
scheduleLabel.text = L("closed_now")
|
||||
scheduleLabel.textColor = UIColor.red
|
||||
case .openingHoursUnknown:
|
||||
scheduleLabel.isHidden = true
|
||||
scheduleContainerView.isHidden = true
|
||||
@unknown default:
|
||||
fatalError()
|
||||
}
|
||||
|
|
|
@ -1,9 +1,9 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="15702" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="bX8-ZQ-XDA">
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="15705" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="bX8-ZQ-XDA">
|
||||
<device id="retina4_7" orientation="portrait" appearance="light"/>
|
||||
<dependencies>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15704"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="15706"/>
|
||||
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
||||
<capability name="Stack View standard spacing" minToolsVersion="9.0"/>
|
||||
<capability name="collection view cell content view" minToolsVersion="11.0"/>
|
||||
|
@ -123,14 +123,14 @@
|
|||
<rect key="frame" x="0.0" y="0.0" width="375" height="220"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<subviews>
|
||||
<stackView opaque="NO" contentMode="scaleToFill" axis="vertical" spacing="8" translatesAutoresizingMaskIntoConstraints="NO" id="Gmb-Zm-Z10">
|
||||
<rect key="frame" x="16" y="0.0" width="343" height="212"/>
|
||||
<stackView opaque="NO" contentMode="scaleToFill" layoutMarginsFollowReadableWidth="YES" axis="vertical" spacing="8" translatesAutoresizingMaskIntoConstraints="NO" id="Gmb-Zm-Z10">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="212"/>
|
||||
<subviews>
|
||||
<stackView opaque="NO" contentMode="scaleToFill" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="drY-as-VxY">
|
||||
<rect key="frame" x="0.0" y="0.0" width="343" height="50"/>
|
||||
<rect key="frame" x="4" y="0.0" width="367" height="50"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" verticalHuggingPriority="252" text="Хинкальная" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="0" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="gG5-iq-6Xs">
|
||||
<rect key="frame" x="0.0" y="0.0" width="171.5" height="50"/>
|
||||
<rect key="frame" x="12" y="0.0" width="171.5" height="50"/>
|
||||
<fontDescription key="fontDescription" type="system" weight="medium" pointSize="20"/>
|
||||
<nil key="textColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
|
@ -139,7 +139,7 @@
|
|||
</userDefinedRuntimeAttributes>
|
||||
</label>
|
||||
<view contentMode="scaleToFill" horizontalHuggingPriority="750" horizontalCompressionResistancePriority="1000" translatesAutoresizingMaskIntoConstraints="NO" id="Jgo-Sd-tyF">
|
||||
<rect key="frame" x="171.5" y="0.0" width="171.5" height="50"/>
|
||||
<rect key="frame" x="183.5" y="0.0" width="171.5" height="50"/>
|
||||
<subviews>
|
||||
<view contentMode="scaleToFill" horizontalHuggingPriority="750" horizontalCompressionResistancePriority="1000" translatesAutoresizingMaskIntoConstraints="NO" id="5bu-1v-9Tb">
|
||||
<rect key="frame" x="0.0" y="0.0" width="171.5" height="20"/>
|
||||
|
@ -181,7 +181,7 @@
|
|||
</userDefinedRuntimeAttributes>
|
||||
</view>
|
||||
<view hidden="YES" contentMode="scaleToFill" horizontalHuggingPriority="1000" horizontalCompressionResistancePriority="1000" translatesAutoresizingMaskIntoConstraints="NO" id="yrY-oi-L2J" customClass="DirectionView" customModule="maps_me" customModuleProvider="target">
|
||||
<rect key="frame" x="343" y="0.0" width="57.5" height="50"/>
|
||||
<rect key="frame" x="355" y="0.0" width="57.5" height="50"/>
|
||||
<subviews>
|
||||
<imageView autoresizesSubviews="NO" userInteractionEnabled="NO" contentMode="scaleToFill" horizontalHuggingPriority="251" verticalHuggingPriority="251" image="img_direction_light" translatesAutoresizingMaskIntoConstraints="NO" id="OGW-Uh-yEF">
|
||||
<rect key="frame" x="0.0" y="16" width="18" height="18"/>
|
||||
|
@ -218,12 +218,13 @@
|
|||
</connections>
|
||||
</view>
|
||||
</subviews>
|
||||
<edgeInsets key="layoutMargins" top="0.0" left="12" bottom="0.0" right="12"/>
|
||||
</stackView>
|
||||
<stackView opaque="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="YyN-l5-4le">
|
||||
<rect key="frame" x="0.0" y="58" width="343" height="25"/>
|
||||
<rect key="frame" x="4" y="58" width="367" height="25"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="Cafe - Wifi" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="Gzt-ot-sRg">
|
||||
<rect key="frame" x="0.0" y="0.0" width="343" height="25"/>
|
||||
<rect key="frame" x="12" y="0.0" width="343" height="25"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<nil key="textColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
|
@ -269,21 +270,28 @@
|
|||
</connections>
|
||||
</view>
|
||||
</subviews>
|
||||
<edgeInsets key="layoutMargins" top="0.0" left="12" bottom="0.0" right="12"/>
|
||||
</stackView>
|
||||
<stackView opaque="NO" contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="fKt-f3-qqN">
|
||||
<rect key="frame" x="4" y="91" width="367" height="20.5"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" insetsLayoutMarginsFromSafeArea="NO" text="Open" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="caI-ec-meo">
|
||||
<rect key="frame" x="12" y="0.0" width="343" height="20.5"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<nil key="textColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="string" keyPath="styleName" value="regular14:blackSecondaryText"/>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</label>
|
||||
</subviews>
|
||||
<edgeInsets key="layoutMargins" top="0.0" left="12" bottom="0.0" right="12"/>
|
||||
</stackView>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" text="Open" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="caI-ec-meo">
|
||||
<rect key="frame" x="0.0" y="91" width="343" height="20.5"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<nil key="textColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
<userDefinedRuntimeAttributes>
|
||||
<userDefinedRuntimeAttribute type="string" keyPath="styleName" value="regular14:blackSecondaryText"/>
|
||||
</userDefinedRuntimeAttributes>
|
||||
</label>
|
||||
<stackView opaque="NO" contentMode="scaleToFill" spacing="4" translatesAutoresizingMaskIntoConstraints="NO" id="DpF-gz-Yio">
|
||||
<rect key="frame" x="0.0" y="119.5" width="343" height="20.5"/>
|
||||
<rect key="frame" x="4" y="119.5" width="367" height="20.5"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" verticalHuggingPriority="251" text="ул. Тверская 5/34" textAlignment="natural" lineBreakMode="tailTruncation" numberOfLines="2" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="i56-oA-HiT">
|
||||
<rect key="frame" x="0.0" y="0.0" width="343" height="20.5"/>
|
||||
<rect key="frame" x="12" y="0.0" width="343" height="20.5"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<nil key="textColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
|
@ -329,12 +337,13 @@
|
|||
</connections>
|
||||
</view>
|
||||
</subviews>
|
||||
<edgeInsets key="layoutMargins" top="0.0" left="12" bottom="0.0" right="12"/>
|
||||
</stackView>
|
||||
<stackView opaque="NO" contentMode="scaleToFill" spacing="4" translatesAutoresizingMaskIntoConstraints="NO" id="D4C-C4-vD1">
|
||||
<rect key="frame" x="0.0" y="148" width="343" height="20"/>
|
||||
<rect key="frame" x="4" y="148" width="367" height="20"/>
|
||||
<subviews>
|
||||
<view contentMode="scaleToFill" horizontalHuggingPriority="750" verticalHuggingPriority="251" translatesAutoresizingMaskIntoConstraints="NO" id="1c9-b8-LAn" customClass="RatingSummaryView" customModule="maps_me" customModuleProvider="target">
|
||||
<rect key="frame" x="0.0" y="0.0" width="48" height="20"/>
|
||||
<rect key="frame" x="12" y="0.0" width="48" height="20"/>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="20" id="iFI-Mp-oCm"/>
|
||||
|
@ -363,7 +372,7 @@
|
|||
</userDefinedRuntimeAttributes>
|
||||
</view>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" horizontalCompressionResistancePriority="250" text="Based on 5 reviews" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="kol-v4-MSp">
|
||||
<rect key="frame" x="52" y="0.0" width="133" height="20"/>
|
||||
<rect key="frame" x="64" y="0.0" width="133" height="20"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<nil key="textColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
|
@ -372,7 +381,7 @@
|
|||
</userDefinedRuntimeAttributes>
|
||||
</label>
|
||||
<button opaque="NO" clipsSubviews="YES" contentMode="scaleToFill" horizontalHuggingPriority="253" verticalHuggingPriority="252" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="XLL-e8-8Bs">
|
||||
<rect key="frame" x="189" y="0.0" width="118" height="20"/>
|
||||
<rect key="frame" x="201" y="0.0" width="118" height="20"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="20" id="xjJ-5O-9Nm"/>
|
||||
</constraints>
|
||||
|
@ -386,7 +395,7 @@
|
|||
</connections>
|
||||
</button>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="253" verticalHuggingPriority="251" text="$$$" textAlignment="right" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="iv0-ME-y43">
|
||||
<rect key="frame" x="311" y="0.0" width="32" height="20"/>
|
||||
<rect key="frame" x="323" y="0.0" width="32" height="20"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<color key="textColor" red="0.0" green="0.0" blue="0.0" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<nil key="highlightedColor"/>
|
||||
|
@ -395,7 +404,7 @@
|
|||
</userDefinedRuntimeAttributes>
|
||||
</label>
|
||||
<view hidden="YES" contentMode="scaleToFill" horizontalHuggingPriority="253" translatesAutoresizingMaskIntoConstraints="NO" id="4Hd-EK-fGw">
|
||||
<rect key="frame" x="343" y="0.0" width="10" height="20"/>
|
||||
<rect key="frame" x="355" y="0.0" width="10" height="20"/>
|
||||
<subviews>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="999" verticalHuggingPriority="251" text="%" textAlignment="center" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="NdO-wE-Vri">
|
||||
<rect key="frame" x="5" y="0.0" width="0.0" height="20"/>
|
||||
|
@ -420,9 +429,10 @@
|
|||
</userDefinedRuntimeAttributes>
|
||||
</view>
|
||||
</subviews>
|
||||
<edgeInsets key="layoutMargins" top="0.0" left="12" bottom="0.0" right="12"/>
|
||||
</stackView>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="s4M-6d-Z3r">
|
||||
<rect key="frame" x="0.0" y="176" width="343" height="36"/>
|
||||
<rect key="frame" x="4" y="176" width="367" height="36"/>
|
||||
<constraints>
|
||||
<constraint firstAttribute="height" constant="36" id="l8R-pq-CqB"/>
|
||||
</constraints>
|
||||
|
@ -436,6 +446,7 @@
|
|||
</connections>
|
||||
</button>
|
||||
</subviews>
|
||||
<edgeInsets key="layoutMargins" top="0.0" left="4" bottom="0.0" right="4"/>
|
||||
</stackView>
|
||||
<view contentMode="scaleToFill" translatesAutoresizingMaskIntoConstraints="NO" id="fVG-je-keF">
|
||||
<rect key="frame" x="0.0" y="219" width="375" height="1"/>
|
||||
|
@ -452,8 +463,8 @@
|
|||
<constraints>
|
||||
<constraint firstAttribute="trailing" secondItem="fVG-je-keF" secondAttribute="trailing" id="N2c-Kj-Azh"/>
|
||||
<constraint firstItem="Gmb-Zm-Z10" firstAttribute="top" secondItem="1x8-x0-W3C" secondAttribute="top" id="RGb-48-TZA"/>
|
||||
<constraint firstAttribute="trailing" secondItem="Gmb-Zm-Z10" secondAttribute="trailing" constant="16" id="UPE-4F-MaQ"/>
|
||||
<constraint firstItem="Gmb-Zm-Z10" firstAttribute="leading" secondItem="1x8-x0-W3C" secondAttribute="leading" constant="16" id="XN9-5M-LfY"/>
|
||||
<constraint firstAttribute="trailing" secondItem="Gmb-Zm-Z10" secondAttribute="trailing" id="UPE-4F-MaQ"/>
|
||||
<constraint firstItem="Gmb-Zm-Z10" firstAttribute="leading" secondItem="1x8-x0-W3C" secondAttribute="leading" id="XN9-5M-LfY"/>
|
||||
<constraint firstItem="fVG-je-keF" firstAttribute="leading" secondItem="1x8-x0-W3C" secondAttribute="leading" id="byS-Tu-DOH"/>
|
||||
<constraint firstAttribute="bottom" secondItem="Gmb-Zm-Z10" secondAttribute="bottom" constant="8" id="dZu-gM-3LO"/>
|
||||
<constraint firstItem="fVG-je-keF" firstAttribute="bottom" secondItem="1x8-x0-W3C" secondAttribute="bottom" id="fel-8X-6tZ"/>
|
||||
|
@ -475,6 +486,7 @@
|
|||
<outlet property="priceLabel" destination="iv0-ME-y43" id="VGo-do-QXs"/>
|
||||
<outlet property="ratingSummaryView" destination="1c9-b8-LAn" id="UDH-zy-hRs"/>
|
||||
<outlet property="reviewsLabel" destination="kol-v4-MSp" id="Uas-eN-4pX"/>
|
||||
<outlet property="scheduleContainerView" destination="fKt-f3-qqN" id="uqC-c2-IS6"/>
|
||||
<outlet property="scheduleLabel" destination="caI-ec-meo" id="dqL-Ov-367"/>
|
||||
<outlet property="searchSimilarButton" destination="s4M-6d-Z3r" id="s8P-Xo-rog"/>
|
||||
<outlet property="stackView" destination="Gmb-Zm-Z10" id="M2z-ue-zMa"/>
|
||||
|
@ -3065,13 +3077,13 @@
|
|||
</userDefinedRuntimeAttributes>
|
||||
</label>
|
||||
<button opaque="NO" contentMode="scaleToFill" contentHorizontalAlignment="center" contentVerticalAlignment="center" buttonType="roundedRect" lineBreakMode="middleTruncation" translatesAutoresizingMaskIntoConstraints="NO" id="g6D-fD-0Ug">
|
||||
<rect key="frame" x="134" y="260.5" width="30" height="30"/>
|
||||
<rect key="frame" x="133.5" y="260.5" width="30" height="30"/>
|
||||
<connections>
|
||||
<action selector="onExtendedDifficultyButtonPressed:" destination="d1y-Na-lDm" eventType="touchUpInside" id="4zH-m2-OSE"/>
|
||||
</connections>
|
||||
</button>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="S1" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="GPk-XR-oL1" customClass="InsetsLabel" customModule="maps_me" customModuleProvider="target">
|
||||
<rect key="frame" x="139.5" y="265" width="19" height="20.5"/>
|
||||
<rect key="frame" x="139" y="265" width="19" height="20.5"/>
|
||||
<color key="backgroundColor" white="0.66666666666666663" alpha="1" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||
<fontDescription key="fontDescription" type="boldSystem" pointSize="17"/>
|
||||
<nil key="textColor"/>
|
||||
|
|
Loading…
Add table
Reference in a new issue