Commit Graph

229 Commits (5c98d55dc6645dfaa42c0eae6fffb3621d6182d6)

Author SHA1 Message Date
Matthew Chen da4f41defc Fix missing albumMessageId. 7 years ago
Matthew Chen 3daf7d4744 Add OWSAttachmentDownloads. 7 years ago
Michael Kirk e096406e56 migrate existing attachments to album-compatible gallery schema 7 years ago
Matthew Chen 7c65a98069 Fix breakage from typing indicators. 7 years ago
Matthew Chen 58f36fba47 Disable typing indicators by default for legacy users. 7 years ago
Matthew Chen a98c82645c Start work on typing indicators.
* Update proto schema to reflect typing indicators.
* Sketch out OWSTypingIndicatorMessage.
* Add "online" to the service message params.
* Sketch out logic to send typing indicator messages.
* Sketch out OWSTypingIndicators class.
7 years ago
Matthew Chen 40aa78e001 Merge remote-tracking branch 'origin/release/2.31.0' 7 years ago
Michael Kirk 9d2731c9b8 exception auditing OWSRaiseException 7 years ago
Michael Kirk 5632bd2d83 Use reference counting to disable proximity monitoring after audio message
Multiple overlapping activities require proximity monitoring (namely,
CallViewController and listening to audio messages).

These activities can overlap arbitrarily, so we use a reference counting
strategy to keep proximity monitoring on as long as one of these activities is
active.
7 years ago
Michael Kirk 54c63c7a2e Reachability Singleton 7 years ago
Michael Kirk 3560f3be5c Durable send operation
TODO
-[x] respect order of queue
-[x] replacements
  -[x] those w/o completion handler
  -[x] basic send+log operation persists
  -[x] send+ui completion
  -[x] share extension
  -[x] update state jobs
-[x] App Lifecyle
  -[x] settable
  -[x] Mark as ready on startup
  -[x] Fail appropriate jobs on startup

NICE TO HAVE
-[x] concurrent per senders
-[ ] longer retry (e.g. 24hrs)
-[ ] App Lifecyle
  -[x] retry failed jobs on startup?
  -[ ] reachability

