Signal-iOS/SignalServiceKit
Evan Hahn 198fc1784a
Consolidate one-time & monthly donation screens
Previously, one-time donations were on one screen and monthly donations
were on another. Now, they're on a single screen with a picker.

Most of the interesting changes are in `DonateViewController`.

Other things of note:

- There are some new TODOs here for existing bugs I didn't fix. For
  example, one-time donations don't do so well if there are any problems
  at all.

- Even though we only support Apple Pay, there's code that alludes to
  additional payment methods. For example,
  `DonateChoosePaymentMethodSheet`. We'll expand on this in the future.

- Users should only be able to select currencies that the server
  supports. For example, you shouldn't be able to select EUR if the
  server doesn't support euros. This wasn't working correctly before,
  but is fixed here.

  We already fixed one part, where users could change to an unsupported
  currency (see dab02f30ae). However, if
  your _default_ currency is unsupported and you didn't change it,
  that's no good. This is unlikely for most users but could happen.

  I fixed this by changing it from (effectively)
  `Locale.current.currencyCode ?? "USD"`, which might not be supported,
  to a preference list, choosing the first one the server likes.

- I skip animations if the Reduce Motion setting is enabled.

- On the donation screen, the logic for the preview badge has changed
  slightly. If you already have a badge, we'll always use that.
2022-11-08 16:27:50 -06:00
..
Experience Upgrades Fix remote megaphone image JSON key 2022-11-03 17:00:07 -07:00
protobuf Move system contact names to ContactRecord 2022-10-26 15:00:36 -07:00
Resources Handle incoming group call rings 2022-11-07 09:48:53 -08:00
src Consolidate one-time & monthly donation screens 2022-11-08 16:27:50 -06:00
tests Move SignalServiceKit string tests to correct file 2022-11-07 14:31:15 -08:00
.clang-format Update clang-format with AllowShortEnumsOnASingleLine: false 2022-03-14 11:20:20 -07:00
.gitignore
.travis.yml
SignalServiceKit-Prefix.pch Change license to AGPL 2022-10-13 08:25:37 -05:00
SignalServiceKit.h Change license to AGPL 2022-10-13 08:25:37 -05:00