Commit Graph

117 Commits

Author SHA1 Message Date
Matthew Chen
0a926567ed Respond to CR.
// FREEBIE
2017-10-30 13:05:11 -04:00
Matthew Chen
9cc4521d07 Respond to CR.
// FREEBIE
2017-10-26 12:09:36 -04:00
Matthew Chen
c8c09ec19c Respond to CR.
// FREEBIE
2017-10-25 16:21:10 -04:00
Matthew Chen
7e585b72aa Fix tests broken by the JSQ rewrite.
// FREEBIE
2017-10-25 16:08:15 -04:00
Matthew Chen
3927815a35 Fix tests broken by the JSQ rewrite.
// FREEBIE
2017-10-25 16:08:15 -04:00
Michael Kirk
0f859d6b20 Merge branch 'release/2.18.0' 2017-10-16 12:27:20 -07:00
Michael Kirk
3080cb512b Compose View: collation index and group search
- Include table index for contacts
- Fix extra spacing in OWS table view
- Separate search results into contact/invite sections
- Include groups in search results when composing new message
- Compose Screen search matches on group member names

// FREEBIE
2017-10-16 12:22:02 -07:00
Matthew Chen
fb408f980c Remove JSQ.
// FREEBIE
2017-10-12 16:23:48 -04:00
Matthew Chen
183f0f1ccd Respond to CR.
// FREEBIE
2017-09-19 17:45:18 -04:00
Matthew Chen
80e5f281c6 Rename app preferences class.
// FREEBIE
2017-09-19 17:35:42 -04:00
Michael Kirk
f6720f9afa properly clear all cached avatar images
// FREEBIE
2017-08-25 12:40:19 -04:00
Michael Kirk
d6d403ce69 fix some tests
// FREEBIE
2017-08-21 16:37:16 -04:00
Matthew Chen
6ec756de44 Move profile manager to Signal.
// FREEBIE
2017-08-04 09:45:33 -04:00
Michael Kirk
2067697ed4 Add comment and clearer tests per CR
// FREEBIE
2017-07-12 16:06:35 -04:00
Michael Kirk
4f1ee98489 scrub any data that slips through to logs
Similar to phone number scrubbing, we leave a short prefix of the data
to help with debugging without leaking much data.

// FREEBIE
2017-07-12 16:06:35 -04:00
Matthew Chen
1e67bb52e3 Respond to CR.
// FREEBIE
2017-07-12 13:18:03 -04:00
Matthew Chen
2202fe70fe Fix broken tests.
// FREEBIE
2017-07-12 12:14:15 -04:00
Matthew Chen
f584c4b434 Fix broken tests.
// FREEBIE
2017-07-12 12:14:15 -04:00
Matthew Chen
0b28285deb Fix broken tests.
// FREEBIE
2017-07-12 12:14:15 -04:00
Michael Kirk
d15da6e6d4 fix bubble calculator tests
// FREEBIE
2017-07-11 16:36:50 -04:00
Michael Kirk
82180f6a97 fix compilation problems
// FREEBIE
2017-07-11 16:36:50 -04:00
Matthew Chen
2bec1db541 Respond to CR.
// FREEBIE
2017-05-02 10:54:07 -04:00
Matthew Chen
d42588b957 Improve appearance of generic attachments and the attachment approval dialog.
// FREEBIE
2017-04-26 11:39:24 -04:00
Matthew Chen
d12a582ee3 Rename source directories with a space in their name.
// FREEBIE
2017-03-31 11:58:52 -04:00
Michael Kirk
0b49037179 Remove some more RP related code
// FREEBIE
2017-03-30 11:00:28 -04:00
Matthew Chen
9db33a9651 Remove RedPhone code.
// FREEBIE
2017-03-29 12:25:33 -04:00
Michael Kirk
4b52a90c8e Fix test
//FREEBIE
2017-03-28 20:46:34 -04:00
Michael Kirk
6466e9f41f [SSK] Better logging for envelopes
Leave last 3 digits of recipientId when scrubbing logs.

This is in line with other Signal clients, and makes it possible to
trace interactions.

// FREEBIE
2017-03-23 17:10:26 -04:00
Michael Kirk
6036e20079 Filter high diacritical text, regardless of length
// FREEBIE
2017-03-22 14:59:29 -04:00
Michael Kirk
da32570dc6 [SSK] remove convoluted dependency
Moved query method to PhoneNumberUtil since that's they only caller.
Moved corresponding tests to SSK