DONE
-[x] basic passing test
-[x] datamodel
-[x] queue/classes
7 years ago
Michael Kirk ce9ca1bdaa audio player type 7 years ago
Michael Kirk 4b4b18c625 Proximity playsback through earpiece
This is kind of unfortunate because playback doesn't allow the earpiece as an
output device.
7 years ago
Michael Kirk 3b4188f34b hoist audio session singleton to Environment 7 years ago
Michael Kirk 3d022adf4e WIP: audio activities 7 years ago
Matthew Chen 275414cbda Respond to CR. 7 years ago
Matthew Chen 7c1f1882d8 Sync "show UD indicators" setting. 7 years ago
Matthew Chen 2b8c70ef9e Fix UD attributes migration completion. 7 years ago
Matthew Chen f1646b6cbc Move db connections to environments. 7 years ago
Matthew Chen 829851bd7b Hang PushManager on AppEnvironment. 7 years ago
Matthew Chen 32cf68bece Get all tests building. 7 years ago
Matthew Chen 603e3bf0b6 Move SM singletons to Environment. 7 years ago
Michael Kirk d6a6024f37 Update PromiseKit 7 years ago
Matthew Chen eb7abdfc64 Account attributes updates. 7 years ago
Matthew Chen f1d93d4472 Merge remote-tracking branch 'origin/release/2.30.2' 7 years ago
Matthew Chen 010ce1f6c2 Rename to OWSOutgoingReceiptManager. 7 years ago
Matthew Chen 13373db3bc Send delivery receipts. 7 years ago
Michael Kirk e7170dc6e8 conventional error structure for connectivity error 7 years ago
Matthew Chen c907721a18 Rotate profile key if blocklist intersects profile whitelist. 7 years ago
Matthew Chen 9323e411fc Revert AppReadiness singleton. 7 years ago
Matthew Chen 27700ef78f Revert AppVersion singleton. 7 years ago
Matthew Chen f24ccb3ce6 Hang more singletons on SSKEnv. 7 years ago
Matthew Chen 03f23b5f79 Fix breakage in UD manager; add UD manager test, hang TSAccountManager on SSKEnv, fix bugs in tests. 7 years ago
Matthew Chen fab79e2673 Respond to CR. 7 years ago
Matthew Chen 283cb18288 Re-run UD attributes migration. 7 years ago
Matthew Chen c137e95ae5 Move socket manager to hang on SSKEnvironment. 7 years ago
Matthew Chen 0b41e5e240 Rework profile fetch to reflect UD changes. 7 years ago
Michael Kirk f243914fe5 NSTemporaryDirectory -> OWSTemporaryDirectory/AccessibleAfterFirstAuth
Remove redundant move - AFNetworking alread moves the CFNetwork tmp file for
us.
7 years ago
Matthew Chen 3eb84ed0e0 Move message processing singletons to SSKEnvironment. 7 years ago
Matthew Chen 4ab281346a Respond to CR. 7 years ago
Matthew Chen 95387dd220 Fix rebase breakage. 7 years ago
Matthew Chen 1d40cbfb41 Rework account attributes; persist manual message fetch; add "unrestricted UD" setting. 7 years ago
Matthew Chen 7fd15d2fd9 Add server certificate methods to UD manager. 7 years ago
Matthew Chen 8ae200ac21 Fix build breakage around SignalCoreKit. 7 years ago
Matthew Chen ebae75af00 Revert 'new sort id'. 7 years ago
Matthew Chen b076f14964 Swift exit(). 7 years ago
Michael Kirk 3518d37c3e use autorelease pool in migration to avoid accumulating memory 7 years ago
Michael Kirk 04a52980a3 fixup migration
- nested transaction for enumeration
- save when complete
7 years ago
Michael Kirk fe7d69e9c6 Update thread's sorting order based on whatever the currently last message is 7 years ago
Michael Kirk 2eb3ec6d0c benchmark migration 7 years ago
Michael Kirk b281b37637 replace thread.lastMessageDate/archivalDate -> thread.lastSortId, thread.archivedAsOfSortId
Update migration accordingly

Date shown on home view cell is message.receivedAt
7 years ago
Michael Kirk ab55e85304 step 1: timestampForSorting audit, change signature
No change in functionality in this commit, I just broke the signature to have a
systematic audit of the callsites. Added TODO's with the plan for each call.
7 years ago
Michael Kirk a60d8eb161 WIP: migration / autoincrement logic
TODO:

-[ ] contact offer
-[ ] verify all paths that utilized timestampForSorting, e.g. make sure SN appear before the message they affect, etc.
-[x] Monotonic ID
-[x] New extension which sorts by id
-[x] Migration
  -[ ] batch migration?
