Commit graph

413 commits

Author SHA1 Message Date
Michael Kirk d591fb7f2c Fix some compiler warnings 2018-07-17 19:22:58 -06:00
Matthew Chen 158aa3abc4 Tweak system messages; incomplete vs. missed calls. 2018-07-11 15:34:16 -04:00
Michael Kirk c40c2a632b Merge tag '2.27.1.4' 2018-07-06 18:19:43 -06:00
Michael Kirk 3eb7e9271e Fix: second reply from lockscreen doesn't send
// FREEBIE
2018-07-06 17:56:05 -06:00
Michael Kirk 104e63ded9 remove appearance juggling 2018-06-29 16:27:37 -06:00
Michael Kirk cd298c72c3 notify when receiving voip before first unlock
// FREEBIE
2018-06-04 12:00:45 -06:00
Matthew Chen 4d8c764789 Migrate to Swift 4. 2018-05-30 15:05:02 -04:00
Michael Kirk fe62a6ac92 CNContactController needs to be presented in a navcontroller with a
translucent navbar.

In cases where we were presenting modally, we can easily modify the
modal to have a translucent navbar.

In the one place we were pushing onto the SignalsNavigationController,
rather than modifying the SNC.isTranslucent and having to clean it up,
I've opted to convert to a modal presentation.

// FREEBIE
2018-05-24 12:28:20 -04:00
Michael Kirk 4f80100234 Tapping on status bar returns to call
We want to render the return-to-call banner behind the status bar, so
the user can see the system clock, etc.

But normally, doing so would mean we wouldn't receive touches in the top
20px of the screen.

// FREEBIE
2018-05-24 12:28:20 -04:00
Michael Kirk 778e11c2c3 cleanup ahead of PR
// FREEBIE
2018-05-24 12:28:20 -04:00
Michael Kirk 319a6ff765 fixup behavior on iOS10 2018-05-24 12:28:20 -04:00
Michael Kirk 29d08545e2 Use OWSNavigationController instead of UINavigationController
- [ ] document picker
- [ ] camera picker
- [ ] image picker
- [ ] restore "confirm to go back" behavior (interactive pop gesture?)

// FREEBIE
2018-05-24 12:28:20 -04:00
Michael Kirk 3a9391f4fb notes on what didn't work 2018-05-24 12:28:20 -04:00
Matthew Chen 6b643a0c1b Avoid spurious badge animations. 2018-05-11 20:20:16 -04:00
Matthew Chen 81a40909f4 Respond to CR. 2018-05-11 15:45:38 -04:00
Matthew Chen 9936003637 Respond to CR. 2018-05-11 15:37:13 -04:00
Matthew Chen 9a4889c4fb Simplify debug notifications. 2018-05-11 15:34:57 -04:00
Matthew Chen 1a170ba484 Simplify debug notifications. 2018-05-11 15:34:57 -04:00
Matthew Chen 4a4882ebe5 Add debug notification. 2018-05-10 17:11:42 -04:00
Matthew Chen 940161e62f Don't process multiple local notifications. 2018-05-10 16:35:46 -04:00
Michael Kirk f782ea97df Use loading screen whenever launch is slow.
Previously we had to manually account for each version that had a DB
change.

// FREEBIE
2018-05-03 09:11:51 -04:00
Matthew Chen 3233554683 Show database upgrade warning while launching v2.25 or later. 2018-04-25 15:12:06 -04:00
Matthew Chen d7ae6fbbf4 Respond to CR. 2018-04-25 09:56:53 -04:00
Matthew Chen 7f23dfa258 Respond to CR. 2018-04-24 13:15:11 -04:00
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