// FREEBIE
2017-03-20 15:35:09 -04:00
Matthew Chen
a264d9aa9b Responding to CR.
// FREEBIE
2017-03-16 15:04:59 -03:00
Matthew Chen
a226a4a1b3 Respond to CR.
// FREEBIE
2017-03-16 15:04:59 -03:00
Michael Kirk
3e651fb8df filter undisplayable text
// FREEBIE
2017-03-09 17:52:19 -05:00
Michael Kirk
f37b8bac0f Fix test to use updated PeerConnectionClient API
// FREEBIE
2017-02-27 18:58:34 -05:00
Matthew Chen
f4453eb995 Enable WebRTC-based audio and video calls by default.
// FREEBIE
2017-02-21 11:10:57 -05:00
Matthew Chen
3c3f782e7d Clean up prekey usage.
// FREEBIE
2017-02-14 13:46:08 -05:00
Matthew Chen
97001018ae Clean up prekey logic.
// FREEBIE
2017-02-10 16:35:16 -05:00
Matthew Chen
ca76ec6f36 Respond to CR.
// FREEBIE
2017-02-06 09:39:14 -05:00
Matthew Chen
d9bcd563b1 Avoid possible deadlock in PeerConnectionClient.
// FREEBIE
2017-02-06 09:33:47 -05:00
Matthew Chen
b415b6142f Respond to CR, mainly by fixing broken tests.
// FREEBIE
2017-02-01 12:26:10 -05:00
Michael Kirk
dbb29d7d7e Don't require recording permissions until call is ringing.
We do this by manually managing the RTCAudioSession.
Unfortunately to do this we have to include a couple of RTC headers not
exported by the default build of WebRTC.framework (see: Libraries/WebRTC)

// FREEBIE
2017-01-17 21:49:13 -05:00
Michael Kirk
ca218ebb64 update call signatures for test fakes
// FREEBIE
2017-01-17 21:49:12 -05:00
Michael Kirk
32789bd960 Move RTCDataChannelDelegate to PeerConnectionClient
- minimizes CallService exposure to WebRTC

// FREEBIE
2017-01-17 20:14:33 -05:00
Michael Kirk
8998853aff Move RTCPeerConnectionDelegate to PeerConnectionClient
This makes sense as PeerConnectionClient is our interface to WebRTC

- Makes it easier to test PeerConnectionClient and CallService
- Allows us to shrink CallService class a bit (it's huge)

// FREEBIE
2017-01-17 20:14:33 -05:00
Daniel Rosado
76d01863db [Invite Flow] Use email address to collate contacts when no given or family name is provided
* Add tests to ContactsPicker collate contacts functionality
2016-12-09 15:12:13 -05:00
Michael Kirk
7bcf5190b4 Address some lingering emoji cropping
This is an expedient, but not good, "fix". Some messages are going to
have extra space at the bottom of the bubble. But, for the time being,
that's preferable to getting messages clipped.

// FREEBIE
2016-11-13 11:48:05 -05:00
Michael Kirk
ddf0890408 Fix crash on nil message
// FREEBIE
2016-11-04 16:32:12 -04:00
Michael Kirk
bd370f1de4 Fix cropped Chinese/Japanese messages
The earlier fix for the broken ios10 emoji font ended up breaking
messages for some users with a tall font.

Here we have a lighter touch - ensuring we don't touch messages that
don't use emoji.

Also, introduce a different approach to the fix, rather than trying to
compute the bounding rect of an appropriately attributed string, just
add an extra bit of height per line.

This approach isn't ideal for long messages with only one emoji line in
them, but the previous approach was incompatible with Chinese messages
that also contain emoji. See the new
`MesssagesBubblesSizeCalculatorTest.swift` for test cases considered.

// FREEBIE
2016-11-03 16:22:33 -04:00
Michael Kirk
1dd06a5e6c Fix registration flow / Keep push tokens in sync
* Separate registering an account from registering for push notifications
  * Allows us to complete registration without prompting user for
    notification settings.

UX Changes
----------
* Automatically keep push tokens in sync on startup.
  Push tokens *can* change, though they rarely do. It happens more often
  for people switching between appstore/beta builds.

  fixes #1174

* Show alert with registration failure
  * add secret 8-tap debug log gesture to registration flow

* Move registration to separate flow
  * don't see flash of inbox when first launching

* show useful error messages when given wrong code / no code

* remove background fetch
  We werent using it, but only relying on a side effect of it which is
  no longer necessary.

Code Changes
------------

* More registration logging.

* Install PromiseKit with carthage

  Our dependencies are not yet framework compatible, so we can't use
  cocoapods.

* Merge preferences util "category" into superclass.

  The immediate reason for this is Swift interop was assuming optional
  types were not optional, and exploding when a value was nil.

  This is clearer anyway, since we were treating it like a subclass, and
  it was the only thing using the class anyway.

* auto-genstrings now searches *.swift (and *.h, which was previously
  broken) for translateable strings.

// FREEBIE
2016-11-03 16:13:49 -04:00
Michael Kirk
33f6a95520 Explain send failures for text and media messages
fixes #1231

Motivation
----------
Previously when messages failed to send, there was no reason given.
Furthermore, when media messages failed to send there was no indication
that any attempt to send the message even occurred, nor a retry
dialog.

UX Changes
----------
- Show "uploading" status for media
- Show specific error message in retry-send dialog
- Only scroll to bottom when new message is inserted
- Show specific errors when group creation fails

Code Changes
-----------
- Updated incorrect references to TSMessageAdapters which were actually
  references to OWSMessageData
- MessageSender was extracted from SSK MessagesManager
- access MessagesManager as property
- idiomatic init/properties for Env
- log contact intersections
- Move scroll-to-bottom animation to main thread.

// FREEBIE
2016-10-26 15:22:35 -04:00