Matthew Chen
2265ae08aa
Don't start app version migrations until storage is ready.
2018-04-24 11:56:32 -04:00
Matthew Chen
e252447cfe
Clean up ahead of PR.
2018-04-24 11:29:24 -04:00
Matthew Chen
af2539f473
Rework archived conversations mode of home view.
2018-04-24 11:29:24 -04:00
Matthew Chen
eb51ea42e3
Merge remote-tracking branch 'origin/hotfix/2.23.4'
2018-04-16 17:46:24 -04:00
Matthew Chen
85cb78ddfe
Add mainWindow property to app context.
2018-04-16 17:31:00 -04:00
Matthew Chen
f7ea1678e7
Only resume lazy attachment restore in debug.
2018-04-02 15:06:48 -04:00
Matthew Chen
4602ad9014
Respond to CR.
2018-04-02 09:39:13 -04:00
Matthew Chen
d0c691bb7f
Lazy attachment restores.
2018-04-02 09:27:34 -04:00
Matthew Chen
cf0e6fce09
Add screen lock feature.
2018-03-22 15:49:31 -04:00
Matthew Chen
b62736d7d4
Add screen lock feature.
2018-03-22 15:49:31 -04:00
Michael Kirk
96e5a8f4b7
One time thumbnail generation
...
// FREEBIE
2018-03-19 14:22:03 -04:00
Matthew Chen
c84bf81cf3
Export database for backup.
2018-03-12 16:40:07 -03:00
Matthew Chen
b296cfb893
Sketch out incremental backup manager and settings view.
2018-03-12 16:40:07 -03:00
Michael Kirk
319e0d808f
Merge tag '2.21.0.14' into release/2.22.0
2018-03-08 10:40:56 -05:00
Michael Kirk
3aebaefc31
A lighter touch for the fix-call connect.
...
Though it should be fine, reloading the callUIAdapter is a bit heavy
handed. And the current implementation is prone to being broken, since
we sometimes forget not to treat callUIAdapter as a singleton.
Longer term we can find a way to either: make callUIAdapter a true
singleton or possibly make callUIAdapter a private member of something
which *is* a true singleton.
Since we only *need* it to be reloaded the one time the migration runs
(or when a user changes settings which should be rare) it makes sense to
remove it from the happy path.
// FREEBIE
2018-03-08 10:15:20 -05:00
Michael Kirk
bbdcd0c768
Call connection fixups
...
callUIAdapter is not a singleton (for better or for worse)
No one should hold a reference directly to it, but rather via the
CallService, which is a singleton
Wait a bit longer for initial call screen before terminating. Especially
first call can hit this limit.
When call *does* take too long to show, terminate properly to ensure
we're not left with a phantom call
// FREEBIE
2018-03-07 18:09:07 -05:00
Michael Kirk
2462ea0a3e
Merge tag '2.21.0.10' into release/2.22.0
2018-03-07 07:10:41 -05:00
Michael Kirk
c7871b28d4
Make sure any new call migration settings take effect on first launch
...
// FREEBIE
2018-03-06 23:00:56 -05:00
Michael Kirk
8dfc584c2c
Try to keep-alive registration lock w/ bg fetch
...
If a user hasn't launched or received a message on Signal in a week,
they could inadvertently lose their registration lock.
// FREEBIE
2018-03-06 16:55:35 -05:00
Matthew Chen
d6f4db1523
Rename TSStorageManager to OWSPrimaryStorage.
2018-03-06 17:12:13 -03:00
Michael Kirk
1d3831eccd
Registration Lock reminder view
...
Also fixed: Don't lose PIN across registrations
// FREEBIE
2018-03-05 09:53:09 -05:00
Matthew Chen
7b84afaaf1
Integrate with logs service.
2018-03-02 17:44:14 -05:00
Matthew Chen
4bbf0d9e3d
Integrate with logs service.
2018-03-02 17:44:14 -05:00
Matthew Chen
06d16bdec5
Revert "Revert "Merge branch 'charlesmchen/debugLogs' into hotfix/2.20.1""
...
This reverts commit b1dd325ce8
.
2018-03-02 17:44:14 -05:00
Matthew Chen
5235f97953
Use background task while migrating.
2018-02-22 16:21:48 -05:00
Matthew Chen
a4855acf44
Don't clear legacy db password until conversion completes.
2018-02-21 16:20:13 -05:00
Matthew Chen
d91507d897
Improve the robustness of the migration logic.
2018-02-20 17:37:14 -05:00
Matthew Chen
14122dab54
Fix the storage failure alert.
2018-02-20 13:46:37 -05:00
Matthew Chen
6935298f6f
Improve handling of the not migrated case.
2018-02-16 15:19:24 -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
Matthew Chen
44cbf142a1
Respond to CR.
2018-02-12 22:41:52 -05:00
Matthew Chen
3e8b08e19b
Defer handling app delegate hooks until app is ready.
2018-02-12 22:37:37 -05:00
Matthew Chen
9c8178653d
Revisit TODOs in the SAE work.
2018-02-12 22:33:26 -05:00
Matthew Chen
7c199faf8f
Respond to CR.
2018-02-12 22:26:35 -05:00
Matthew Chen
98843cd45c
Let users submit debug logs if app launch fails.
2018-02-12 22:25:23 -05: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
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
f9f60bc14f
Ensure app delegate hooks are ignored until app is ready.
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
02a972c9dc
Improve logging in database conversion; disable orphan cleanup.
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
5d422e03d1
Add support for key specs.
2018-01-25 11:00:38 -05:00
Michael Kirk
c6cc497eaf
Don't migrate database until verifying keychain is accessible
...
// FREEBIE
2018-01-25 11:00:38 -05:00
Matthew Chen
dc73342573
Convert databases if necessary.
2018-01-25 11:00:38 -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
fe67cd924c
Rework database view registration.
2017-12-19 11:42:06 -05:00
Matthew Chen
9258b0883e
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
f9ce34f553
Improve background task logic.
2017-12-19 11:05:17 -05:00
Matthew Chen
bc7f4623cc
Update YapDatabase.
2017-12-15 11:11:04 -05:00
Michael Kirk
3affb07a11
post-merge formatting fixup
...
// FREEBIE
2017-12-14 11:43:27 -05:00
Michael Kirk
16448e2a0b
Merge tag '2.19.3.0'
2017-12-14 11:42:57 -05:00
Michael Kirk
42dc872c9a
use dedicated read connection to pre-populate cache
...
// FREEBIE
2017-12-13 19:08:47 -05:00
Michael Kirk
7ea4b85a2a
Persist signal accounts (and their embedded Contact)
...
// FREEBIE
2017-12-13 17:31:36 -05:00
Matthew Chen
911c4d380b
Rework thread safety in profile manager.
2017-12-11 12:28:28 -05:00
Michael Kirk
3ecf0a7537
Cancelling dismisses share extension, remove "import with signal"
...
Usinig the new ShareViewDelegate to dismiss the share extension, might
have broken the "import with signal" functionality. But because we
want to remove it anyway, I've done that now, rather than fix it up.
// FREEBIE
2017-12-07 17:12:03 -05:00
Matthew Chen
7a1e47cd26
Add asserts around Swift singletons.
2017-12-07 13:57:45 -05:00
Matthew Chen
8312614cf7
Respond to CR.
2017-12-07 13:53:13 -05:00
Matthew Chen
99f0b9d3e8
Fix issues around statics.
2017-12-07 12:34:02 -05:00
Matthew Chen
848f055da1
Add SAE error views.
2017-12-06 21:38:53 -05:00
Matthew Chen
310cf1330d
Continue conversion of app setup.
2017-12-06 10:38:57 -05:00
Matthew Chen
8d014f057e
Respond to CR.
2017-12-05 13:44:25 -05:00
Matthew Chen
f5353fc7d5
Clean up ahead of PR.
2017-12-05 11:35:43 -05:00
Matthew Chen
9da165b846
Continue conversion of app setup.
2017-12-05 11:19:11 -05:00
Matthew Chen
2eba371656
Clean up ahead of PR.
2017-12-05 10:29:29 -05:00
Matthew Chen
b4e8df79da
Migrate environment to SignalMessaging.
2017-12-05 10:29:29 -05:00
Matthew Chen
c817aa51b3
Migrate environment to SignalMessaging.
2017-12-05 10:28:46 -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
Matthew Chen
66fae5bd54
Clean up ahead of PR.
2017-11-30 10:07:39 -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
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
Michael Kirk
2c4cf96515
Some proof of framework integration in the sample share extension
...
// FREEBIE
2017-11-29 13:58:27 -08:00
Michael Kirk
de028404bb
Shared framework between app and extension
...
// FREEBIE
2017-11-29 13:58:27 -08:00
Matthew Chen
a6bfc0a60e
Fix build warnings from XCode 9.
2017-11-09 02:52:44 -05:00
Matthew Chen
204902c111
Respond to CR.
...
// FREEBIE
2017-11-06 12:50:20 -05:00
Matthew Chen
03241128f6
Respond to CR.
...
// FREEBIE
2017-11-06 12:37:15 -05:00
Matthew Chen
1ea413ad48
Be more defensive about handling local notifications.
...
// FREEBIE
2017-11-06 11:14:31 -05:00
Matthew Chen
5af6b6f213
Respond to CR.
...
// FREEBIE
2017-10-26 11:53:35 -04:00
Michael Kirk
c5244e175e
orphan cleanup shouldn't happen until DB is registered
...
// FREEBIE
2017-10-21 18:16:52 -07:00
Michael Kirk
6a65ee6def
Pull to refresh on homeview fetches messages.
...
This is useful when you're using censorship circumvention and unable to
receive push notifications.
// FREEBIE
2017-10-16 12:25:07 -07:00
Michael Kirk
9a7e3cb9d8
Register for manual message fetching when unable to obtain push tokens
...
// FREEBIE
2017-10-12 12:02:22 -04:00
Michael Kirk
df15c904bc
Rework push registration
...
== Account Registration ==
Not complete until push tokens are uploaded
== Remote Notifications Registration ==
Extracted from PushManager
- wait for notification-settings registration to complete before
requesting push tokens, otherwise it's possible token requests will
be ignored.
- Less state required for push notification callbacks, specifically, we
no longer need to ensure we've created a promise before the
registration delegate methods get called.
- no more TOCFuture in Signal-iOS (still in SSK for now). It's not in
cases of inexplicable behavior - one a recently, push notification
premature free, in redphone, and more popular use, and I've seen two
futures inexplicably being nil. Instead, let's consolidate around
PromiseKit for popularly used, maintained, strongly-typed futures.
- separate logic for registering for vanilla push/voip notifications
(few dependencies) from responding to UILocalNotifications (lots of
dependencies). Ultimately I'd like to consolidate the remaining
UILocalNotifications logic with the existing NotificationsManager
== Misc ==
more debug logging
more uniform logging
remove stale logic around newly registered user
// FREEBIE
2017-10-12 12:02:22 -04:00
Michael Kirk
b5258be9b5
respond to code review
...
// FREEBIE
2017-10-10 11:33:40 -04:00
Michael Kirk
876521f4c3
Fetch messages sooner when launched from background
...
The only reason a notification wakes/launches the app is to fetch
messages.
However, upon launching, especially if the app had been killed, it can
take a second or two before being notified of the notification that woke
us. Rather than wait, just fetch messages ASAP.
// FREEBIE
2017-10-10 11:33:40 -04:00
Michael Kirk
c7cfe188ee
Sync push tokens on background launch as well
...
// FREEBIE
2017-10-10 11:33:40 -04:00
Matthew Chen
10c00501fd
Fix the "is contact" test.
...
// FREEBIE
2017-10-02 17:38:54 -04:00
Matthew Chen
f001e8c225
Respond to CR.
...
// FREEBIE
2017-09-25 17:22:27 -04:00
Matthew Chen
b4312a5619
Merge remote-tracking branch 'origin/hotfix/2.16.1'
2017-09-24 20:49:13 -04:00