Commit Graph

33 Commits (7c6d900314836bdd3c0e5ce2a62292ba469d79c8)

Author SHA1 Message Date
Matthew Chen 81555d1225 Add “new contact” and “add to existing contact” buttons in 1:1 conversation settings view.
// FREEBIE
8 years ago
Michael Kirk 4adaaa605f Hide contact editing features on iOS8
// FREEBIE
9 years ago
Michael Kirk c31fd0dfcc Fix flicker of "no contacts" screen on message compose
// FREEBIE
9 years ago
Michael Kirk e2b1cbb154 Don't show "no signal accounts" until contact intersection has completed
at least once

// FREEBIE
9 years ago
Michael Kirk fee47efbea Avoid repaint by requestng contacts before Compose
This entailed passing callback params through the contact request.

// FREEBIE
9 years ago
Matthew Chen d0e26a58c3 Show “invite by SMS” offer for matching non-Signal contacts when searching in “new 1:1: conversation” view.
// FREEBIE
9 years ago
Matthew Chen 0c4351a908 Use SignalAccount class to sync contacts.
// FREEBIE
9 years ago
Matthew Chen 1b99671e0e Clean up ahead of PR.
// FREEBIE
9 years ago
Michael Kirk a056c1e052 Check for signalContact vs. AB setup.
Same intent as previous check but more to the point, and doesn't
require tracking additional state.

// FREEBIE
9 years ago
Michael Kirk 364f416a69 Block editing contact if user has denied contact permissions
// FREEBIE
9 years ago
Michael Kirk b24cf29189 don't request contacts until necessary
Most commonly this will be after hitting the "compose" button

But also we'll do it in the SignalViewController once you've received a
message.

- get rid blocking contacts nag
- use Contacts framework simplifies logic
- remove dead AB code

// FREEBIE
9 years ago
Matthew Chen 26f69b0063 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen ad11c50c1b Reworking observation of Contact and SignalAccount changes.
// FREEBIE
9 years ago
Matthew Chen 6801963a1b Add SignalAccount class.
// FREEBIE
9 years ago
Matthew Chen 93700f1044 Extract labels for phone numbers.
// FREEBIE
9 years ago
Matthew Chen 42768294ee Extract labels for phone numbers.
// FREEBIE
9 years ago
Matthew Chen 61f59067b6 Improve contact-related views.
* Add support for contacts with more than one Signal account using ContactAccount class.
* Use OWSTableViewController in contact-related views.
* Let users add non-contacts to groups.
* Improve the "new group" and "edit group" views.
* Add utility methods for displaying alerts.
* Warn users before discarding unsaved changes in "edit group" view.
* Pull out "contact view helper" to de-duplicate common logic among contact-related views.
* Pull out "group view helper" to de-duplicate common logic among group-related views.
* Pull out new base class for view used to add accounts to groups or the block list.

// FREEBIE
9 years ago
Matthew Chen e36b5a4602 Improve group members view.
// FREEBIE
9 years ago
Matthew Chen bfd29cd994 Send contacts sync messages whenever the contacts change.
// FREEBIE
9 years ago
Matthew Chen dcb7eef3fc Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 192264e45b Respond to CR.
// FREEBIE
9 years ago
Matthew Chen adfbcc3e27 Update views that show contacts to reflect updates.
// FREEBIE
9 years ago
Michael Kirk 647b2b37e9 WIP: WebRTC calling
* Ensure NotificationsManager has dependencies
    Otherwise it's easy to mess up the order of the required dependencies.
* move AccountManager into Environment, it's heavy to construct

// FREEBIE
9 years ago
Michael Kirk 243ff190bc Fix crash in group listing / new group views
The broken code addressed in 8211d4584f
was duplicated a couple of places. This commit ferrets out the rest of
them and centralizes the logic in the ContactsManager.

// FREEBIE
9 years ago
Michael Kirk 103f0450a1 Build avatar from contact initials even if they don't have a phone
number

The invite contact picker was rendering the "#" avatar for contacts who
had a name, but no phone number.

In some ways this approach is dumber. But since we have "surprising"
logic to set the contacts firstName to a phone number or maybe a company
name when contacts are built from ABContacts, this approach is more on
the level with the existing assumptions of what could be in that field
(which is to say, pretty much anything).

// FREEBIE
9 years ago
Michael Kirk 8211d4584f Don't explode when missing first name
// FREEBIE
9 years ago
Russ Shanahan e7126f8c60 Less confusing "#" avatar for unknown Contact instead of "+"
For consistency with the Android and Desktop client behavior.

* Show a placeholder avatar when no image, initials (#1512)

  If all we know about the user is their phone number, their avatar image
  is rendered as a placeholder. Previously, it would render the first few
  characters of their phone number as if they were initials (eg. "+")

* Rename, extend OWSContactsManager methods (#1512)

  Rename from: nameStringForPhoneIdentifier
           to: displayNameForPhoneIdentifier

  Also, add:
  - (BOOL)nameExistsForPhoneIdentifier:(NSString *)identifier;

  Which reports whether there's any "name" for a contact.

* Remove unused typedefs

  These aren't used in the project anymore, and they were causing
  compiling warnings due to a lack of nullability indication.

* Resolve some OWSContactsManager nullability warnings

  Did a pass through all of the existing nullability warnings in
  OWSContactsManager. Tried to pick descriptors that best reflected the
  behavior of the methods.

// FREEBIE
9 years ago
Michael Kirk 06ca3c9290 Mail and Message invite flow
* Spruce up compose contact-picker
- Fix random sorting for contacts missing first or last name
- Add Avatar to contact picker
- de-dupe contacts

Better copy for INVALID_MESSAGE error.

// FREEBIE
9 years ago
Michael Kirk bed5250397 remove redunant method
// FREEBIE
9 years ago
Michael Kirk a181d218cf extract and test contact searcher
// FREEBIE
9 years ago
Michael Kirk 26f5418500 Remove distinction between TS and RP users
* Ensure we're always showing call button for non-group threads.
* search phone strings directly rather than precomputing field

// FREEBIE
9 years ago
Michael Kirk 62633ff7f4 remove unused code
// FREEBIE

dot notation is only for property access

// FREEBIE

remove unused code
9 years ago
Michael Kirk 1e0f0157c1 namespace ContactsManager -> OWSContactsManager
rename test class ContactManager->OWSContact_s_Manager
update docs

// FREEBIE
9 years ago