Commit Graph

281 Commits (f9ce34f553473852d8a78e79451a51d9cbe37a4e)

Author SHA1 Message Date
Matthew Chen 65732af3da New users opt-out of read receipts; legacy users opt-in.
// FREEBIE
8 years ago
Matthew Chen 80e5f281c6 Rename app preferences class.
// FREEBIE
8 years ago
Matthew Chen 3367292ba0 Merge branch 'hotfix/2.16.1' 8 years ago
Matthew Chen f92b221e6b Startup logging.
// FREEBIE
8 years ago
Matthew Chen 70602e3bca Startup logging.
// FREEBIE
8 years ago
Matthew Chen 400f536e37 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen e222b9df68 Normalize conversation presentation logic.
// FREEBIE
8 years ago
Matthew Chen b6d782046a Normalize conversation presentation logic.
// FREEBIE
8 years ago
Matthew Chen 0b772b3a37 Move post-registration work from view to app delegate.
// FREEBIE
8 years ago
Matthew Chen ab00342d67 Add modal activity indicator view.
// FREEBIE
8 years ago
Matthew Chen 9dfebb2d4b Apply OWSFail() in more places.
// FREEBIE
8 years ago
Matthew Chen c21a7673c8 Rework preservation of attachment filenames.
// FREEBIE
8 years ago
Matthew Chen 69816cdf0e Convert DataSource to Objective-C.
// FREEBIE
8 years ago
Matthew Chen 2282733fa9 Add data source class.
// FREEBIE
8 years ago
Matthew Chen 948da2afbb Merge remote-tracking branch 'origin/release/2.16.0' 8 years ago
Michael Kirk 04bf548a7b Fix one-time crash when opening thread without having a local profile
// FREEBIE
8 years ago
Matthew Chen 928525c31e Rename home view.
// FREEBIE
8 years ago
Matthew Chen 3c90c3361a Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 71d7490e35 Re-sync local profile state with service if necessary.
// FREEBIE
8 years ago
Michael Kirk 1f3d2d1ed6 Send any profile key in contact sync
// FREEBIE
8 years ago
Michael Kirk b579ea5915 Use profile name when building avatar if contact name is unavailable
// FREEBIE
8 years ago
Matthew Chen 98eb4693c5 Rework the contact offers.
// FREEBIE
8 years ago
Matthew Chen 08347478a2 Implement alternative approach to veto-able back buttons.
// FREEBIE
8 years ago
Matthew Chen d476bc286d * Add debug UI tools for clearing and logging the profile whitelist.
* Auto-add new contact threads to profile whitelist when local user sends first message to that thread.
* Ensure dynamic interactions have a non-negative timestamp even if the conversation was empty.
* Only call updateMessageMappingRangeOptions _after_ beginLongLivedReadTransaction and updating messageMappings.
* Improve documentation around how to avoid corrupt mappings in conversation view.
* Fix edge cases around large initial range sizes.
* Always treat dynamic interactions as read.
* Rebuild the “unseen” database views to remove dynamic interactions (see above).

// FREEBIE
8 years ago
Michael Kirk 2e83643327 Don't consider registration complete until user registers their push
notification tokens.

// FREEBIE
8 years ago
Michael Kirk ed4de7e8af Simplify code / pre-cache localNumber
Now that localNumber is read from a dedicated dbConnection we don't have
to worry about it blocking.

