Commit graph

113 commits

Author SHA1 Message Date
Matthew Chen 35879046c3 Remove OpenSSL pod.
// FREEBIE
2017-06-14 09:15:45 -04:00
Matthew Chen 1057e40008 Fix OpenSSL cocoapod.
// FREEBIE
2017-06-13 18:33:57 -04:00
Matthew Chen b0005ea932 Respond to CR.
// FREEBIE
2017-05-23 09:33:31 -04:00
Matthew Chen 2e36f41838 Add support for manually activating censorship circumvention.
// FREEBIE
2017-05-22 20:34:25 -04:00
Michael Kirk 557488bc7d return iOS8 support in project files
// FREEBIE
2017-05-18 10:05:39 -04:00
Michael Kirk da58eb18ad partial revert of previous pod update
// FREEBIE
2017-05-12 15:52:38 -04:00
Matthew Chen 67c3bca913 [SSK] Move filename property to TSAttachment.
// FREEBIE
2017-05-12 09:51:36 -04:00
Matthew Chen 96e155c75e Rework appearance of voice messages and audio attachments.
// FREEBIE
2017-05-12 09:46:54 -04:00
Matthew Chen c2cdeb3bcd Remove SCWaveformView.
// FREEBIE
2017-05-03 17:05:27 -04:00
Matthew Chen cb293f286a [SSK] Add SignalAccount class, Extract labels for phone numbers.
// FREEBIE
2017-05-02 12:40:51 -04:00
Matthew Chen 42768294ee Extract labels for phone numbers.
// FREEBIE
2017-05-02 09:28:50 -04:00
Michael Kirk 5d604a796c [JSQMVC] Fixes "floating" edit menu for narrow media items
previously, edit menu was only positioned correctly for text bubbles,
and centered for media bubbles.

It wasn't that noticable for images/videos since those usually extended
to the middle of the conversation view, but with narrower media bubbles
(like arbitrary attachments) this became a bigger problem.

// FREEBIE
2017-04-12 10:24:29 -04:00
Matthew Chen 5250d327e4 [SSK] Remove RedPhone code.
// FREEBIE
2017-03-29 12:36:20 -04:00
Matthew Chen faf75e25c2 [SSK] Remove RedPhone code.
// FREEBIE
2017-03-29 12:30:31 -04:00
Matthew Chen 74f939b520 Remove RedPhone code.
// FREEBIE
2017-03-29 12:26:08 -04:00
Matthew Chen 9db33a9651 Remove RedPhone code.
// FREEBIE
2017-03-29 12:25:33 -04:00
Michael Kirk f29ca7851f Move PureLayout back to cocoapods for now
This introduced some unexpected crashes related to frameworks in Swift.

// FREEBIE
2017-03-23 21:48:59 -04:00
Michael Kirk 0d52a18458 Update dependencies
Also moved PureLayout to Carthage for faster incremental builds

// FREEBIE
2017-03-23 20:35:21 -04:00
Michael Kirk 8adba61b37 intern Pastelog back into Signal.
Not worth the cocaopods/framework/project mgmt machinery for making
changes to 1 class.

// FREEBIE
2017-03-17 17:37:32 -04:00
Michael Kirk 99c982fbb2 change ZXing to framework for faster incremental compiles in xcode
// FREEBIE
2017-03-16 12:04:45 -04:00
Michael Kirk 8f7e0a8a5b [SSK] Fix crash-on-launch for older installs
populating the de-duping index assumes authorId is always set for
incoming messages, but this was not always the case.

// FREEBIE
2017-03-03 15:33:28 -05:00
Matthew Chen c35c118dcd Respond to CR.
// FREEBIE
2017-02-24 23:02:17 -05:00
Michael Kirk be9725c7ce [SSK] lost changes needed to fixup 'charlesmchen/webrtcByDefault'
Previous commit referenced no-longer existent SHA

