Michael Kirk
b79244affa
Don't enqueue sender read receipts from self-sent messages
...
These messages are always already read.
Reminder, there are two types of read receipts:
1. One informs our linked devices that we've read a message on another
device.
2. The other informs the sender that we've read their message.
This change is about the latter, we'll continue to send the former to
ourself.
The proximate cause for this change was a failing assert in
OWSMessageSender#handleSendToMyself:(TSOutgoingMessage *)outgoingMessage
The assert was failing because we were sending a message to ourself
which had no body or attachment (the sender-read receipt). Rather than
filtering them out from the message sender, we should never ask the
message sender to do nonsense work (send a senderReadReceipt to ourself)
// FREEBIE
2018-02-23 13:50:40 -05:00
Matthew Chen
10ca369da8
Respond to CR.
2018-02-22 16:12:39 -05:00
Matthew Chen
6006d22870
Improve handling of attachments with captions.
2018-02-22 16:03:00 -05:00
Matthew Chen
8576da791c
Improve handling of attachments with captions.
2018-02-22 16:03:00 -05:00
Matthew Chen
96b5f22799
Improve handling of attachments with captions.
2018-02-22 16:03:00 -05:00
Matthew Chen
4e1e232825
Flush writes from other processes.
2018-02-22 11:46:08 -05:00
Matthew Chen
1109158b5b
Add comment.
2018-02-21 16:18:10 -05:00
Matthew Chen
70ba1720d9
Filter unicode ordering letters.
2018-02-21 16:18:10 -05:00
Matthew Chen
3bb802189c
Use background tasks during db transactions.
2018-02-21 16:10:55 -05:00
Matthew Chen
706006539f
Improve the robustness of the migration logic.
2018-02-20 20:16:12 -05:00
Matthew Chen
d91507d897
Improve the robustness of the migration logic.
2018-02-20 17:37:14 -05:00
Matthew Chen
9295a56309
Elaborate logging around storage migration.
2018-02-20 16:25:15 -05:00
Matthew Chen
1a0f4bf928
Improve logging around network activity.
2018-02-20 10:07:09 -05:00
Michael Kirk
033505afd7
Remove slow file protection updates from launch path
...
To avoid blocking launch, file protection is now updated async for most
moved files. Out of paranoia, the database files are also update
redundantly on a sync code path.
It's still critical that we update permissions recursively for two
reasons:
1. Updating a containing directories FileProtection does not affect
existing files in that directory.
2. Because we've changed the containers default file protection level
(from unspecified to NSFileProtectionComplete), some existing files
will have there file protection updated upon launching Signal 2.20.
It's not clear to me which files this affects, and I haven't found
any relevant documentation, but from observation, it seems to affect
any top-level files in the container. Regardless, we're now doing the
right thing: after launching 2.20, ensure all file permissions are
what we expect.
Also removed no-op file protection on legacy db files. They've already
been moved by the time this method runs in AppSetup.
// FREEBIE
2018-02-18 16:24:29 -05:00
Matthew Chen
283fe17649
Apply Indic script fixes to SAE and master.
2018-02-16 16:50:14 -05:00
Matthew Chen
90b8ee4849
Merge remote-tracking branch 'origin/hotfix/2.19.7'
2018-02-16 11:37:29 -05:00
Matthew Chen
77bf0b66f5
Fix attachment MIME types.
2018-02-16 11:34:08 -05:00
Matthew Chen
d648a258d1
Merge branch 'hotfix/2.19.7'
2018-02-16 10:49:52 -05:00
Matthew Chen
abfd333a17
Address Indic script crash.
2018-02-16 10:19:47 -05:00
matthew chen
47aa29db25
Fix build breakage.
2018-02-15 09:38:00 -05:00
Michael Kirk
da15f245cf
CR: fix early return, assert on error
...
inline functions which were only used once
// FREEBIE
2018-02-15 06:23:47 -08:00
Michael Kirk
b4359b33dd
Fix "lose messages received while in background"
...
A moved legacy DB has the NSFileProtectionClassComplete, meaning it's
never accessible while the device is locked.
// FREEBIE
2018-02-15 06:23:47 -08:00
Matthew Chen
d13511ca7d
Exit SAE when complete.
2018-02-14 18:46:22 -05:00
Michael Kirk
5c432a2bc1
Fix crash on launch in debug.
...
OWSReadReceiptManager is not `init` on the main thread; however, because
it "schedules" it's own processing during init.
I considered dispatching to main, but since AppReadiness already *can*
resolve async if the app isn't yet ready, it should be no less safe to
also dispatch async when it's off the main thread.
// FREEBIE
2018-02-14 13:47:45 -08:00
Matthew Chen
b7958262ba
Respond to CR.
2018-02-14 16:06:47 -05:00
Matthew Chen
8930110efd
Fix glitch in batch processing of incoming messages.
2018-02-14 14:56:47 -05:00
Matthew Chen
6f28c75257
Fix glitch in batch processing of incoming messages.
2018-02-14 14:56:47 -05:00
Matthew Chen
4b62faf2f8
Aggressively nag iOS 8 users to upgrade iOS.
2018-02-14 14:15:23 -05:00
Michael Kirk
3d5f7e6bf3
Clean up logging
...
- tag all log lines for easier filtering
- use up-to-date database path
// FREEBIE
2018-02-14 09:16:42 -08:00
Michael Kirk
4d0362f9a6
Don't create redundant caption for sync'd transcripts.
...
Note: For test devices running HEAD, there may have already been some
redundant captions created for sync'd transcripts.
However the existing `TSMessage#initWithCoder:` migration will address
this for our production users, so I'm not going to bother with a second
migration just for our test devices.
// FREEBIE
2018-02-14 09:03:55 -08:00
Matthew Chen
81522e4a23
Respond to CR.
2018-02-14 10:38:08 -05:00
Matthew Chen
888bf9256f
Avoid deadlocks in message sender.
2018-02-14 10:38:08 -05:00
Matthew Chen
01496b2db8
Avoid deadlocks in message sender.
2018-02-14 10:38:08 -05:00
Matthew Chen
a19882baaa
Avoid deadlocks in message sender.
2018-02-14 10:38:08 -05:00
Collin B. Stuart
cc94573e9b
Constant time compare
...
- fix case when second part of the && conditional is skipped when data is not equal
- isEqual variable marked volatile to prevent case when it doesn't equal 0, the loop can break early since it can never be 0 again
- tested with Fastest O3 and Whole Module optimization (App Store Release)
// FREEBIE
2018-02-13 16:18:06 -08:00
Michael Kirk
ea12ed4c23
Fix dynamic type check which was too restrictive
...
// FREEBIE
2018-02-13 15:54:23 -08:00
Michael Kirk
ae2ddb25cc
CR: add assert
...
// FREEBIE
2018-02-13 09:50:01 -08:00
Michael Kirk
d6b3e191d1
Fix crash while searching when group somehow has nil members
...
This shouldn't normally happen, but seeing it on my device.
// FREEBIE
2018-02-13 09:50:01 -08:00
Michael Kirk
a23f1b86ef
nullability annotations for TSGroupModel
...
- add readonly where possible
- group members needn't be a mutable array
// FREEBIE
2018-02-13 09:50:01 -08:00
Joshua Lund
2c18a75d12
Update to the new GitHub organization name
2018-02-13 10:52:07 -05:00
Matthew Chen
ba42ac73d8
Revisit TODOs in the SAE work.
2018-02-12 22:33:26 -05:00
Matthew Chen
9c8178653d
Revisit TODOs in the SAE work.
2018-02-12 22:33:26 -05:00
Matthew Chen
b64528e817
Respond to CR.
2018-02-09 10:42:25 -05:00
Matthew Chen
78c4c00eac
Respond to CR.
2018-02-09 10:31:29 -05:00
Matthew Chen
862172072c
Respond to CR.
2018-02-09 10:31:29 -05:00
Matthew Chen
bd0f601792
Respond to CR.
2018-02-09 10:31:29 -05:00
Matthew Chen
38950ae2ed
Respond to CR.
2018-02-09 10:31:29 -05:00
Matthew Chen
6b357f9445
Respond to CR.
2018-02-09 10:31:29 -05:00
Matthew Chen
43765ef3b5
Respond to CR.
2018-02-09 10:31:29 -05:00
Matthew Chen
51cec20c50
Clean up ahead of PR.
2018-02-09 10:31:29 -05:00
Matthew Chen
7d3f79440f
Clean up ahead of PR.
2018-02-09 10:31:29 -05:00
Matthew Chen
c8e7eb903c
Add protocol context to protocol kit.
2018-02-09 10:31:29 -05:00
Matthew Chen
bbd689bfd0
Add protocol context to protocol kit.
2018-02-09 10:31:29 -05:00
Matthew Chen
d3e16583eb
Add protocol context to protocol kit.
2018-02-09 10:31:29 -05:00
Matthew Chen
074046b98e
Add protocol context to protocol kit.
2018-02-09 10:31:29 -05:00
Matthew Chen
7358f3053f
Add protocol context to protocol kit.
2018-02-09 10:31:29 -05:00
Matthew Chen
218bb15ea7
Add protocol context to protocol kit.
2018-02-09 10:31:29 -05:00
Matthew Chen
39e353503f
Add protocol context to protocol kit.
2018-02-09 10:31:29 -05:00
Matthew Chen
71782e0369
Add protocol context to protocol kit.
2018-02-09 10:31:29 -05:00
Matthew Chen
122ef91e57
Add protocol context to protocol kit.
2018-02-09 10:31:29 -05:00
Michael Kirk
a1d3073705
Cannot open settings from share extension
...
// FREEBIE
2018-02-06 18:50:36 -08:00
Matthew Chen
799949e546
Refine sync messages.
2018-02-02 10:56:16 -05:00
Matthew Chen
59ff1561f5
Set the timestamp property on data messages.
2018-02-02 10:42:56 -05:00
Matthew Chen
4218af13d5
Send image width/height for image and video attachments.
2018-02-02 10:42:56 -05:00
Matthew Chen
3a4180214f
Send image width/height for image and video attachments.
2018-02-02 10:42:56 -05:00
Matthew Chen
43ed8d9a5d
Send "disappearing messages" state for groups.
2018-02-02 10:42:56 -05:00
Matthew Chen
b16a65a4cd
Sync block state for contacts.
2018-02-02 10:42:56 -05:00
Matthew Chen
742d4cabc2
Send "disappearing messages" state for contacts.
2018-02-02 10:42:56 -05:00
Matthew Chen
2dc37d598c
Updates service proto schema to latest.
2018-02-02 10:42:56 -05:00
Michael Kirk
4f8db63fb3
Ensure keyspec is generated before DB is created
...
// FREEBIE
2018-01-31 18:05:44 -08:00
Michael Kirk
6f959ff292
CR: be more conservative about deriving key spec, clear old passphrase
...
after deriving key spec.
// FREEBIE
2018-01-31 17:22:42 -08:00
Michael Kirk
d22fc664f2
more granular key access
...
// FREEBIE
2018-01-31 16:08:03 -08:00
Michael Kirk
426c9baa16
Key material changes
...
- For new installs, generate raw key-spec rather than derive it
- Adapt to separated concerns of the key derivation migration from the unencrypted header migration
- Reduce number of places where we delete/generate keying information
- Only store relevant keying material
// FREEBIE
2018-01-31 16:08:03 -08:00
Michael Kirk
938b9c85b8
Don't crash on clean install
...
Otherwise we'll error when retrieving non-existent password.
// FREEBIE
2018-01-31 13:28:14 -08:00
Matthew Chen
4bfdef520a
Respond to CR.
2018-01-30 12:39:27 -05:00
Matthew Chen
a30170b3b2
Prefer "app is ready" flag to "storage is ready" flag.
2018-01-30 11:34:00 -05:00
Matthew Chen
be1fde905c
Don't mark app as ready until all version migrations are done.
2018-01-30 11:27:44 -05:00
Matthew Chen
963d0547ad
Clean up ahead of PR.
2018-01-30 10:31:13 -05:00
Matthew Chen
8e427111ef
Clean up ahead of PR.
2018-01-30 10:31:13 -05:00
Matthew Chen
ebbe96a5d5
Clean up ahead of PR.
2018-01-30 10:31:13 -05:00
Matthew Chen
6eddfae214
Improve post-migration testing tools.
2018-01-30 10:31:13 -05:00
matthew chen
8325c37191
Fix build breakage.
2018-01-30 10:30:28 -05:00
matthew chen
873c789132
Fix build breakage.
2018-01-30 10:30:28 -05:00
Matthew Chen
b9ec7d96e9
Register all database views asynchronously.
2018-01-30 10:30:28 -05:00
Matthew Chen
aeeef43416
Register all database views asynchronously.
2018-01-30 10:30:28 -05:00
Matthew Chen
b21f793756
Register all database views asynchronously.
2018-01-30 10:30:28 -05:00
Matthew Chen
eb180ba5c4
Register all database views asynchronously.
2018-01-30 10:30:28 -05:00
Matthew Chen
100adae245
Register all database views asynchronously.
2018-01-30 10:30:28 -05:00
Matthew Chen
5cf89a0f3d
Register all database views asynchronously.
2018-01-30 10:30:28 -05:00
Matthew Chen
7ebeeda5f9
Clean up ahead of PR.
2018-01-30 10:06:46 -05:00
Matthew Chen
6f7f1b3b08
Improve pre-migration testing tools.
2018-01-30 10:06:46 -05:00
Matthew Chen
9d101c3f53
Elaborate Debug & Internal UI.
2018-01-30 10:06:46 -05:00
Matthew Chen
b3e6278a45
Clean up ahead of PR.
2018-01-25 15:24:21 -05:00
Matthew Chen
9d909025c9
Handle UIImage shares.
2018-01-25 15:17:51 -05:00
Matthew Chen
5770a18b08
Handle text shares like URLs.
2018-01-25 13:26:10 -05:00
Matthew Chen
992e926142
Unpack oversize text messages if possible.
2018-01-25 13:26:10 -05:00
Matthew Chen
482ad08640
Handle unregistration in SAE.
2018-01-25 13:18:38 -05:00
Matthew Chen
6a81d8e5c2
Respond to CR.
2018-01-25 13:16:35 -05:00
Matthew Chen
7e769de5d2
Remove spurious warning.
2018-01-25 13:07:56 -05:00
Matthew Chen
0cc7f3e00e
Clean up ahead of PR.
2018-01-25 11:00:38 -05:00
Matthew Chen
5d422e03d1
Add support for key specs.
2018-01-25 11:00:38 -05:00
Matthew Chen
c5079ed3d7
Add support for key specs.
2018-01-25 11:00:38 -05:00
Matthew Chen
a3e77019e2
Update storage to use database salts.
2018-01-25 11:00:38 -05:00
Matthew Chen
149199138c
Clean up ahead of PR.
2018-01-25 11:00:38 -05:00
Matthew Chen
173da64bc4
Modify YapDatabase to read converted database, part 1.
2018-01-25 11:00:38 -05:00
Michael Kirk
71dc7f55d3
Copy DB setup / keying from Yap into conversion
...
// FREEBIE
2018-01-25 11:00:38 -05:00
Matthew Chen
1bff0f2b0e
Incomplete commit starting work on loading databases for conversion.
2018-01-25 11:00:38 -05:00
Matthew Chen
dc73342573
Convert databases if necessary.
2018-01-25 11:00:38 -05:00
Michael Kirk
baa312f449
Timer button with duration label
...
// FREEBIE
2018-01-22 10:28:51 -05:00
Michael Kirk
5dde17d939
Show approval/caption view in app.
...
ApprovalView/Captioning is shown for:
- Images/Videos from Library
- Images/Video from Camera
- Document Picker
- GIFs
Voice notes are intentionally not captionable.
Also, in main app, hide status bar when ApprovalView is presented
// FREEBIE
2018-01-17 18:19:48 -05:00
Michael Kirk
a423fe8a0e
WIP Merge tag '2.19.4.4'
...
- restore video playback in fullscreen
This was a large merge, so I'm opting to make some changes in separate
commits.
2018-01-16 15:25:58 -05:00
Matthew Chen
0d5b5bc44c
Respond to CR.
2018-01-12 16:49:51 -05:00
Matthew Chen
3de9a4ea55
Add debug UI actions around clearing and snapshotting session state.
2018-01-12 16:42:18 -05:00
Matthew Chen
2b528ad894
Don't use mainApplicationState in business logic.
2018-01-12 14:24:35 -05:00
Matthew Chen
fec2410ac2
Respond to CR.
2018-01-12 10:36:09 -05:00
Matthew Chen
3f2bee8383
Respond to CR.
2018-01-12 10:36:09 -05:00
Matthew Chen
d81d85c386
Respond to CR.
2018-01-12 10:36:09 -05:00
Matthew Chen
c308e25115
Skip redundant sync messages.
2018-01-12 10:36:09 -05:00
Matthew Chen
a2b67a17fd
Skip redundant sync messages.
2018-01-12 10:36:09 -05:00
Matthew Chen
41e6eaeafc
Skip redundant sync messages.
2018-01-12 10:36:09 -05:00
Matthew Chen
76676659f8
Respond to CR.
2018-01-12 10:25:04 -05:00
Matthew Chen
17907dca10
Clean up ahead of PR.
2018-01-12 10:23:54 -05:00
Matthew Chen
15b8e58324
Retain changes from session database branch.
2018-01-12 10:23:54 -05:00
Matthew Chen
59933ce1d6
Fix rebase breakage.
2018-01-11 11:15:50 -05:00
Matthew Chen
16f7317579
Complete backup restore/import.
2018-01-11 10:44:03 -05:00
Matthew Chen
272a90d269
Add import back up UI. Begin work on import backup logic.
2018-01-11 10:42:57 -05:00
Matthew Chen
980b3d25a7
Rework "export backup" UI.
2018-01-11 10:42:27 -05:00
Matthew Chen
89c7ebf74b
Respond to CR.
2018-01-10 17:55:56 -05:00
Matthew Chen
77572bdaec
Retain changes from session database branch.
2018-01-10 12:36:23 -05:00
Matthew Chen
1839b10550
Retain changes from session database branch.
2018-01-10 12:18:34 -05:00
Matthew Chen
9ac2383a2c
Retain changes from session database branch.
2018-01-10 12:18:29 -05:00
Matthew Chen
e77c3e6717
Retain changes from session database branch.
2018-01-10 12:18:23 -05:00
Michael Kirk
8d2934d86e
CR: remove unnecessary code, comments
...
// FREEBIE
2018-01-08 15:11:35 -05:00
Matthew Chen
d01ec57f0e
Fix storage reset.
2018-01-08 10:51:56 -05:00
Michael Kirk
81268012e5
Better keyboard management.
...
- fixes problems on iOS11.2 where emoji keyboard sometimes obscures text
input.
- better animation for interactive pan gesture when viewing message
details
- more intuitive swipe-to-dismiss keyboard in conversation view
- converge on one mnethod for dismissing keyboard in conversation view
- [ ] Pop keyboard, then hit attachment, dismisses keyboard, which is
fine, but the content should immediately scroll down with the
keyboard, instead it stays up, and scrolls down only once the
attachment action sheet has been dismissed.
// FREEBIE
2018-01-08 01:10:31 -05:00
sdkjfhsdkjhfsdlkjhfsdf
6e2d9c8141
identity change vs. share extension
...
// FREEBIE
2018-01-02 11:24:36 -06:00
sdkjfhsdkjhfsdlkjhfsdf
8141843f27
comment typo
2017-12-20 14:26:53 -06:00
sdkjfhsdkjhfsdlkjhfsdf
92477c78b7
cleanup before PR
2017-12-20 14:26:53 -06:00
Michael Kirk
bce18637f0
render attachments with captions
...
// FREEBIE
2017-12-20 14:26:53 -06:00
Michael Kirk
e20f44024c
WIP: Support sending attachment captions
...
Looks fine on other clients, but locally we don't display the caption.
// FREEBIE
2017-12-20 14:26:53 -06:00
Matthew Chen
05100b1143
Respond to CR.
2017-12-20 11:32:48 -05:00
Matthew Chen
6b0e3508a5
Respond to CR.
2017-12-20 11:28:07 -05:00
Matthew Chen
245304116f
Respond to CR.
2017-12-20 11:19:09 -05:00
Matthew Chen
085f8a6f64
Clean up ahead of PR.
2017-12-19 12:02:58 -05:00
Matthew Chen
70926d7f10
Clean up ahead of PR.
2017-12-19 11:50:01 -05:00
Matthew Chen
6b58b4cbde
Rework database view registration.
2017-12-19 11:42:06 -05:00
Matthew Chen
fe67cd924c
Rework database view registration.
2017-12-19 11:42:06 -05:00
Matthew Chen
f88b954ab5
Clean up TSStorageManager usage.
2017-12-19 11:41:31 -05:00
Matthew Chen
d3efb2e1c9
Clean up TSStorageManager usage.
2017-12-19 11:41:31 -05:00
Matthew Chen
d52eba739d
Clean up TSStorageManager usage.
2017-12-19 11:41:31 -05:00
Matthew Chen
85686d3144
Continue TSStorageManager refactor.
2017-12-19 11:41:30 -05:00
Matthew Chen
9a990b58e8
Respond to CR.
2017-12-19 11:38:25 -05:00
Matthew Chen
1163e76dee
Clean up ahead of PR.
2017-12-19 11:16:01 -05:00
Matthew Chen
9815bca825
Clean up ahead of PR.
2017-12-19 11:16:01 -05:00
Matthew Chen
5dcf4b3bbc
Clean up ahead of PR.
2017-12-19 11:16:01 -05:00
Matthew Chen
137fe6fb8b
Pull out OWSStorage base class for TSStorageManager.
2017-12-19 11:16:01 -05:00
Matthew Chen
a29c4ce5d6
Pull out OWSStorage base class for TSStorageManager.
2017-12-19 11:16:01 -05:00
Matthew Chen
a572285ad2
Respond to CR.
2017-12-19 11:10:12 -05:00
Matthew Chen
2cc3752901
Improve background task logic.
2017-12-19 11:05:17 -05:00
Matthew Chen
c3b6de4f83
Improve background task logic.
2017-12-19 11:05:17 -05:00
Matthew Chen
f9ce34f553
Improve background task logic.
2017-12-19 11:05:17 -05:00
Matthew Chen
5adf98788d
Use background task during message processing.
2017-12-19 11:05:17 -05:00
Matthew Chen
df8ded90b8
Use background task during attachment downloads.
2017-12-19 11:05:17 -05:00
Michael Kirk
157bf00410
Merge branch 'hotfix/2.19.3'
2017-12-17 14:02:03 -05:00
Michael Kirk
e78edcde87
Only clear cache when user pulls-to-refresh
...
// FREEBIE
2017-12-16 12:01:19 -05:00
Michael Kirk
f4e471e0db
SignalAccount cache perf improvments
...
- only persist models that have changed
- remove duplicate contact SignalAccounts
- ensure serial execution of buildAccounts
- only buildSignalAccounts when intersection succeeds
// FREEBIE
2017-12-15 16:18:36 -05:00
Matthew Chen
3643414da1
Respond to CR.
2017-12-15 11:16:07 -05:00
Matthew Chen
f57c12f34d
Update YapDatabase.
2017-12-15 11:11:04 -05:00
Matthew Chen
571840b1dc
Update YapDatabase.
2017-12-15 11:11:04 -05:00
Matthew Chen
609536fcb1
Include build version in logging.
2017-12-15 11:11:04 -05:00
Michael Kirk
16448e2a0b
Merge tag '2.19.3.0'
2017-12-14 11:42:57 -05:00
Michael Kirk
64e90d29fd
CR: extract method, more asserts and annotations
...
// FREEBIE
2017-12-14 10:52:04 -05:00
Michael Kirk
336c92ddab
remove cached display name machinery, cleanup
...
// FREEBIE
2017-12-13 17:31:36 -05:00
Michael Kirk
7ea4b85a2a
Persist signal accounts (and their embedded Contact)
...
// FREEBIE
2017-12-13 17:31:36 -05:00
Michael Kirk
56f1bf0305
cleanup
2017-12-11 19:37:49 -05:00
Matthew Chen
b9b3eb0541
Clean up ahead of PR.
2017-12-11 12:28:28 -05:00
Matthew Chen
429312523f
Simplify OWSUserProfile's "apply changes" logic using model diffing.
2017-12-11 12:28:28 -05:00
Matthew Chen
f684482c54
Don't emit "user profile changed" notifications if nothing changed.
2017-12-11 12:28:28 -05:00
Matthew Chen
97ce1a6675
Rework user profile saves; block SAE if no local user profile key.
2017-12-11 12:28:28 -05:00
Matthew Chen
791743a5f0
Fix order of operations in SAE setup.
2017-12-07 16:04:52 -05:00
Matthew Chen
f148003fb3
Convert logTag to property.
2017-12-07 14:32:22 -05:00
Matthew Chen
99f0b9d3e8
Fix issues around statics.
2017-12-07 12:34:02 -05:00
Michael Kirk
0429836ff9
CR: rename keyWindow -> keyReferenceView, split long line
...
// FREEBIE
2017-12-07 10:39:44 -05:00
Michael Kirk
eca19e5874
Reconcile MediaMessageView zoom behavior with AppExtension
...
Previously it was predicated on UIApplication.shared
// FREEBIE
2017-12-07 10:14:30 -05:00
Michael Kirk
3eceb86371
Show alert if we fail to build the attachment
...
// FREEBIE
2017-12-07 10:14:30 -05:00
Michael Kirk
89b9887f1d
Make DeviceSleepManager extension compatible
...
// FREEBIE
2017-12-07 10:13:47 -05:00
Michael Kirk
a58f1f385c
Share a photo from photos app
...
Shows the conversation picker, and sends the attachment to that
conversation.
There's still a lot TODO
-[ ] resolve JSQ dependency
-[ ] properly wait for app to load
-[ ] dismiss share extension after send is complete
-[ ] support non jpeg file types
-[ ] Fix device sleep manager
// FREEBIE
2017-12-07 10:13:06 -05:00
Matthew Chen
69e0bcd308
Fix tests.
2017-12-06 10:36:12 -05:00
Matthew Chen
f5353fc7d5
Clean up ahead of PR.
2017-12-05 11:35:43 -05:00
Matthew Chen
150f417a5e
Clean up ahead of PR.
2017-12-05 11:32:19 -05:00
Matthew Chen
022b2f93dd
Respond to CR.
2017-12-05 11:22:52 -05:00
Matthew Chen
e94ef01d72
Respond to CR.
2017-12-05 11:22:01 -05:00
Matthew Chen
9da165b846
Continue conversion of app setup.
2017-12-05 11:19:11 -05:00
Matthew Chen
ce899edf10
Respond to CR.
2017-12-05 10:44:11 -05:00
Matthew Chen
b4e8df79da
Migrate environment to SignalMessaging.
2017-12-05 10:29:29 -05:00
Matthew Chen
a16058e477
Migrate environment to SignalMessaging.
2017-12-05 10:29:29 -05:00
Matthew Chen
6d87df88aa
Migrate environment to SignalMessaging.
2017-12-05 10:29:28 -05:00
Matthew Chen
c817aa51b3
Migrate environment to SignalMessaging.
2017-12-05 10:28:46 -05:00
Michael Kirk
06f52deaf9
address some additional compiler warnings
2017-12-04 12:52:59 -05:00
Michael Kirk
23d3006fd8
remove unused code
...
// FREEBIE
2017-12-04 12:50:28 -05:00
Michael Kirk
08c324f948
Fix compiler warnings around ambiguous macro redefinition.
...
LMK if there's a better way to do this, which doesn't involve requiring
modules.
// FREEBIE
2017-12-04 12:50:28 -05:00
Michael Kirk
2af818b3ba
Make SignalMessaging AppExtension safe
...
// FREEBIE
2017-12-04 12:50:28 -05:00
Michael Kirk
0138777343
New @available syntax avoids compiler warnings
...
// FREEBIE
2017-12-04 12:50:28 -05:00
Michael Kirk
f96b7bc27c
CNContact doesn't exist before iOS9
...
// FREEBIE
2017-12-04 12:50:28 -05:00
Michael Kirk
0dec643b94
update header to match implementation atomicity
...
// FREEBIE
2017-12-04 12:50:28 -05:00
Michael Kirk
5e7ca89930
Proper function prototypes
...
// FREEBIE
2017-12-04 12:50:28 -05:00
Matthew Chen
bf21d0c0ed
Enable logging in SAE; rework log file management to include multiple log directories.
2017-12-01 12:55:47 -05:00
Michael Kirk
336d59a6ce
restore chrono timestamp
...
make SSK compatible with c++ by using non-modular imports, which
requires disambiguating our ddLog variable.
// FREEBIE
2017-11-30 09:38:39 -08:00
Matthew Chen
e7df2511a4
Register CrossProcessNotifier.
2017-11-30 10:28:05 -05:00
Matthew Chen
64762eb427
Observe YapDatabaseModifiedExternallyNotification.
2017-11-30 10:28:05 -05:00
Matthew Chen
62cf9b1dd5
Respond to CR.
2017-11-30 10:19:34 -05:00
Matthew Chen
d17ccadea2
Use AppContext to resolve share extension FIXMEs.
2017-11-30 10:12:32 -05:00
Matthew Chen
e712e8bfc4
Use AppContext to resolve share extension FIXMEs.
2017-11-30 10:12:24 -05:00
Matthew Chen
4c31d99498
Respond to CR.
2017-11-30 10:10:30 -05:00
Matthew Chen
ffa69b3502
Add application context class.
2017-11-30 10:07:20 -05:00
Matthew Chen
8d4e9b4565
Respond to CR.
2017-11-30 10:02:04 -05:00
Matthew Chen
779e89fe74
Clean up ahead of PR.
2017-11-30 09:49:01 -05:00
Matthew Chen
7429e1968c
Clean up ahead of PR.
2017-11-30 09:49:01 -05:00
Matthew Chen
edaf65223a
Migrate to shared data NSUserDefaults.
2017-11-30 09:49:01 -05:00
Matthew Chen
cd11ec5698
Add app group, share keychain. Take a first pass at file migration to shared data directory.
2017-11-30 09:49:01 -05:00
Michael Kirk
336aa13520
Avoid overzealous assert
...
// FREEBIE
2017-11-29 14:57:04 -08:00
Michael Kirk
2072359a72
add todo
2017-11-29 14:07:03 -08:00
Michael Kirk
e9796600c6
disable some asserts for now
...
// FREEBIE
2017-11-29 13:58:27 -08:00
Michael Kirk
961727814b
Move pinning certificates into App
...
// FREEBIE
2017-11-29 13:58:27 -08:00
Michael Kirk
a11d83187b
WIP: Framework-friendly - compiles but crashes on launch
...
// FREEBIE
2017-11-29 13:58:27 -08:00
Michael Kirk
c5b0f7cd01
framework compatible CocoaLumberjack import
...
With previous import style, the `LOG_ASYNC_ENABLED, LOG_LEVEL_DEF`
macros were not being defined.
@import style module includes are handled differently in ObjC++, causing
problems with out millisecondTimeStamp implementation. Rather than
address that problem head on, I simple reimplemented our millisecond
timestamp method in objective-c, removing our single ObjC++ file.
// FREEBIE
2017-11-29 13:58:27 -08:00
Michael Kirk
7894a58769
FIXME: Changes to get share extension compiling
...
This was a slash and burn approach, and breaks existing functionality.
We need to address all of these before merging.
// FREEBIE
2017-11-29 13:58:27 -08:00
Matthew Chen
829464baaf
Remove concurrency limitations from signal service.
2017-11-28 14:45:52 -05:00
Matthew Chen
ba88da60ca
Use dedicated db connection for recipient identities.
2017-11-22 09:40:39 -05:00
Matthew Chen
9b4ac4073f
Improve robustness around unknown country codes.
2017-11-21 17:48:00 -05:00
Matthew Chen
d9fcfdeeb7
Fix deadlock when responding to contacts sync messages.
2017-11-21 11:21:08 -05:00
Matthew Chen
9b197fad03
Fix deadlock when responding to contacts sync messages.
2017-11-21 11:21:08 -05:00
Matthew Chen
d8ae5841d6
Respond to CR.
...
// FREEBIE
2017-11-20 14:50:43 -05:00
Matthew Chen
b3d17ea192
Improving handling of edge cases in conversation view.
2017-11-20 14:44:10 -05:00
Matthew Chen
45c7d80d97
Improving handling of edge cases in conversation view.
2017-11-20 14:44:10 -05:00
Matthew Chen
6d4a05bbea
Improving handling of edge cases in conversation view.
2017-11-20 14:44:10 -05:00
Matthew Chen
2642f6fcea
Fix group creation.
2017-11-17 16:06:30 -05:00
Matthew Chen
21e9f57cbe
Imitate Android's behavior of delaying local notifications based on incoming sync messages.
2017-11-16 10:18:02 -05:00
Matthew Chen
2d8a7b03d0
Respond to CR.
...
// FREEBIE
2017-11-16 10:12:47 -05:00
Matthew Chen
d7b0424c75
Don't back up profile pics, attachments or gifs.
...
// FREEBIE
2017-11-16 09:59:02 -05:00
Matthew Chen
2f84e0c426
Fix calling; be explicit about which messages should be saved.
2017-11-15 20:52:07 -05:00
Matthew Chen
19ba564f80
Respond to CR.
...
// FREEBIE
2017-11-15 13:21:31 -05:00
Matthew Chen
00feb14b10
Respond to CR.
...
// FREEBIE
2017-11-15 13:15:48 -05:00
Matthew Chen
5eea0347b5
Rework the "update with..." methods to avoid re-saving deleted models.
2017-11-15 07:16:12 -05:00
Matthew Chen
94b59c326e
Rework the "update with..." methods to avoid re-saving deleted models.
2017-11-15 07:16:12 -05:00
Matthew Chen
c6160a5a1e
Rework the "update with..." methods to avoid re-saving deleted models.
2017-11-15 07:16:12 -05:00
Matthew Chen
69fa80b890
Don't resurrect zombies.
2017-11-15 07:16:12 -05:00
Matthew Chen
fce52841f9
Don't resurrect zombies.
2017-11-15 07:16:12 -05:00
Matthew Chen
5c90bc72df
Never request contacts permission if app is in the background.
2017-11-10 13:21:34 -05:00
Matthew Chen
cc0e58365e
Respond to CR.
...
// FREEBIE
2017-11-10 13:12:43 -05:00