// FREEBIE
8 years ago
Matthew Chen 6ec756de44 Move profile manager to Signal.
// FREEBIE
8 years ago
Matthew Chen a3b16812ec Add convenience category for YapDatabaseConnection.
// FREEBIE
8 years ago
Matthew Chen 03a4ebc4d8 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen c331788c06 Modify the profile view to update profile manager state.
// FREEBIE
8 years ago
Michael Kirk a196693425 Make sure DB views are ready before kicking processing job
// FREEBIE
8 years ago
Michael Kirk 6a5c6a9fc9 didBecomeActive kicks the processing queue
// FREEBIE
8 years ago
Matthew Chen 1890039165 Hide empty conversations in home view.
// FREEBIE
8 years ago
Matthew Chen bca736a2b7 Merge tag '2.13.4.0'
// FREEBIE
8 years ago
Matthew Chen f1807cd709 Add script to extract and gather analytics event names.
// FREEBIE
8 years ago
Matthew Chen f973af5a83 Streamline analytics properties.
// FREEBIE
8 years ago
Matthew Chen 013bf62f7c Streamline analytics properties.
// FREEBIE
8 years ago
Matthew Chen 117bca7c48 Instrument errors in app delegate.
// FREEBIE
8 years ago
Matthew Chen fdac0305cb Update analytics macros.
// FREEBIE
8 years ago
Matthew Chen 54a5b960c7 Add a reminder that you are in archive view.
// FREEBIE
8 years ago
Matthew Chen 2e727a24b5 Convert home view to programmatic layout.
// FREEBIE
8 years ago
Matthew Chen 9cbc1e6a1b Block device from sleeping while Debug UI is visible and during database upgrades.
// FREEBIE
8 years ago
Matthew Chen 9aa54cad63 Fix missing “database upgrade” label on launch screen.
// FREEBIE
8 years ago
Matthew Chen ab9770c175 Fix missing “database upgrade” label on launch screen.
// FREEBIE
8 years ago
Matthew Chen 5038744811 Fix missing “database upgrade” label on launch screen.
// FREEBIE
8 years ago
Matthew Chen 944cd7beef Show app update nag on launch if necessary.
// FREEBIE
8 years ago
Michael Kirk 8e891eb357 Merge branch 'hotfix/2.13.3.0'
// FREEBIE
8 years ago
Matthew Chen c5bf85d0b3 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen ab3aa9d0ce Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 97169f521a Move more initialization until after didBecomeActive is complete to avoid the “bad food” crash.
// FREEBIE
8 years ago
Michael Kirk 89260e843f Unregistered users should have 0 badge count
// FREEBIE
8 years ago
Michael Kirk a933fbf215 sync verifications with contact syncing
// FREEBIE
8 years ago
Matthew Chen 0738568b94 Fix upgrade launch screen.
// FREEBIE
8 years ago
Matthew Chen 5ae4b99f89 Refine observation of async registration completion.
// FREEBIE
8 years ago
Matthew Chen 9f2a2d1ee6 Don’t show “export with Signal” UI until async database view registration is complete.
// FREEBIE
8 years ago
Matthew Chen 3e38967590 Do not show database upgrade screen for unregistered users.
// FREEBIE
8 years ago
Matthew Chen f9fcbad1aa Add a “last app completed launch” version.
// FREEBIE
8 years ago
Matthew Chen cf3101226b Improve the upgrade screen.
// FREEBIE
8 years ago
Matthew Chen 16dd87a407 Use launch screen as root view controller while database views are loading.
// FREEBIE
8 years ago
Matthew Chen c7426f9343 Avoid crashing on startup due to database view creation.
* Substitute unread view for unseen view until unseen view is ready.
* Register as many views as possible async.
* Perform blocking, safe migrations before async registration of views.
* Add debug settings view for internal app stats.
* Show blocking overlay until async registration of database views is complete.
* Convert version migrations to use AppVersions.

// FREEBIE
8 years ago
Matthew Chen 05e316381b Remove “block on safety number changes” setting in preferences.
// FREEBIE
8 years ago
Matthew Chen 3a83f93099 Tweak appearance of registration views.
// FREEBIE
8 years ago
Matthew Chen d065c95270 Hide the socket status view when censorship circumvention is active.
// FREEBIE
8 years ago
Michael Kirk 2c7ccbe5db Make sure screen protection is applied before ending bg task
* code cleanup
* Prefer dispatch_async vs. dispatch_sync when possible

// FREEBIE
8 years ago
Michael Kirk bb25d2beb6 IdentityKeyStore changes
1) Always accept keys from incoming messages

2) Block sending only if it's a recent change, or if always
   block is enabled

// FREEBIE

