Commit Graph

608 Commits (e793aba047c36a510870065736e7f7c09b69445a)

Author SHA1 Message Date
Michael Kirk a1d3073705 Cannot open settings from share extension
// FREEBIE
7 years ago
Matthew Chen 799949e546 Refine sync messages. 7 years ago
Matthew Chen 59ff1561f5 Set the timestamp property on data messages. 7 years ago
Matthew Chen 4218af13d5 Send image width/height for image and video attachments. 7 years ago
Matthew Chen 3a4180214f Send image width/height for image and video attachments. 7 years ago
Matthew Chen 43ed8d9a5d Send "disappearing messages" state for groups. 7 years ago
Matthew Chen b16a65a4cd Sync block state for contacts. 7 years ago
Matthew Chen 742d4cabc2 Send "disappearing messages" state for contacts. 7 years ago
Matthew Chen 2dc37d598c Updates service proto schema to latest. 7 years ago
Michael Kirk 4f8db63fb3 Ensure keyspec is generated before DB is created
// FREEBIE
7 years ago
Michael Kirk 6f959ff292 CR: be more conservative about deriving key spec, clear old passphrase
after deriving key spec.

// FREEBIE
7 years ago
Michael Kirk d22fc664f2 more granular key access
// FREEBIE
7 years ago
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
7 years ago
Michael Kirk 938b9c85b8 Don't crash on clean install
Otherwise we'll error when retrieving non-existent password.

// FREEBIE
7 years ago
Matthew Chen 4bfdef520a Respond to CR. 7 years ago
Matthew Chen a30170b3b2 Prefer "app is ready" flag to "storage is ready" flag. 7 years ago
Matthew Chen be1fde905c Don't mark app as ready until all version migrations are done. 7 years ago
Matthew Chen 963d0547ad Clean up ahead of PR. 7 years ago
Matthew Chen 8e427111ef Clean up ahead of PR. 7 years ago
Matthew Chen ebbe96a5d5 Clean up ahead of PR. 7 years ago
Matthew Chen 6eddfae214 Improve post-migration testing tools. 7 years ago
matthew chen 8325c37191 Fix build breakage. 7 years ago
matthew chen 873c789132 Fix build breakage. 7 years ago
Matthew Chen b9ec7d96e9 Register all database views asynchronously. 7 years ago
Matthew Chen aeeef43416 Register all database views asynchronously. 7 years ago
Matthew Chen b21f793756 Register all database views asynchronously. 7 years ago
Matthew Chen eb180ba5c4 Register all database views asynchronously. 7 years ago
Matthew Chen 100adae245 Register all database views asynchronously. 7 years ago
Matthew Chen 5cf89a0f3d Register all database views asynchronously. 7 years ago
Matthew Chen 7ebeeda5f9 Clean up ahead of PR. 7 years ago
Matthew Chen 6f7f1b3b08 Improve pre-migration testing tools. 7 years ago
Matthew Chen 9d101c3f53 Elaborate Debug & Internal UI. 7 years ago
Matthew Chen b3e6278a45 Clean up ahead of PR. 7 years ago
Matthew Chen 9d909025c9 Handle UIImage shares. 7 years ago
Matthew Chen 5770a18b08 Handle text shares like URLs. 7 years ago
Matthew Chen 992e926142 Unpack oversize text messages if possible. 7 years ago
Matthew Chen 482ad08640 Handle unregistration in SAE. 7 years ago
Matthew Chen 6a81d8e5c2 Respond to CR. 7 years ago
Matthew Chen 7e769de5d2 Remove spurious warning. 7 years ago
Matthew Chen 0cc7f3e00e Clean up ahead of PR. 7 years ago
Matthew Chen 5d422e03d1 Add support for key specs. 7 years ago
Matthew Chen c5079ed3d7 Add support for key specs. 7 years ago
Matthew Chen a3e77019e2 Update storage to use database salts. 7 years ago
Matthew Chen 149199138c Clean up ahead of PR. 7 years ago
Matthew Chen 173da64bc4 Modify YapDatabase to read converted database, part 1. 7 years ago
Michael Kirk 71dc7f55d3 Copy DB setup / keying from Yap into conversion
// FREEBIE
7 years ago
Matthew Chen 1bff0f2b0e Incomplete commit starting work on loading databases for conversion. 7 years ago
Matthew Chen dc73342573 Convert databases if necessary. 7 years ago
Michael Kirk baa312f449 Timer button with duration label
// FREEBIE
7 years ago
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
7 years ago
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.
7 years ago
Matthew Chen 0d5b5bc44c Respond to CR. 7 years ago
Matthew Chen 3de9a4ea55 Add debug UI actions around clearing and snapshotting session state. 7 years ago
Matthew Chen 2b528ad894 Don't use mainApplicationState in business logic. 7 years ago
Matthew Chen fec2410ac2 Respond to CR. 7 years ago
Matthew Chen 3f2bee8383 Respond to CR. 7 years ago
Matthew Chen d81d85c386 Respond to CR. 7 years ago
Matthew Chen c308e25115 Skip redundant sync messages. 7 years ago
Matthew Chen a2b67a17fd Skip redundant sync messages. 7 years ago
Matthew Chen 41e6eaeafc Skip redundant sync messages. 7 years ago
Matthew Chen 76676659f8 Respond to CR. 7 years ago
Matthew Chen 17907dca10 Clean up ahead of PR. 7 years ago
Matthew Chen 15b8e58324 Retain changes from session database branch. 7 years ago
Matthew Chen 59933ce1d6 Fix rebase breakage. 7 years ago
Matthew Chen 16f7317579 Complete backup restore/import. 7 years ago
Matthew Chen 272a90d269 Add import back up UI. Begin work on import backup logic. 7 years ago
Matthew Chen 980b3d25a7 Rework "export backup" UI. 7 years ago
Matthew Chen 89c7ebf74b Respond to CR. 7 years ago
Matthew Chen 77572bdaec Retain changes from session database branch. 7 years ago
Matthew Chen 1839b10550 Retain changes from session database branch. 7 years ago
Matthew Chen 9ac2383a2c Retain changes from session database branch. 7 years ago
Matthew Chen e77c3e6717 Retain changes from session database branch. 7 years ago
Michael Kirk 8d2934d86e CR: remove unnecessary code, comments
// FREEBIE
7 years ago
Matthew Chen d01ec57f0e Fix storage reset. 7 years ago
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
7 years ago
sdkjfhsdkjhfsdlkjhfsdf 6e2d9c8141 identity change vs. share extension
// FREEBIE
7 years ago
sdkjfhsdkjhfsdlkjhfsdf 8141843f27 comment typo 7 years ago
sdkjfhsdkjhfsdlkjhfsdf 92477c78b7 cleanup before PR 7 years ago
Michael Kirk bce18637f0 render attachments with captions
// FREEBIE
7 years ago
Michael Kirk e20f44024c WIP: Support sending attachment captions
Looks fine on other clients, but locally we don't display the caption.

