Commit Graph

91 Commits (85686d314408ab91dee0a73e94ef82e778764ed1)

Author SHA1 Message Date
Matthew Chen 85686d3144 Continue TSStorageManager refactor. 8 years ago
Matthew Chen 9a990b58e8 Respond to CR. 8 years ago
Matthew Chen b4e8df79da Migrate environment to SignalMessaging. 8 years ago
Matthew Chen c817aa51b3 Migrate environment to SignalMessaging. 8 years ago
Matthew Chen 21e9f57cbe Imitate Android's behavior of delaying local notifications based on incoming sync messages. 8 years ago
Matthew Chen 6e840ff956 Fix build warnings from XCode 9. 8 years ago
Matthew Chen 03241128f6 Respond to CR.
// FREEBIE
8 years ago
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
8 years ago
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
8 years ago
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
8 years ago
Matthew Chen e0194fd605 Allow multiple simultaneous GIF downloads.
// FREEBIE
8 years ago
Michael Kirk 344903fa5b Show proper thread from notification
// FREEBIE
8 years ago
Matthew Chen ee13084d5c Respond to CR.
// FREEBIE
8 years ago
Matthew Chen ffe44e68be Refactor linked device read receipts.
// FREEBIE
8 years ago
Matthew Chen 7268bde506 Add stress group to debug UI.
// FREEBIE
8 years ago
Matthew Chen edd63164d7 Fix build breaks.
// FREEBIE
8 years ago
Matthew Chen 3eaeb4e0ec Add read receipts manager.
* Simplify read receipts plumbing.
* Rework incoming read receipts handling.
* Rework outgoing read receipts handling.
* Make "database view registration complete" check thread-safe.
* Don't send sync messages to self if no linked devices.

// FREEBIE
8 years ago
Matthew Chen 8a4d67a6e4 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 80e5f281c6 Rename app preferences class.
// FREEBIE
8 years ago
Matthew Chen b6d782046a Normalize conversation presentation logic.
// FREEBIE
8 years ago
Michael Kirk 6911c8047e validate push settings on main thread
// FREEBIE
8 years ago
Michael Kirk 4d8429186d Store undecrypted envelopes before doing any processing.
This lets us clear the server side queue immediately, and paves the way
for retry, give up logic.

// FREEBIE
8 years ago
Michael Kirk fa42b4a45b Respect disappearing message timer from lockscreen
// FREEBIE
8 years ago
Matthew Chen 2e727a24b5 Convert home view to programmatic layout.
// FREEBIE
9 years ago
Matthew Chen 7135895c1c Modify TSStorageManager to use separate shared read and write connections.
// FREEBIE
9 years ago
Matthew Chen a462cba452 Don’t reply to “no longer verified”.
// FREEBIE
9 years ago
Matthew Chen 027cd8cb34 Rework how messages are marked read.
// FREEBIE
9 years ago
Matthew Chen 1ef9ba0659 Clea up usage of fail macro.
// FREEBIE
9 years ago
Michael Kirk c8d547a08f Only allow callback for identities that were not previously verified
// FREEBIE
9 years ago
Michael Kirk 1127553041 restore "confirm and callback" functionality
// FREEBIE
9 years ago
Matthew Chen b6ddea9eae Sketch out OWSIdentityManager.
// FREEBIE
9 years ago
Michael Kirk 130aa132a0 Reject incoming calls from an unseen changed identity
// FREEBIE
9 years ago
Matthew Chen d065c95270 Hide the socket status view when censorship circumvention is active.
// FREEBIE
9 years ago
Michael Kirk fe54f4319f fix reply-from lockscreen on larger devices
// FREEBIE
9 years ago
Matthew Chen 2e36f41838 Add support for manually activating censorship circumvention.
// FREEBIE
9 years ago
Matthew Chen 716aa772f6 Always sync and log push tokens. Apply OWSAlerts in more places.
// FREEBIE
9 years ago
Matthew Chen 552eecfd03 Increase local notification delay.
// FREEBIE
9 years ago
Matthew Chen 3e53605009 Improve thread safety in PushManager and NotificationsManager.
// FREEBIE
9 years ago
Matthew Chen 2a369273c8 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen b7b5dbb563 Do not present local notifications if a read receipt arrives immediately after.
// FREEBIE
9 years ago
Matthew Chen d00c892158 Apply assert to ensure singletons are only created once.
// FREEBIE
9 years ago
Michael Kirk 7f239c8040 [SSK] + Enforce singleton access for MessagesManager and MessageSender
// FREEBIE
9 years ago
Matthew Chen 9db33a9651 Remove RedPhone code.
// FREEBIE
9 years ago
Michael Kirk 08425853cf re-use shared call strings
// FREEBIE
9 years ago
Michael Kirk cd36123bf1 rename method to better reflect how its used
// FREEBIE
9 years ago
Michael Kirk 6c14f2f500 Fix "Answer" from iOS9 notification doesn't init audio
The removed code was from an older eon. CallService shouldn't be touched
except via the CallUIAdapter since only there is the omnipresent
distinction between CallKit vs. NonCallKit made.

i.e. when the RTCAudioSession get's started depends on the
CallUIAdaptee.

// FREEBIE
9 years ago
Matthew Chen 98e087a47f Fix font lookup on iOS before 8.2.
// FREEBIE
9 years ago
Michael Kirk 647b2b37e9 WIP: WebRTC calling
* Ensure NotificationsManager has dependencies
    Otherwise it's easy to mess up the order of the required dependencies.
* move AccountManager into Environment, it's heavy to construct

// FREEBIE
9 years ago
Matthew Chen 2dac6c888a Update SignalServiceKit pod.
* Fetch messages when app becomes active.
9 years ago
Michael Kirk ddba843d44 Censorship circumvention in Egypt and UAE
* domain fronting
* non-websocket message fetching

// FREEBIE
9 years ago