// FREEBIE
2017-02-22 15:52:29 -08: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 c0f52d1de9 [SSK] Mark "attempting out" messages as "unsent" on app launch
// FREEBIE
2017-02-13 17:21:58 -05:00
Matthew Chen 21e55d3be5 Mark "attempting out" messages as "unsent" on app launch.
// FREEBIE
2017-02-13 17:16:32 -05:00
Matthew Chen fcf1d7af97 Respond to CR.
// FREEBIE
2017-02-13 16:07:33 -05:00
Matthew Chen 2b64d94bad Update SignalServiceKit pod.
// FREEBIE
2017-02-13 15:59:07 -05:00
Matthew Chen e798964308 Update SignalServiceKit pod.
// FREEBIE
2017-02-08 17:22:49 -05:00
Matthew Chen 06a775b41a Improve the call status messages in conversation view.
// FREEBIE
2017-02-08 16:47:09 -05:00
Michael Kirk 947d345837 SSK update to include latest master (which now includes CallKit)
// FREEBIE
2017-02-02 17:13:53 -05:00
Michael Kirk d3e6747499 Merge remote-tracking branch 'origin/master' into feature/webrtc 2017-01-25 12:13:37 -05:00
Michael Kirk 4e72ab92c8 Prevent session corruption by using a single serial queue for encrypt and decrypt
coordinate SignalProtocol encryption/decryption on a single serial
queue. Previously message sending encrypted on the sending thread, while
message receiving decrypted on the main thread.

// FREEBIE
2017-01-25 11:00:21 -05:00
Matthew Chen 4a65a88512 Rework new call view.
// FREEBIE
2017-01-12 15:55:14 -05:00
Matthew Chen 26a6e391b3 Fix pod.
// FREEBIE
2017-01-12 10:13:47 -05:00
Michael Kirk a17873291b Fix up tests
// FREEBIE
2017-01-12 09:56:09 -05:00
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
2017-01-12 09:56:05 -05:00
Matthew Chen 2dac6c888a Update SignalServiceKit pod.
* Fetch messages when app becomes active.
2017-01-06 13:28:41 -05:00
Michael Kirk ddba843d44 Censorship circumvention in Egypt and UAE
* domain fronting
* non-websocket message fetching

// FREEBIE
2016-12-21 10:04:23 -06:00
Michael Kirk c4baf5a625 [SSK] Avoid bricking signal if a key is temporarily unreadable
// FREEBIE
2016-12-16 14:51:00 -06:00
Michael Kirk 32a05dabce [SPK] Update SignalProtocolKit (AxolotlKit) (#1549)
// FREEBIE
2016-12-16 08:47:24 -06:00
Josh Schneier 896dd026d2 Remove DJWActionSheet 2016-11-29 10:20:56 -05:00
Michael Kirk 7120ca1192 Make sure we're laying out contact cell after assigning avatar
// FREEBIE
2016-11-22 16:55:07 -05:00
Michael Kirk 0aa226f3d1 [SSK] If a new message type is introduced, ignore it
rather than printing an empty bubble.

// FREEBIE
2016-11-22 12:18:05 -05:00
Michael Kirk de7752ab20 Revert 50abf4d02d
The real problem was addressed (or, worked around) here:
1eb234e8ba

// FREEBIE
2016-11-17 18:22:02 -05:00
Michael Kirk ee29fff0da [SSK] Default to blocking changed Safety Numbers
// FREEBIE
2016-11-14 14:24:03 -05:00
Michael Kirk 50abf4d02d [JSQMVC] Fix crash on delete when under load.
Hack to fix https://github.com/jessesquires/JSQMessagesViewController/issues/1885

This doesn't happen often, but is reproducible under simulated message
churn (~50 insert/update/deletes randomly spaced over 10 seconds).

During performBatchUpdates, the collectionViewLayout can call
layoutAttributesForElementsInRect which can reference the just-deleted
item's
view. (The view presumably hasn't been deleted yet, but will be by the
time
performBatchUpdates is complete).

It's opaque how layoutAttributesForElementsInRect get's it's list of
views. I
can only speculate how this works based on debugging, but it seems that
the
CollectionFlowLayout keeps an internal list of item frames, which when
crashing
still contain items corresponding to the to-be-deleted items.

In any case, it seems like a bug that JSQMVC would ever attempt to get
layoutAttributes for an item which doesn't exist in the datasource.
2016-10-31 10:38:20 -04:00
Michael Kirk 689df1be37 Handle key change in group send
// FREEBIE
2016-10-26 15:22:35 -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