// FREEBIE
7 years ago
Matthew Chen 05100b1143 Respond to CR. 7 years ago
Matthew Chen 6b0e3508a5 Respond to CR. 7 years ago
Matthew Chen 245304116f Respond to CR. 7 years ago
Matthew Chen 085f8a6f64 Clean up ahead of PR. 7 years ago
Matthew Chen 70926d7f10 Clean up ahead of PR. 7 years ago
Matthew Chen 6b58b4cbde Rework database view registration. 7 years ago
Matthew Chen fe67cd924c Rework database view registration. 7 years ago
Matthew Chen f88b954ab5 Clean up TSStorageManager usage. 7 years ago
Matthew Chen d3efb2e1c9 Clean up TSStorageManager usage. 7 years ago
Matthew Chen d52eba739d Clean up TSStorageManager usage. 7 years ago
Matthew Chen 85686d3144 Continue TSStorageManager refactor. 7 years ago
Matthew Chen 9a990b58e8 Respond to CR. 7 years ago
Matthew Chen 1163e76dee Clean up ahead of PR. 7 years ago
Matthew Chen 9815bca825 Clean up ahead of PR. 7 years ago
Matthew Chen 5dcf4b3bbc Clean up ahead of PR. 7 years ago
Matthew Chen 137fe6fb8b Pull out OWSStorage base class for TSStorageManager. 7 years ago
Matthew Chen a29c4ce5d6 Pull out OWSStorage base class for TSStorageManager. 7 years ago
Matthew Chen a572285ad2 Respond to CR. 7 years ago
Matthew Chen 2cc3752901 Improve background task logic. 7 years ago
Matthew Chen c3b6de4f83 Improve background task logic. 7 years ago
Matthew Chen f9ce34f553 Improve background task logic. 7 years ago
Matthew Chen 5adf98788d Use background task during message processing. 7 years ago
Matthew Chen df8ded90b8 Use background task during attachment downloads. 7 years ago
Michael Kirk 157bf00410 Merge branch 'hotfix/2.19.3' 7 years ago
Michael Kirk e78edcde87 Only clear cache when user pulls-to-refresh
// FREEBIE
7 years ago
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
7 years ago
Matthew Chen 3643414da1 Respond to CR. 7 years ago
Matthew Chen f57c12f34d Update YapDatabase. 7 years ago
Matthew Chen 571840b1dc Update YapDatabase. 7 years ago
Matthew Chen 609536fcb1 Include build version in logging. 7 years ago
Michael Kirk 16448e2a0b Merge tag '2.19.3.0' 7 years ago
Michael Kirk 64e90d29fd CR: extract method, more asserts and annotations
// FREEBIE
7 years ago
Michael Kirk 336c92ddab remove cached display name machinery, cleanup
// FREEBIE
7 years ago
Michael Kirk 7ea4b85a2a Persist signal accounts (and their embedded Contact)
// FREEBIE
7 years ago
Michael Kirk 56f1bf0305 cleanup 7 years ago
Matthew Chen b9b3eb0541 Clean up ahead of PR. 7 years ago
Matthew Chen 429312523f Simplify OWSUserProfile's "apply changes" logic using model diffing. 7 years ago
Matthew Chen f684482c54 Don't emit "user profile changed" notifications if nothing changed. 7 years ago
Matthew Chen 97ce1a6675 Rework user profile saves; block SAE if no local user profile key. 7 years ago
Matthew Chen 791743a5f0 Fix order of operations in SAE setup. 8 years ago
Matthew Chen f148003fb3 Convert logTag to property. 8 years ago
Matthew Chen 99f0b9d3e8 Fix issues around statics. 8 years ago
Michael Kirk 0429836ff9 CR: rename keyWindow -> keyReferenceView, split long line
// FREEBIE
8 years ago
Michael Kirk eca19e5874 Reconcile MediaMessageView zoom behavior with AppExtension
Previously it was predicated on UIApplication.shared

