Commit Graph

276 Commits (c26e5dcba818439fc301bc3a66756dc6013ab4a1)

Author SHA1 Message Date
Matthew Chen d4f7b5d45b Respond to CR. 7 years ago
Matthew Chen f34bdd34bc 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
Matthew Chen db3df249bf Merge NSData categories. 7 years ago
Matthew Chen 7cc8674201 Fix "save non-media attachment" crash. 7 years ago
Michael Kirk 82fdd5b883 Split out generic action sheet components
Keep the message specific components separte, so we could re-use the
MenuActionsViewController.
7 years ago
Matthew Chen 3964b78ff7 Reduce usage of JSQ. 7 years ago
Matthew Chen 4d8c764789 Migrate to Swift 4. 7 years ago
Matthew Chen 28e26e1f75 Migrate to Swift 4. 7 years ago
Michael Kirk 5ba5e98260 Show downloaded contact avatar in thread
// FREEBIE
8 years ago
Michael Kirk f5e810e82b CR: rename ThreadModel -> ThreadViewModel
// FREEBIE
8 years ago
Michael Kirk 897d4a925b HomeView caches thread models
// FREEBIE
8 years ago
Michael Kirk 5f2b38c50b Introduce Thread view model
// FREEBIE
8 years ago
Matthew Chen c17a819366 Elaborate request factory. 8 years ago
Matthew Chen baf6fcc535 Add 2FA registration view. 8 years ago
Matthew Chen 7a1e47cd26 Add asserts around Swift singletons. 8 years ago
Michael Kirk c52192295b fixup rebase. move jobs to proper dir 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 b4e8df79da Migrate environment to SignalMessaging. 8 years ago
Matthew Chen 8cc33b3de1 Refine loading view of share extension. 8 years ago
Michael Kirk fd829ba575 Merge branch 'hotfix/2.19.1' 8 years ago
Michael Kirk a11d83187b WIP: Framework-friendly - compiles but crashes on launch
// FREEBIE
8 years ago
Michael Kirk 9d1e3dc223 We need to change file extensions when converting data
// FREEBIE
8 years ago
Matthew Chen 6e60d99ecf Show push tokens in about view.
// FREEBIE
8 years ago
Matthew Chen 6e840ff956 Fix build warnings from XCode 9. 8 years ago
Michael Kirk c0bcc40a6f Ensure we re-upload push tokens after re-registering.
// FREEBIE
8 years ago
Matthew Chen d04f9111db Rework attachment approval UI.
// FREEBIE
8 years ago
Matthew Chen 5621fe893c Clean up ahead of PR.
// FREEBIE
8 years ago
Matthew Chen fb408f980c Remove JSQ.
// FREEBIE
8 years ago
Michael Kirk 9a7e3cb9d8 Register for manual message fetching when unable to obtain push tokens
// 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
Matthew Chen 48e6cea207 Replace FLAnimatedImage with YYImage.
// FREEBIE
8 years ago
Matthew Chen 9f9ac746d1 Sketch out message metadata view.
* Show message metadata view from conversation view.
* Pull out MediaMessageView class.
* Track recipient read timestamps.
* Add per-recipient status to message metadata view.
* Add share button to message metadata view.

// FREEBIE
8 years ago
Matthew Chen b28c4b74b2 Pull out TSMessageDecrypter class.
// FREEBIE
8 years ago
Matthew Chen 80e5f281c6 Rename app preferences class.
// FREEBIE
8 years ago
Matthew Chen 400f536e37 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen bb2a822f3f Clean up the data source class.
// FREEBIE
8 years ago
Matthew Chen b8573d7323 Apply OWSFail() in more places.
// 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 0746b1300d Apply DataSource to message sender.
// FREEBIE
8 years ago
Matthew Chen 20e5013aae Convert DataSource to Objective-C.
// 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 fc92293da3 Fix build break.
// FREEBIE
8 years ago
Michael Kirk 6911c8047e validate push settings on main thread
// FREEBIE
8 years ago
Matthew Chen cc048b3971 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 5fcf89dff1 Ignore "GIF of death."
// FREEBIE
8 years ago
Matthew Chen 8794880db8 Unbound message bubble cache size and DRY up cache logic.
// FREEBIE
8 years ago
Michael Kirk bde40a1f9c Ensure avatar upates right after profile change.
// FREEBIE
8 years ago
Michael Kirk f6720f9afa properly clear all cached avatar images
// FREEBIE
8 years ago
Michael Kirk b579ea5915 Use profile name when building avatar if contact name is unavailable
// FREEBIE
8 years ago
Matthew Chen 14d472781f Respond to CR.
// FREEBIE
8 years ago
Matthew Chen a825fad47b Start reworking the contact offers.
// FREEBIE
8 years ago
Matthew Chen 98eb4693c5 Rework the contact offers.
// FREEBIE
8 years ago
Matthew Chen 5f2f8ec6d8 Start reworking the contact offers.
// 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 16c646a939 Use profile name/image when available.
Refactored the ContactAvatarBuilder to clarify intent of the two
methods. One is only used for non-signal contacts in the Invite flow.
The other should be used for any signal contacts so we have a single
consistent way of generating the avatar initials.

