Signal-iOS/SignalUI/Utils
Max Radermacher 1311d3f665
Refactor contact access code
Split it based on whether the purpose is “editing” or “sharing”. If
we’re editing, it generally means we have full access to contacts, and
that we’ve checked which of the contacts are registered on Signal. If
we’re “sharing”, we don’t care whether or not they’re registered.

If we’re “sharing”, we check whether or not we’ve prompted for the
contacts permission yet. If not, we’ll show the prompt.

If we’re “editing”, we assume we’ve already prompted (which is already
the case today), so `.notDetermined` isn’t a possible state.

Other things to note:

- The `supportsContactEditing` was always true, so it’s been removed.

- The error when contacts access isn’t allowed is now shown more
  consistently. Previously, it was sometimes shown in response to
  initializing a view controller.

- Some RecipientPickerViewController code was moved from Obj-C to Swift.
  This is probably useful on its own, but it’ll also make it easier to
  build some new UI in subsequent commits.
2023-01-12 09:55:30 -08:00
..
Attachment Multisend Add all JobQueues to environment, via a wrapper 2022-11-09 14:08:44 -06:00
AppContext+SignalUI.swift Change license to AGPL 2022-10-13 08:25:37 -05:00
AudioPlayer.swift Convert OWSAudioPlayer to swift and lose 'OWS' prefix. 2022-12-06 16:00:58 -08:00
AudioSession.swift Convert OWSAudioPlayer to swift and lose 'OWS' prefix. 2022-12-06 16:00:58 -08:00
BlockListUIUtils.h Remove two unused blocklist methods 2022-11-03 11:41:41 -07:00
BlockListUIUtils.m Remove two unused blocklist methods 2022-11-03 11:41:41 -07:00
ConversationStyle.swift Change license to AGPL 2022-10-13 08:25:37 -05:00
FormattedNumberField.swift Format credit/debit card donation inputs 2022-11-23 18:49:21 -06:00
FullTextSearcher.swift Fix typo: Convsersation → Conversation 2022-12-30 09:18:49 -06:00
GroupManager+GroupInvites.swift Change license to AGPL 2022-10-13 08:25:37 -05:00
GroupViewUtils.swift Change license to AGPL 2022-10-13 08:25:37 -05:00
InviteFlow.swift Refactor contact access code 2023-01-12 09:55:30 -08:00
MobileCoinHelperSDK.swift Change license to AGPL 2022-10-13 08:25:37 -05:00
NameCollisionFinder.swift Hide the dropped-members banner more permanently when dismissed 2022-10-29 13:26:26 -07:00
OWSAnyTouchGestureRecognizer.h Change license to AGPL 2022-10-13 08:25:37 -05:00
OWSAnyTouchGestureRecognizer.m Change license to AGPL 2022-10-13 08:25:37 -05:00
OWSSounds+SignalUI.swift Convert OWSAudioPlayer to swift and lose 'OWS' prefix. 2022-12-06 16:00:58 -08:00
StoryMessage+SignalUI.swift Change license to AGPL 2022-10-13 08:25:37 -05:00
StorySharing.swift Better multisend of text stories 2022-10-20 11:04:25 -07:00
TSMessage+SignalUI.swift Add all JobQueues to environment, via a wrapper 2022-11-09 14:08:44 -06:00