// FREEBIE
8 years ago
Michael Kirk 3eceb86371 Show alert if we fail to build the attachment
// FREEBIE
8 years ago
Michael Kirk 89b9887f1d Make DeviceSleepManager extension compatible
// FREEBIE
8 years ago
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
8 years ago
Matthew Chen 69e0bcd308 Fix tests. 8 years ago
Matthew Chen f5353fc7d5 Clean up ahead of PR. 8 years ago
Matthew Chen 150f417a5e Clean up ahead of PR. 8 years ago
Matthew Chen 022b2f93dd Respond to CR. 8 years ago
Matthew Chen e94ef01d72 Respond to CR. 8 years ago
Matthew Chen 9da165b846 Continue conversion of app setup. 8 years ago
Matthew Chen ce899edf10 Respond to CR. 8 years ago
Matthew Chen b4e8df79da Migrate environment to SignalMessaging. 8 years ago
Matthew Chen a16058e477 Migrate environment to SignalMessaging. 8 years ago
Matthew Chen 6d87df88aa Migrate environment to SignalMessaging. 8 years ago
Matthew Chen c817aa51b3 Migrate environment to SignalMessaging. 8 years ago
Michael Kirk 06f52deaf9 address some additional compiler warnings 8 years ago
Michael Kirk 23d3006fd8 remove unused code
// FREEBIE
8 years ago
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
8 years ago
Michael Kirk 2af818b3ba Make SignalMessaging AppExtension safe
// FREEBIE
8 years ago
Michael Kirk 0138777343 New @available syntax avoids compiler warnings
// FREEBIE
8 years ago
Michael Kirk f96b7bc27c CNContact doesn't exist before iOS9
// FREEBIE
8 years ago
Michael Kirk 0dec643b94 update header to match implementation atomicity
// FREEBIE
8 years ago
Michael Kirk 5e7ca89930 Proper function prototypes
// FREEBIE
8 years ago
Matthew Chen bf21d0c0ed Enable logging in SAE; rework log file management to include multiple log directories. 8 years ago
Michael Kirk 336d59a6ce restore chrono timestamp
make SSK compatible with c++ by using non-modular imports, which
requires disambiguating our ddLog variable.

