Commit Graph

215 Commits

Author SHA1 Message Date
Michael Kirk
f5e810e82b CR: rename ThreadModel -> ThreadViewModel
// FREEBIE
2018-04-23 12:15:21 -04:00
Michael Kirk
897d4a925b HomeView caches thread models
// FREEBIE
2018-04-21 19:21:18 -04:00
Michael Kirk
5f2b38c50b Introduce Thread view model
// FREEBIE
2018-04-21 19:21:18 -04:00
Matthew Chen
c17a819366 Elaborate request factory. 2018-03-02 15:05:14 -05:00
Matthew Chen
baf6fcc535 Add 2FA registration view. 2018-03-02 10:55:00 -05:00
Matthew Chen
7a1e47cd26 Add asserts around Swift singletons. 2017-12-07 13:57:45 -05:00
Michael Kirk
c52192295b fixup rebase. move jobs to proper dir 2017-12-07 10:13:06 -05:00
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
2017-12-07 10:13:06 -05:00
Matthew Chen
b4e8df79da Migrate environment to SignalMessaging. 2017-12-05 10:29:29 -05:00
Matthew Chen
8cc33b3de1 Refine loading view of share extension. 2017-12-01 10:48:18 -05:00
Michael Kirk
fd829ba575 Merge branch 'hotfix/2.19.1' 2017-11-29 14:07:33 -08:00
Michael Kirk
a11d83187b WIP: Framework-friendly - compiles but crashes on launch
// FREEBIE
2017-11-29 13:58:27 -08:00
Michael Kirk
9d1e3dc223 We need to change file extensions when converting data
// FREEBIE
2017-11-29 12:43:05 -08:00
Matthew Chen
6e60d99ecf Show push tokens in about view.
// FREEBIE
2017-11-20 14:10:37 -05:00
Matthew Chen
6e840ff956 Fix build warnings from XCode 9. 2017-11-09 02:52:44 -05:00
Michael Kirk
c0bcc40a6f Ensure we re-upload push tokens after re-registering.
// FREEBIE
2017-11-08 10:55:34 -05:00
Matthew Chen
d04f9111db Rework attachment approval UI.
// FREEBIE
2017-10-24 09:42:29 -04:00
Matthew Chen
5621fe893c Clean up ahead of PR.
// FREEBIE
2017-10-12 16:23:48 -04:00
Matthew Chen
fb408f980c Remove JSQ.
// FREEBIE
2017-10-12 16:23:48 -04:00
Michael Kirk
9a7e3cb9d8 Register for manual message fetching when unable to obtain push tokens
// FREEBIE
2017-10-12 12:02:22 -04:00
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
2017-10-12 12:02:22 -04:00
Matthew Chen
48e6cea207 Replace FLAnimatedImage with YYImage.
// FREEBIE
2017-10-02 13:37:32 -04:00
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
2017-09-25 17:25:49 -04:00
Matthew Chen
b28c4b74b2 Pull out TSMessageDecrypter class.
// FREEBIE
2017-09-21 14:38:30 -04:00
Matthew Chen
80e5f281c6 Rename app preferences class.
// FREEBIE
2017-09-19 17:35:42 -04:00
Matthew Chen
400f536e37 Respond to CR.
// FREEBIE
2017-09-19 09:30:01 -04:00
Matthew Chen
bb2a822f3f Clean up the data source class.
// FREEBIE
2017-09-11 10:20:48 -04:00
Matthew Chen
b8573d7323 Apply OWSFail() in more places.
// FREEBIE
2017-09-11 10:20:48 -04:00
Matthew Chen
9dfebb2d4b Apply OWSFail() in more places.
// FREEBIE
2017-09-11 10:20:48 -04:00
Matthew Chen
c21a7673c8 Rework preservation of attachment filenames.
// FREEBIE
2017-09-11 10:20:48 -04:00
Matthew Chen
0746b1300d Apply DataSource to message sender.
// FREEBIE
2017-09-11 10:20:48 -04:00
Matthew Chen
20e5013aae Convert DataSource to Objective-C.
// FREEBIE
2017-09-11 10:20:48 -04:00
Matthew Chen
69816cdf0e Convert DataSource to Objective-C.
// FREEBIE
2017-09-11 10:20:48 -04:00
Matthew Chen
2282733fa9 Add data source class.
// FREEBIE
2017-09-11 10:20:48 -04:00
Matthew Chen
fc92293da3 Fix build break.
// FREEBIE
2017-09-06 13:32:47 -04:00
Michael Kirk
6911c8047e validate push settings on main thread
// FREEBIE
2017-09-06 13:32:47 -04:00
Matthew Chen
cc048b3971 Respond to CR.
// FREEBIE
2017-08-30 12:46:21 -04:00
Matthew Chen
5fcf89dff1 Ignore "GIF of death."
// FREEBIE
2017-08-30 12:46:21 -04:00
Matthew Chen
8794880db8 Unbound message bubble cache size and DRY up cache logic.
// FREEBIE
2017-08-25 17:01:13 -04:00
Michael Kirk
bde40a1f9c Ensure avatar upates right after profile change.
// FREEBIE
2017-08-25 12:40:19 -04:00
Michael Kirk
f6720f9afa properly clear all cached avatar images
// FREEBIE
2017-08-25 12:40:19 -04:00
Michael Kirk
b579ea5915 Use profile name when building avatar if contact name is unavailable
// FREEBIE
2017-08-25 12:40:19 -04:00
Matthew Chen
14d472781f Respond to CR.
// FREEBIE
2017-08-21 17:13:36 -04:00
Matthew Chen
a825fad47b Start reworking the contact offers.
// FREEBIE
2017-08-21 17:05:42 -04:00
Matthew Chen
98eb4693c5 Rework the contact offers.
// FREEBIE
2017-08-21 17:05:42 -04:00
Matthew Chen
5f2f8ec6d8 Start reworking the contact offers.
// FREEBIE
2017-08-21 17:05:42 -04:00
Michael Kirk
2e83643327 Don't consider registration complete until user registers their push
notification tokens.

// FREEBIE
2017-08-17 10:56:36 -04:00
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
2017-08-07 16:50:55 -04:00
Michael Kirk
8a4712bf4c Only access localNumber on AccountManager and cache it
// FREEBIE
2017-08-03 13:27:09 -04:00
Michael Kirk
357eb62502 [DEBUG-UI] Add avatar to (some) fake contacts
// FREEBIE
2017-08-03 13:18:36 -04:00