// FREEBIE
8 years ago
Matthew Chen 2475406258 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 4680a2465a Remove registration storyboard.
// FREEBIE
8 years ago
Michael Kirk 929ba06263 Merge branch 'hotfix/2.11.4' into mkirk/fix-push-sync-job 8 years ago
Matthew Chen 19b80d1f4b Rework the “disappearing messages” logic.
// FREEBIE
8 years ago
Matthew Chen b2fba060d8 Fix edge case where screen protection is not removed.
// FREEBIE
8 years ago
Matthew Chen 2cffe78c22 Sync push tokens to service after every app upgrade.
// FREEBIE
8 years ago
Matthew Chen 73db16e068 Improve logging around push token sync.
// FREEBIE
8 years ago
Matthew Chen 2f3831e04b Respond to CR.
// FREEBIE
8 years ago
Matthew Chen dd3d63623a Pull logging into SyncPushTokensJob.
// FREEBIE
8 years ago
Matthew Chen aba29ac5ce Improve logging around SyncPushTokensJob.
// FREEBIE
8 years ago
Matthew Chen b47337c0ba Respond to CR.
// FREEBIE
8 years ago
Michael Kirk b24cf29189 don't request contacts until necessary
Most commonly this will be after hitting the "compose" button

But also we'll do it in the SignalViewController once you've received a
message.

- get rid blocking contacts nag
- use Contacts framework simplifies logic
- remove dead AB code

// FREEBIE
8 years ago
Matthew Chen 61f59067b6 Improve contact-related views.
* Add support for contacts with more than one Signal account using ContactAccount class.
* Use OWSTableViewController in contact-related views.
* Let users add non-contacts to groups.
* Improve the "new group" and "edit group" views.
* Add utility methods for displaying alerts.
* Warn users before discarding unsaved changes in "edit group" view.
* Pull out "contact view helper" to de-duplicate common logic among contact-related views.
* Pull out "group view helper" to de-duplicate common logic among group-related views.
* Pull out new base class for view used to add accounts to groups or the block list.

// FREEBIE
8 years ago
Michael Kirk 48971478dd Allow importing of any file that's not a directory
// FREEBIE
8 years ago
Michael Kirk 1b61c3b0ce fix attachment-import error alert presentation
// FREEBIE
8 years ago
Matthew Chen 2cc3232c01 Fix presentation of “open with Signal” errors.
// FREEBIE
8 years ago
Matthew Chen c08e6e0fc6 Ignore “open with Signal” if there is an ongoing call.
// FREEBIE
8 years ago
Matthew Chen 791fee347b Improve errors in the 'export with Signal' feature.
// FREEBIE
8 years ago
Matthew Chen 6e36ce97a5 Let users share imported files to a thread or contact of their choice.
// FREEBIE
8 years ago
Matthew Chen 3c7574a908 Register Signal to handle a wide variety of common document types.
// FREEBIE
8 years ago
Matthew Chen bfd29cd994 Send contacts sync messages whenever the contacts change.
// FREEBIE
8 years ago
Michael Kirk fa5bb7ad9d Make it easier to track local users registration ID in debug log
// FREEBIE
8 years ago
Matthew Chen 625a448901 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen effa885614 Rework socket manager.
// FREEBIE
8 years ago
Michael Kirk 398ee22f50 [SSK] rename cipher queue to sessionStoreQueue
// FREEBIE
8 years ago
Michael Kirk 7f239c8040 [SSK] + Enforce singleton access for MessagesManager and MessageSender
// FREEBIE
8 years ago
Michael Kirk 0b49037179 Remove some more RP related code
// FREEBIE
8 years ago
Matthew Chen 3cb02fcd60 Improve handling of incomplete and failed attachment downloads.
// FREEBIE
8 years ago
Matthew Chen 9db33a9651 Remove RedPhone code.
// FREEBIE
8 years ago
Michael Kirk 8adba61b37 intern Pastelog back into Signal.
Not worth the cocaopods/framework/project mgmt machinery for making
changes to 1 class.

// FREEBIE
8 years ago
Matthew Chen 15e14a9b5c Convert "is logging enabled" methods to class methods so that they can safely be used before Environment has been initialized.
// FREEBIE
8 years ago
Matthew Chen 01d2582074 Add and honor the “CallKit Privacy” setting.
// FREEBIE
8 years ago
Matthew Chen 165e5238cf Simplify the prekey check on app launch and activation.
// FREEBIE
8 years ago
Matthew Chen 2fb89ae8b4 Merge remote-tracking branch 'origin/release/2.7.1'
// FREEBIE
8 years ago
Matthew Chen c7d08fba46 Avoid checking prekeys twice on app launch.
// FREEBIE
8 years ago