// FREEBIE
8 years ago
Matthew Chen e7df2511a4 Register CrossProcessNotifier. 8 years ago
Matthew Chen 64762eb427 Observe YapDatabaseModifiedExternallyNotification. 8 years ago
Matthew Chen 62cf9b1dd5 Respond to CR. 8 years ago
Matthew Chen d17ccadea2 Use AppContext to resolve share extension FIXMEs. 8 years ago
Matthew Chen e712e8bfc4 Use AppContext to resolve share extension FIXMEs. 8 years ago
Matthew Chen 4c31d99498 Respond to CR. 8 years ago
Matthew Chen ffa69b3502 Add application context class. 8 years ago
Matthew Chen 8d4e9b4565 Respond to CR. 8 years ago
Matthew Chen 779e89fe74 Clean up ahead of PR. 8 years ago
Matthew Chen 7429e1968c Clean up ahead of PR. 8 years ago
Matthew Chen edaf65223a Migrate to shared data NSUserDefaults. 8 years ago
Matthew Chen cd11ec5698 Add app group, share keychain. Take a first pass at file migration to shared data directory. 8 years ago
Michael Kirk 336aa13520 Avoid overzealous assert
// FREEBIE
8 years ago
Michael Kirk 2072359a72 add todo 8 years ago
Michael Kirk e9796600c6 disable some asserts for now
// FREEBIE
8 years ago
Michael Kirk 961727814b Move pinning certificates into App
// FREEBIE
8 years ago
Michael Kirk a11d83187b WIP: Framework-friendly - compiles but crashes on launch
// FREEBIE
8 years ago
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
8 years ago
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
8 years ago
Matthew Chen 829464baaf Remove concurrency limitations from signal service. 8 years ago
Matthew Chen ba88da60ca Use dedicated db connection for recipient identities. 8 years ago
Matthew Chen 9b4ac4073f Improve robustness around unknown country codes. 8 years ago
Matthew Chen d9fcfdeeb7 Fix deadlock when responding to contacts sync messages. 8 years ago
Matthew Chen 9b197fad03 Fix deadlock when responding to contacts sync messages. 8 years ago
Matthew Chen d8ae5841d6 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen b3d17ea192 Improving handling of edge cases in conversation view. 8 years ago
Matthew Chen 45c7d80d97 Improving handling of edge cases in conversation view. 8 years ago
Matthew Chen 6d4a05bbea Improving handling of edge cases in conversation view. 8 years ago
Matthew Chen 2642f6fcea Fix group creation. 8 years ago
Matthew Chen 21e9f57cbe Imitate Android's behavior of delaying local notifications based on incoming sync messages. 8 years ago
Matthew Chen 2d8a7b03d0 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen d7b0424c75 Don't back up profile pics, attachments or gifs.
// FREEBIE
8 years ago
Matthew Chen 2f84e0c426 Fix calling; be explicit about which messages should be saved. 8 years ago
Matthew Chen 19ba564f80 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 00feb14b10 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 5eea0347b5 Rework the "update with..." methods to avoid re-saving deleted models. 8 years ago
Matthew Chen 94b59c326e Rework the "update with..." methods to avoid re-saving deleted models. 8 years ago
Matthew Chen c6160a5a1e Rework the "update with..." methods to avoid re-saving deleted models. 8 years ago
Matthew Chen 69fa80b890 Don't resurrect zombies. 8 years ago
Matthew Chen fce52841f9 Don't resurrect zombies. 8 years ago
Matthew Chen 5c90bc72df Never request contacts permission if app is in the background. 8 years ago
Matthew Chen cc0e58365e Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 0abdbffe1f Improve handling of attachment edge cases. 8 years ago
Matthew Chen bac3bd4b68 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 518f15155a Respond to CR.
// FREEBIE
8 years ago
Matthew Chen efcd42012c Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 071dbd4414 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 8b65246619 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen e1b32315de Fix assert after registration.
// FREEBIE
8 years ago
Matthew Chen 5541be784f Fix build warnings from XCode 9. 8 years ago
Matthew Chen 6e840ff956 Fix build warnings from XCode 9. 8 years ago
Matthew Chen a6bfc0a60e Fix build warnings from XCode 9. 8 years ago