diff --git a/Signal/Images.xcassets/building.imageset/Contents.json b/Signal/Images.xcassets/building.imageset/Contents.json new file mode 100644 index 0000000000..e815ce9877 --- /dev/null +++ b/Signal/Images.xcassets/building.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "building.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Signal/Images.xcassets/building.imageset/building.pdf b/Signal/Images.xcassets/building.imageset/building.pdf new file mode 100644 index 0000000000..859ca98f6b --- /dev/null +++ b/Signal/Images.xcassets/building.imageset/building.pdf @@ -0,0 +1,271 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 1.625000 15.060608 cm +0.000000 0.000000 0.000000 scn +12.444221 6.667414 m +20.342243 1.679188 l +19.407755 0.199582 l +11.509731 5.187809 l +10.816579 5.625589 9.933419 5.625589 9.240264 5.187807 c +1.342243 0.199584 l +0.407757 1.679190 l +8.305778 6.667412 l +9.569763 7.465719 11.180233 7.465722 12.444221 6.667414 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 20.576752 cm +0.000000 0.000000 0.000000 scn +0.000000 -4.576759 m +0.000000 -4.093510 0.391751 -3.701759 0.875000 -3.701759 c +19.875000 -3.701759 l +20.358248 -3.701759 20.750000 -4.093510 20.750000 -4.576759 c +20.750000 -5.060009 20.358248 -5.451759 19.875000 -5.451759 c +0.875000 -5.451759 l +0.391751 -5.451759 -0.000000 -5.060009 0.000000 -4.576759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 20.576752 cm +0.000000 0.000000 0.000000 scn +0.500000 -17.076759 m +0.500000 -16.593510 0.891751 -16.201759 1.375000 -16.201759 c +19.375000 -16.201759 l +19.858250 -16.201759 20.250000 -16.593510 20.250000 -17.076759 c +20.250000 -17.560009 19.858250 -17.951759 19.375000 -17.951759 c +1.375000 -17.951759 l +0.891751 -17.951759 0.500000 -17.560009 0.500000 -17.076759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 14.326752 cm +0.000000 0.000000 0.000000 scn +3.625000 -8.576759 m +3.210786 -8.576759 2.875000 -8.240973 2.875000 -7.826759 c +2.875000 -1.326759 l +2.875000 -0.912546 3.210787 -0.576759 3.625000 -0.576759 c +4.039214 -0.576759 4.375000 -0.912546 4.375000 -1.326759 c +4.375000 -7.826759 l +4.375000 -8.240973 4.039214 -8.576759 3.625000 -8.576759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 14.326752 cm +0.000000 0.000000 0.000000 scn +8.125000 -8.576759 m +7.710786 -8.576759 7.375000 -8.240973 7.375000 -7.826759 c +7.375000 -1.326759 l +7.375000 -0.912546 7.710786 -0.576759 8.125000 -0.576759 c +8.539213 -0.576759 8.875000 -0.912546 8.875000 -1.326759 c +8.875000 -7.826759 l +8.875000 -8.240973 8.539213 -8.576759 8.125000 -8.576759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 14.326752 cm +0.000000 0.000000 0.000000 scn +12.625000 -8.576759 m +12.210787 -8.576759 11.875000 -8.240973 11.875000 -7.826759 c +11.875000 -1.326759 l +11.875000 -0.912546 12.210787 -0.576759 12.625000 -0.576759 c +13.039213 -0.576759 13.375000 -0.912546 13.375000 -1.326759 c +13.375000 -7.826759 l +13.375000 -8.240973 13.039213 -8.576759 12.625000 -8.576759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 14.326752 cm +0.000000 0.000000 0.000000 scn +17.125000 -8.576759 m +16.710787 -8.576759 16.375000 -8.240973 16.375000 -7.826759 c +16.375000 -1.326759 l +16.375000 -0.912546 16.710787 -0.576759 17.125000 -0.576759 c +17.539213 -0.576759 17.875000 -0.912546 17.875000 -1.326759 c +17.875000 -7.826759 l +17.875000 -8.240973 17.539213 -8.576759 17.125000 -8.576759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 20.826752 cm +0.000000 0.000000 0.000000 scn +1.875000 -7.326759 m +1.875000 -6.912546 2.210786 -6.576759 2.625000 -6.576759 c +4.625000 -6.576759 l +5.039214 -6.576759 5.375000 -6.912546 5.375000 -7.326759 c +5.375000 -7.740973 5.039214 -8.076759 4.625000 -8.076759 c +2.625000 -8.076759 l +2.210786 -8.076759 1.875000 -7.740973 1.875000 -7.326759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 20.826752 cm +0.000000 0.000000 0.000000 scn +6.375000 -7.326759 m +6.375000 -6.912546 6.710786 -6.576759 7.125000 -6.576759 c +9.125000 -6.576759 l +9.539213 -6.576759 9.875000 -6.912546 9.875000 -7.326759 c +9.875000 -7.740973 9.539213 -8.076759 9.125000 -8.076759 c +7.125000 -8.076759 l +6.710786 -8.076759 6.375000 -7.740973 6.375000 -7.326759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 20.826752 cm +0.000000 0.000000 0.000000 scn +10.875000 -7.326759 m +10.875000 -6.912546 11.210787 -6.576759 11.625000 -6.576759 c +13.625000 -6.576759 l +14.039213 -6.576759 14.375000 -6.912546 14.375000 -7.326759 c +14.375000 -7.740973 14.039213 -8.076759 13.625000 -8.076759 c +11.625000 -8.076759 l +11.210787 -8.076759 10.875000 -7.740973 10.875000 -7.326759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 20.826752 cm +0.000000 0.000000 0.000000 scn +15.375000 -7.326759 m +15.375000 -6.912546 15.710787 -6.576759 16.125000 -6.576759 c +18.125000 -6.576759 l +18.539213 -6.576759 18.875000 -6.912546 18.875000 -7.326759 c +18.875000 -7.740973 18.539213 -8.076759 18.125000 -8.076759 c +16.125000 -8.076759 l +15.710787 -8.076759 15.375000 -7.740973 15.375000 -7.326759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 20.826752 cm +0.000000 0.000000 0.000000 scn +1.875000 -14.826759 m +1.875000 -14.412546 2.210786 -14.076759 2.625000 -14.076759 c +4.625000 -14.076759 l +5.039214 -14.076759 5.375000 -14.412546 5.375000 -14.826759 c +5.375000 -15.240973 5.039214 -15.576759 4.625000 -15.576759 c +2.625000 -15.576759 l +2.210786 -15.576759 1.875000 -15.240973 1.875000 -14.826759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 20.826752 cm +0.000000 0.000000 0.000000 scn +6.375000 -14.826759 m +6.375000 -14.412546 6.710786 -14.076759 7.125000 -14.076759 c +9.125000 -14.076759 l +9.539213 -14.076759 9.875000 -14.412546 9.875000 -14.826759 c +9.875000 -15.240973 9.539213 -15.576759 9.125000 -15.576759 c +7.125000 -15.576759 l +6.710786 -15.576759 6.375000 -15.240973 6.375000 -14.826759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 20.826752 cm +0.000000 0.000000 0.000000 scn +10.875000 -14.826759 m +10.875000 -14.412546 11.210787 -14.076759 11.625000 -14.076759 c +13.625000 -14.076759 l +14.039213 -14.076759 14.375000 -14.412546 14.375000 -14.826759 c +14.375000 -15.240973 14.039213 -15.576759 13.625000 -15.576759 c +11.625000 -15.576759 l +11.210787 -15.576759 10.875000 -15.240973 10.875000 -14.826759 c +h +f* +n +Q +q +1.000000 0.000000 -0.000000 1.000000 1.625000 20.826752 cm +0.000000 0.000000 0.000000 scn +15.375000 -14.826759 m +15.375000 -14.412546 15.710787 -14.076759 16.125000 -14.076759 c +18.125000 -14.076759 l +18.539213 -14.076759 18.875000 -14.412546 18.875000 -14.826759 c +18.875000 -15.240973 18.539213 -15.576759 18.125000 -15.576759 c +16.125000 -15.576759 l +15.710787 -15.576759 15.375000 -15.240973 15.375000 -14.826759 c +h +f* +n +Q + +endstream +endobj + +3 0 obj + 6168 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 24.000000 24.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000006258 00000 n +0000006281 00000 n +0000006454 00000 n +0000006528 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +6587 +%%EOF \ No newline at end of file diff --git a/Signal/Images.xcassets/payment.imageset/Contents.json b/Signal/Images.xcassets/payment.imageset/Contents.json new file mode 100644 index 0000000000..8ccf5ed2cd --- /dev/null +++ b/Signal/Images.xcassets/payment.imageset/Contents.json @@ -0,0 +1,12 @@ +{ + "images" : [ + { + "filename" : "payment.pdf", + "idiom" : "universal" + } + ], + "info" : { + "author" : "xcode", + "version" : 1 + } +} diff --git a/Signal/Images.xcassets/payment.imageset/payment.pdf b/Signal/Images.xcassets/payment.imageset/payment.pdf new file mode 100644 index 0000000000..9710d4bad4 --- /dev/null +++ b/Signal/Images.xcassets/payment.imageset/payment.pdf @@ -0,0 +1,121 @@ +%PDF-1.7 + +1 0 obj + << >> +endobj + +2 0 obj + << /Length 3 0 R >> +stream +/DeviceRGB CS +/DeviceRGB cs +q +1.000000 0.000000 -0.000000 1.000000 1.125000 4.125000 cm +0.000000 0.000000 0.000000 scn +21.750000 10.910881 m +21.750011 11.580431 21.750021 12.135532 21.713034 12.588246 c +21.674553 13.059237 21.591715 13.495917 21.382147 13.907216 c +21.058575 14.542263 20.542265 15.058573 19.907219 15.382146 c +19.495918 15.591713 19.059238 15.674551 18.588247 15.713032 c +18.135534 15.750020 17.580433 15.750010 16.910883 15.749999 c +4.839118 15.750000 l +4.169568 15.750011 3.614466 15.750021 3.161752 15.713033 c +2.690760 15.674551 2.254081 15.591714 1.842782 15.382147 c +1.207736 15.058574 0.691426 14.542265 0.367854 13.907217 c +0.158286 13.495918 0.075448 13.059238 0.036967 12.588247 c +-0.000020 12.135540 -0.000011 11.580446 0.000001 10.910909 c +0.000000 4.839097 l +-0.000011 4.169555 -0.000021 3.614461 0.036967 3.161752 c +0.075447 2.690761 0.158285 2.254081 0.367853 1.842782 c +0.691426 1.207735 1.207735 0.691425 1.842781 0.367853 c +2.254080 0.158285 2.690760 0.075448 3.161751 0.036966 c +3.614460 -0.000022 4.169556 -0.000012 4.839094 0.000000 c +16.910904 -0.000001 l +17.580442 -0.000013 18.135538 -0.000023 18.588247 0.036965 c +19.059238 0.075447 19.495918 0.158284 19.907217 0.367852 c +20.542265 0.691424 21.058575 1.207734 21.382147 1.842781 c +21.591713 2.254080 21.674551 2.690760 21.713034 3.161751 c +21.750021 3.614465 21.750011 4.169565 21.750000 4.839115 c +21.750000 10.910881 l +h +19.822886 13.112733 m +19.885801 12.989253 19.939205 12.808510 19.968845 12.445741 c +19.989460 12.193435 19.996441 11.890671 19.998800 11.500000 c +1.751200 11.499998 l +1.753559 11.890670 1.760540 12.193435 1.781155 12.445742 c +1.810794 12.808511 1.864197 12.989254 1.927115 13.112734 c +2.082909 13.418497 2.331502 13.667090 2.637265 13.822885 c +2.760745 13.885801 2.941489 13.939205 3.304257 13.968844 c +3.677243 13.999319 4.160497 13.999999 4.875001 13.999999 c +16.875000 13.999999 l +17.589504 13.999999 18.072758 13.999318 18.445742 13.968844 c +18.808512 13.939205 18.989254 13.885800 19.112734 13.822885 c +19.418497 13.667089 19.667091 13.418497 19.822886 13.112733 c +h +1.750000 4.875000 m +1.750001 9.249998 l +20.000000 9.250000 l +20.000000 4.874998 l +20.000000 4.160495 19.999319 3.677240 19.968845 3.304256 c +19.939205 2.941487 19.885801 2.760745 19.822886 2.637264 c +19.667091 2.331501 19.418497 2.082908 19.112734 1.927114 c +18.989254 1.864197 18.808512 1.810793 18.445742 1.781154 c +18.072758 1.750679 17.589504 1.749999 16.875000 1.749999 c +4.875000 1.750000 l +4.160496 1.750000 3.677241 1.750680 3.304257 1.781155 c +2.941489 1.810794 2.760744 1.864198 2.637264 1.927114 c +2.331501 2.082909 2.082909 2.331502 1.927115 2.637265 c +1.864197 2.760746 1.810793 2.941488 1.781155 3.304257 c +1.750679 3.677242 1.750000 4.160496 1.750000 4.875000 c +h +f* +n +Q + +endstream +endobj + +3 0 obj + 2774 +endobj + +4 0 obj + << /Annots [] + /Type /Page + /MediaBox [ 0.000000 0.000000 24.000000 24.000000 ] + /Resources 1 0 R + /Contents 2 0 R + /Parent 5 0 R + >> +endobj + +5 0 obj + << /Kids [ 4 0 R ] + /Count 1 + /Type /Pages + >> +endobj + +6 0 obj + << /Pages 5 0 R + /Type /Catalog + >> +endobj + +xref +0 7 +0000000000 65535 f +0000000010 00000 n +0000000034 00000 n +0000002864 00000 n +0000002887 00000 n +0000003060 00000 n +0000003134 00000 n +trailer +<< /ID [ (some) (id) ] + /Root 6 0 R + /Size 7 +>> +startxref +3193 +%%EOF \ No newline at end of file diff --git a/Signal/src/ViewControllers/AppSettings/Donations/ApplePayButton.swift b/Signal/src/ViewControllers/AppSettings/Donations/ApplePayButton.swift index 86740d794b..f52974ece7 100644 --- a/Signal/src/ViewControllers/AppSettings/Donations/ApplePayButton.swift +++ b/Signal/src/ViewControllers/AppSettings/Donations/ApplePayButton.swift @@ -12,7 +12,7 @@ class ApplePayButton: PKPaymentButton { init(actionBlock: @escaping () -> Void) { self.actionBlock = actionBlock - super.init(paymentButtonType: .donate, + super.init(paymentButtonType: .plain, paymentButtonStyle: Theme.isDarkThemeEnabled ? .white : .black) cornerRadius = 12 addTarget(self, action: #selector(self.didTouchUpInside), for: .touchUpInside) diff --git a/Signal/src/ViewControllers/AppSettings/Donations/PaypalButton.swift b/Signal/src/ViewControllers/AppSettings/Donations/PaypalButton.swift index 150da27b78..4ea68ed5e1 100644 --- a/Signal/src/ViewControllers/AppSettings/Donations/PaypalButton.swift +++ b/Signal/src/ViewControllers/AppSettings/Donations/PaypalButton.swift @@ -29,15 +29,9 @@ class PaypalButton: UIButton { adjustsImageWhenDisabled = false adjustsImageWhenHighlighted = false layer.cornerRadius = 12 + layer.borderWidth = 0 - if Theme.isDarkThemeEnabled { - backgroundColor = UIColor(rgbHex: 0xEEEEEE) - layer.borderWidth = 0 - } else { - backgroundColor = .white - layer.borderWidth = 1.5 - layer.borderColor = UIColor.ows_gray25.cgColor - } + backgroundColor = UIColor(rgbHex: 0xF6C757) } // MARK: Actions diff --git a/Signal/src/ViewControllers/Donations/DonateChoosePaymentMethodSheet.swift b/Signal/src/ViewControllers/Donations/DonateChoosePaymentMethodSheet.swift index f70bf36500..787066afb7 100644 --- a/Signal/src/ViewControllers/Donations/DonateChoosePaymentMethodSheet.swift +++ b/Signal/src/ViewControllers/Donations/DonateChoosePaymentMethodSheet.swift @@ -190,11 +190,12 @@ class DonateChoosePaymentMethodSheet: OWSTableSheetViewController { guard let self else { return } self.didChoosePaymentMethod(self, .creditOrDebitCard) } - guard let image = UIImage(systemName: "creditcard") else { + guard let image = UIImage(named: "payment")?.withRenderingMode(.alwaysTemplate) else { owsFail("Card asset not found") } creditOrDebitCardButton.setImage(image, for: .normal) creditOrDebitCardButton.imageView?.tintColor = .ows_white + creditOrDebitCardButton.setTitleColor(.ows_white, for: .normal) creditOrDebitCardButton.setPaddingBetweenImageAndText( to: 8, isRightToLeft: CurrentAppContext().isRTL @@ -218,20 +219,28 @@ class DonateChoosePaymentMethodSheet: OWSTableSheetViewController { self.didChoosePaymentMethod(self, .sepa) } - guard let image = UIImage(systemName: "building.columns") else { + guard let image = UIImage(named: "building")?.withRenderingMode(.alwaysTemplate) else { owsFail("Bank asset not found") } sepaButton.setImage(image, for: .normal) - sepaButton.imageView?.tintColor = .ows_white sepaButton.setPaddingBetweenImageAndText( to: 8, isRightToLeft: CurrentAppContext().isRTL ) sepaButton.layer.cornerRadius = 12 - sepaButton.backgroundColor = .ows_accentBlue sepaButton.dimsWhenHighlighted = true sepaButton.titleLabel?.font = .dynamicTypeBody.semibold() + if Theme.isDarkThemeEnabled { + sepaButton.imageView?.tintColor = .ows_gray05 + sepaButton.setTitleColor(.ows_gray05, for: .normal) + sepaButton.backgroundColor = .ows_gray80 + } else { + sepaButton.imageView?.tintColor = .ows_gray90 + sepaButton.setTitleColor(.ows_gray90, for: .normal) + sepaButton.backgroundColor = .ows_white + } + return sepaButton } @@ -278,7 +287,7 @@ class DonateChoosePaymentMethodSheet: OWSTableSheetViewController { footerStack.removeAllSubviews() footerStack.addArrangedSubview(paymentButtonContainerView) footerStack.alignment = .fill - footerStack.layoutMargins = UIEdgeInsets(top: 28, left: 20, bottom: 8, right: 20) + footerStack.layoutMargins = UIEdgeInsets(top: 0, left: 20, bottom: 20, right: 20) footerStack.isLayoutMarginsRelativeArrangement = true paymentButtonContainerView.autoPinWidthToSuperviewMargins() diff --git a/Signal/translations/en.lproj/Localizable.strings b/Signal/translations/en.lproj/Localizable.strings index 7c347ae5a4..357225863e 100644 --- a/Signal/translations/en.lproj/Localizable.strings +++ b/Signal/translations/en.lproj/Localizable.strings @@ -1892,7 +1892,7 @@ "DONATE_CHOOSE_PAYMENT_METHOD_SHEET_SUBTITLE_FOR_MONTHLY_DONATION" = "Get the %1$@ badge"; /* When users make one-time donations, they see a sheet that lets them pick a payment method. It also tells them what they'll be doing when they pay: receive a badge for a month. This is the subtitle on that sheet. Embeds {{localized badge name}}, such as \"Boost\". */ -"DONATE_CHOOSE_PAYMENT_METHOD_SHEET_SUBTITLE_FOR_ONE_TIME_DONATION" = "Earn the %1$@ badge for one month"; +"DONATE_CHOOSE_PAYMENT_METHOD_SHEET_SUBTITLE_FOR_ONE_TIME_DONATION" = "Get the %1$@ badge for 30 days"; /* When users make donations on a friend's behalf, they see a sheet that lets them pick a payment method. This is the title on that sheet. Embeds {{amount of money}}, such as \"$5\". */ "DONATE_CHOOSE_PAYMENT_METHOD_SHEET_TITLE_FOR_DONATION_ON_BEHALF_OF_A_FRIEND" = "%1$@ Donation to Signal";