7 years ago
Matthew Chen 87836f506b Move more singletons to SSKEnvironment. 7 years ago
Matthew Chen 3b2c5bfc7b Modify mock environments to register all db views. 7 years ago
Matthew Chen e1db60c1c0 Rework creation of singletons. 7 years ago
Michael Kirk 3df0e72eda Extract SPK rotation and CreatePreKey operations 7 years ago
Matthew Chen 3935b019f4 Add base class for tests. 7 years ago
Matthew Chen df7acfeed3 Simplify OWSPreferences access. 7 years ago
Matthew Chen 106ecf2e8e Respond to CR. 7 years ago
Matthew Chen cc117b385c Modify environment accessors to use our 'shared' convention. 7 years ago
Matthew Chen 3a12446be8 Modify environment accessors to use our 'shared' convention. 7 years ago
Matthew Chen bd05cdc031 Rename TextSecureKitEnv to SSKEnvironment. 7 years ago
Michael Kirk c7662b5a86 Step 2/2 %s/OWSAssert/OWSAssertDebug for existing previous assert semantics
Going forward, we want to prefer safer asserts, but we don't want to blindly
apply crashing asserts across the codebase
7 years ago
Matthew Chen f473f60111 Apply OWS log functions in Objective-C. 7 years ago
Matthew Chen cc5a480baa Apply OWS log functions in Objective-C. 7 years ago
Matthew Chen c0d486b1f1 Apply OWS log functions in Objective-C. 7 years ago
Matthew Chen 3a50377902 Apply OWS log functions in Objective-C. 7 years ago
Matthew Chen 713606271c Rename fail macros in Obj-C. 7 years ago
Matthew Chen 5b50e81b4f Rename fail macros in Swift. 7 years ago
Matthew Chen d4f7b5d45b Respond to CR. 7 years ago
Matthew Chen e1049fdfcc Respond to CR. 7 years ago
Matthew Chen cf6f3841a8 Apply new Swift logging. 7 years ago
Matthew Chen 26001e49d1 Unify log tags. 7 years ago
Michael Kirk c05700fd98 Log in OWSFail
step 1: rename OWSFail->OWSFailNoProdLog
step 2: rename OWSProdLogAndFail->OWSFail
step 3: Convert OWSFailNoProdLog->OWSFail where we want logging
step 4: Rename OWSCFail->OWSCFailNoProdLog
step 5: Rename OWSProdLogAndCFail -> OWSCFail
step 6: Convert OWSCFailNoProdLog -> OWSCFail where we want logging
7 years ago
Matthew Chen 2c9c028504 Clean up. 7 years ago
Matthew Chen 45e782c243 Revamp orphan data cleaner. 7 years ago
Matthew Chen 6be3d2e42d Code generate Swift wrappers for protocol buffers. 7 years ago
Jesse Squires 6dc74ddcaf Fix some project warnings + other fixes
- Prefer checking `.isEmpty` rather than `.count == 0` for Swift collections (can be more optimal)
- Avoid comparing `BOOL` explicitly to `NO` (considered bad practice since `BOOL` is a `signed char`)
- Specify unused `SGX_FLAGS` as `__unused` to silence warnings
7 years ago
Matthew Chen d14f764b50 Streamline SignalRecipient. 7 years ago
Michael Kirk d591fb7f2c Fix some compiler warnings 7 years ago
Matthew Chen 19c9e226fb Respond to CR. 7 years ago
Matthew Chen 3964b78ff7 Reduce usage of JSQ. 7 years ago
Matthew Chen f63d25a172 Migrate to Swift 4. 7 years ago
Matthew Chen da5ae63bbc Migrate to Swift 4. 7 years ago
Matthew Chen 28e26e1f75 Migrate to Swift 4. 7 years ago
Matthew Chen 28f7142a59 Auto-migration to Swift 4. 7 years ago
Michael Kirk 29d08545e2 Use OWSNavigationController instead of UINavigationController
- [ ] document picker
- [ ] camera picker
- [ ] image picker
- [ ] restore "confirm to go back" behavior (interactive pop gesture?)

// FREEBIE
7 years ago
Matthew Chen 5773b45345 Respond to CR. 7 years ago
Matthew Chen 594e12f23c Respond to CR. 7 years ago
Matthew Chen 40ac0daa9a Respond to CR. 7 years ago
Matthew Chen 4b83b4afc5 Rework outgoing message state. 7 years ago
Matthew Chen c5981b164b Notify users of corrupt messages. 7 years ago
Matthew Chen 7f23dfa258 Respond to CR. 7 years ago
Matthew Chen eb3569d8f8 Don't start app version migrations until storage is ready. 7 years ago
Matthew Chen 2265ae08aa Don't start app version migrations until storage is ready. 7 years ago
Michael Kirk 9c81eb44a1 Replace remaining UI usage of `interaction.description`
// FREEBIE
7 years ago
Michael Kirk 53af41fcc6 Reusable UploadOperation based on extracted OWSOperation
// FREEBIE
7 years ago
Michael Kirk 5f8b3ff285 Object lifecycle disposes SystemSound
// FREEBIE
7 years ago
Michael Kirk 2580c690cb CR: Use LRU Cache for storing system sounds
// FREEBIE
7 years ago