// FREEBIE
8 years ago
Michael Kirk 8a4712bf4c Only access localNumber on AccountManager and cache it
// FREEBIE
8 years ago
Michael Kirk 357eb62502 [DEBUG-UI] Add avatar to (some) fake contacts
// FREEBIE
8 years ago
Michael Kirk 742f8cf902 Avoid unnecessariy flashing avatars
Make avatar building sync

Tests on a iPhone5 with 1k threads, 3k contacts show no noticeable lag.

Profiling shows ~4% of usage goes to contact avatar building, but once
cached, even that goes towards zero.

// FREEBIE
8 years ago
Matthew Chen 1e67bb52e3 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen f584c4b434 Fix broken tests.
// FREEBIE
8 years ago
Matthew Chen d639d6557e Add owsFail free function for swift.
// FREEBIE
8 years ago
Michael Kirk f681712ea0 Code Cleanup
- make some logging clearer
- remove noisy unhelpful logging
- clearer method names

// FREEBIE
8 years ago
Michael Kirk ff10f52779 remove unneccessary hack
Now that we have a nice system message design, we don't need to shoe
horn group updates into the TSCall adapter.

// FREEBIE
8 years ago
Michael Kirk bef3a56e50 DebugUI: create fake unread messages
helpful for printing unread indicator

// FREEBIE
8 years ago
Michael Kirk 964e558139 log when starting token sync in prod
// FREEBIE
8 years ago
Michael Kirk 4f3278db1e Fix layout of timestamp for system messages
Incorporate topLabelSize into cell size for system messages.

We are using the term "bubble size" to describe the interaction specific
views of a collection cell. It's a crappy name, but coincides with other
usage.

// FREEBIE
8 years ago
Matthew Chen 119f1f3429 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen 6276dcb34c Fix “Invalid media attachments” crash.
// FREEBIE
8 years ago
Matthew Chen ab95b04e56 Respond to CR.
// FREEBIE
8 years ago
Matthew Chen bd440f0878 Respond to post-holiday code reviews.
// FREEBIE
8 years ago
Matthew Chen 91af4f93e1 Use reference cells for measurement.
// FREEBIE
8 years ago
Matthew Chen 1ef9ba0659 Clea up usage of fail macro.
// FREEBIE
8 years ago
Michael Kirk 1a3204bf46 create interaction in thread when missing call due to changed identity
// FREEBIE
8 years ago
Matthew Chen 15074cdb8f Clean up system message cells, make them tappable, etc.
// FREEBIE
8 years ago
Matthew Chen a013a7206e Rework and unify the system messages.
// FREEBIE
8 years ago
Matthew Chen 459c6c6ed4 Rework and unify the system messages.
// FREEBIE
8 years ago
Matthew Chen 9cdf907e20 Rework and unify the system messages.
// FREEBIE
8 years ago
Matthew Chen 2cbf1e1d05 Rework and unify the system messages.
// FREEBIE
8 years ago
Michael Kirk 52aa8a3744 require explicit avatar diameter
This will help us get crisper text in our generated avatars.

// FREEBIE
9 years ago
Michael Kirk 19d74d91e0 Build higher res avatar for call screen
Initials avatar looks blurry on call screen

// FREEBIE
9 years ago
Matthew Chen 8a6ca8c012 Fix glitch around downloading attachments.
// FREEBIE
9 years ago
Matthew Chen 02df277d19 Respond to CR.
* Add [TSInteraction compareForSorting].
* Add a separate database view for safety number changes.

// FREEBIE
9 years ago
Matthew Chen 7afcad81c6 Fix data type issue around losing millisecond precision in message expiration times.
// FREEBIE
9 years ago
Matthew Chen 19390abc41 Refine the unseen indicators.
* Fix sizing of the unread indicator cells.
* Fix conflicts between paging and “load window” of conversation view and unseen indicator.
* Modify unseen indicator to indicate whether there are more unseen messages and safety number changes.
* Fix conflicts between modifying the “load window” size and updating the dynamic interactions.
* Clear the “bubble size calculator” cache whenever the view changes size.
* Improve the scrolling behavior around “load more messages”.
* Improve management of “load window” size.
* Fix issues around caching of bubble sizes.

// FREEBIE
9 years ago
Matthew Chen bd7b7f3d11 Cache the displayable text for messages.
// FREEBIE
9 years ago
Matthew Chen 1d792d1878 Rename audio duration and image size methods in TSAttachmentStream.
// FREEBIE
9 years ago
Matthew Chen 78f443374f Respond to CR.
// FREEBIE
9 years ago
Matthew Chen 964e6f1adf Improve asserts and logging in attachment adapters.
// FREEBIE
9 years ago
Matthew Chen b1f7cf0d62 Cache image size and audio duration on attachments.
// FREEBIE
9 years ago
Matthew Chen 632cb78751 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen db097ab8de Fix caching of message bubble sizes.
// FREEBIE
9 years ago
Matthew Chen 7db19df742 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen c70487be80 Respond to CR.
// FREEBIE
9 years ago
Matthew Chen db07ea8a8e Persist attachment file paths.
// FREEBIE
9 years ago
Matthew Chen ac458cc7ad Add unread indicator.
// FREEBIE
9 years ago
Matthew Chen ebf500d805 Respond to CR.
// FREEBIE
9 years ago