Michael Kirk
0ec2ac862a
Marquee label for callview controller
...
// FREEBIE
2017-09-11 10:01:21 -04:00
Michael Kirk
bd6387d1df
fit more of profile name on call screen
...
// FREEBIE
2017-09-11 10:01:21 -04:00
Michael Kirk
c4139b0f3e
Callkit ringer uses profile name
...
Also presents formatted number instead of e164
// FREEBIE
2017-09-11 10:01:21 -04:00
Matthew Chen
0c281cab95
Add "log user profiles" debug UI action.
...
// FREEBIE
2017-09-07 15:33:12 -04:00
Matthew Chen
d8d3f36070
Add "delete all contacts" debug UI action.
...
// FREEBIE
2017-09-07 15:27:08 -04:00
Matthew Chen
948da2afbb
Merge remote-tracking branch 'origin/release/2.16.0'
2017-09-07 15:20:45 -04:00
Matthew Chen
df2bf63384
Fix back button width on iOS 11.
...
// FREEBIE
2017-09-07 13:49:32 -04:00
Michael Kirk
5d58f43837
More profile logging
...
// FREEBIE
2017-09-07 13:32:45 -04:00
Michael Kirk
04bf548a7b
Fix one-time crash when opening thread without having a local profile
...
// FREEBIE
2017-09-07 13:24:15 -04:00
Michael Kirk
25a2646c8b
Always present settings from OWSNavigationController
...
// FREEBIE
2017-09-07 11:06:52 -04:00
Matthew Chen
26a6e76f3c
Rework conversation view header.
...
// FREEBIE
2017-09-07 10:47:35 -04:00
Matthew Chen
b626fb5bf8
Rework conversation view header.
...
// FREEBIE
2017-09-07 10:36:28 -04:00
Matthew Chen
644f435b16
Rework conversation view header.
...
// FREEBIE
2017-09-07 10:35:11 -04:00
Matthew Chen
c106794fe8
Rename conversation view.
...
// FREEBIE
2017-09-06 14:13:18 -04:00
Matthew Chen
928525c31e
Rename home view.
...
// FREEBIE
2017-09-06 13:59:39 -04:00
Matthew Chen
fd4f00fa4d
Rename new contact thread view.
...
// FREEBIE
2017-09-06 13:55:01 -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
Michael Kirk
2d13c49222
[iOS11] Support sending .heif filesS
...
// FREEBIE
2017-09-06 12:11:54 -04:00
Michael Kirk
83ca34edbe
Fix sending images taken on iOS11 camera.
...
Convert .heic to .jpg upon sending
// FREEBIE
2017-09-06 11:47:01 -04:00
Michael Kirk
ecf8ca093f
[JSQMVC] iOS11 compatability
...
// FREEBIE
2017-09-06 11:46:25 -04:00
Matthew Chen
0d04cf251b
Ensure the crop view is WYSIWIG.
...
// FREEBIE
2017-09-05 16:36:42 -04:00
Michael Kirk
4e93bec230
black masking style for avatar cropper
...
- cancel/done buttons
- no navbar for modal edit
- vertically center image
// FREEBIE
2017-09-05 16:36:42 -04:00
Michael Kirk
59eb782d57
Optimize layout for profile upgrade, remove other upgrade screens
...
// FREEBIE
2017-09-05 16:24:33 -04:00
Michael Kirk
0244a82031
code cleanup for clarity
...
// FREEBIE
2017-09-05 16:24:33 -04:00
Michael Kirk
90b1db9eb4
new upgrade layout
...
// FREEBIE
2017-09-05 16:24:33 -04:00
Michael Kirk
b7cc1e9f56
top margin iphone5c
2017-09-05 16:24:33 -04:00
Michael Kirk
73a441a28c
introducing profiles
...
// FREEBIE
2017-09-05 16:24:33 -04:00
Matthew Chen
16dcc73b2d
Respond to CR.
...
// FREEBIE
2017-09-05 12:31:19 -04:00
Matthew Chen
2ce66527fb
Add group members individual to profile whitelist when adding group.
...
// FREBIE
2017-09-05 12:30:15 -04:00
Matthew Chen
6a2d14ad2a
Refine message view's initial range size.
...
// FREEBIE
2017-09-05 09:21:36 -04:00
Matthew Chen
a1cb2c015e
Refine message view's initial range size.
...
// FREEBIE
2017-09-05 09:21:36 -04:00
Michael Kirk
cd4cfb50d3
clean up avatar icon
...
avatar outline was showing behind camera which had transparent center
// FREEBIE
2017-09-01 18:15:50 -04:00
Michael Kirk
ae174d4a87
proper handling for multibyte characters
...
// FREEBIE
2017-09-01 18:15:02 -04:00
Michael Kirk
362b383785
Length-limit profile name field
...
// FREEBIE
2017-09-01 18:14:08 -04:00
Matthew Chen
3d0300242a
Use "skip" not "stop" in profile upgrade nag.
...
// FREEBIE
2017-09-01 15:26:11 -04:00
Matthew Chen
94daccc78e
Fix fake contacts.
...
// FREEBIE
2017-09-01 15:24:27 -04:00
Matthew Chen
a35a21d5cc
Batch the creation of fake contacts.
...
// FREEBIE
2017-09-01 15:24:27 -04:00
Michael Kirk
1cd51a8df2
Use existing isViewLoaded var
...
Defined in UIKit, this will actually already do what we need without
having to define a new var
// FREEBIE
2017-09-01 14:39:52 -04:00
Michael Kirk
3b85c5e495
crashfix: production crash when notification fired before view loaded
...
We're observing notifications in init that modify the view, which is
problematic if we receive a notification before the view has loaded.
// FREEBIE
2017-09-01 12:56:50 -04:00
Michael Kirk
2cd2596ddc
crashfix: thread.uniqueId is sometimes nil in production
...
fail early and print diagnostics
// FREEBIE
2017-09-01 12:56:50 -04:00
Michael Kirk
bb8f6c1b73
crashfix: crash while accessing image property
...
assert on blind cast
// FREEBIE
2017-09-01 12:56:50 -04:00
Michael Kirk
2eaaba9082
crashfix: on addObject, presumably it's nil.
...
I'm not sure how this is happening, but this will prevent the crash and
give us additional diagnostic data in the cases where it is happening.
// FREEBIE
2017-09-01 12:56:50 -04:00
Matthew Chen
95eaa2c3bb
Preserve scroll state across conversation view layout changes, if possible.
...
// FREEBIE
2017-08-31 15:21:29 -04:00
Matthew Chen
b2c8ad2d29
Restore scroll state after resetting the conversation view's mapping.
...
// FREEBIE
2017-08-31 15:21:29 -04:00
Matthew Chen
7d32491968
Preserve scroll state across conversation view layout changes, if possible.
...
// FREEBIE
2017-08-31 15:21:27 -04:00
Matthew Chen
fce2ad2793
Refine the "is scrolled to bottom" logic to better handle new conversations.
...
// FREEBIE
2017-08-30 13:00:02 -04:00
Matthew Chen
cc048b3971
Respond to CR.
...
// FREEBIE
2017-08-30 12:46:21 -04:00
Matthew Chen
ef21c6d50c
Ignore "GIF of death."
...
// FREEBIE
2017-08-30 12:46:21 -04:00
Matthew Chen
7f15228aba
Ignore "GIF of death."
...
// 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
b9908997c9
Remain scrolled to bottom after presenting the keyboard in messages view.
...
// FREEBIE
2017-08-30 12:44:10 -04:00
Matthew Chen
d7b0b6a253
Fix build break in production builds.
...
// FREEBIE
2017-08-29 17:30:56 -04:00
Matthew Chen
3c90c3361a
Respond to CR.
...
// FREEBIE
2017-08-29 16:31:27 -04:00
Matthew Chen
71d7490e35
Re-sync local profile state with service if necessary.
...
// FREEBIE
2017-08-29 16:29:54 -04:00
Matthew Chen
ac3743f810
Fix RTL layout of system message cells.
...
// FREEBIE
2017-08-29 16:26:23 -04:00
Matthew Chen
92a0fbe01b
Fix yet another edge case around message view scroll state.
...
// FREEBIE
2017-08-29 13:30:56 -04:00
Matthew Chen
4a2ca15b70
Fix build break around parameter name.
...
// FREEBIE
2017-08-29 12:26:41 -04:00
Matthew Chen
997cd2ef2b
Revisit the [UIScrollView _adjustContentOffsetIfNecessary] issue. Fix glitches in the initial scroll state in message view. Don't reset scroll state when returning to the message view.
...
// FREEBIE
2017-08-29 12:20:58 -04:00
Matthew Chen
7f717c0ca6
Revisit the [UIScrollView _adjustContentOffsetIfNecessary] issue. Fix glitches in the initial scroll state in message view. Don't reset scroll state when returning to the message view.
...
// FREEBIE
2017-08-29 12:20:58 -04:00
Michael Kirk
4c51f1810c
sync local profile as soon as it's created
...
// FREEBIE
2017-08-29 11:05:19 -04:00
Michael Kirk
ab84cbd670
use messageSender property now that the class relies on it in multiple
...
places.
(due to rebase)
// FREEBIE
2017-08-29 10:49:22 -04:00
Michael Kirk
42934e5fd4
remove retry logic per code review
...
the system naturally recovers anyway, upon sending messages, no need to
hit the user with another alert.
// FREEBIE
2017-08-29 10:49:22 -04:00
Michael Kirk
d71b7684a6
cleanup logging
...
// FREEBIE
2017-08-29 10:46:10 -04:00
Michael Kirk
55d0db8c46
Disable profile-key sending with feature flag
...
// FREEBIE
2017-08-29 10:39:36 -04:00
Michael Kirk
4382f33618
Send blank PROFILE_MESSAGE after whitelisting someone
...
So they can immediately fetch your profile.
Note, we're going to put this behind a feature flag for initial release
since iOS prints an empty bubble when receiving a message like this.
// FREEBIE
2017-08-29 10:35:54 -04:00
Michael Kirk
6c63009e9e
Dedicated "Profile" debug section
...
// FREEBIE
2017-08-29 10:35:54 -04:00
Michael Kirk
9c56660618
profile key flag and debug action
...
// FREEBIE
2017-08-29 10:35:54 -04:00
Michael Kirk
d8aa9b4a3d
better comment per CR
...
// FREEBIE
2017-08-29 10:35:18 -04:00
Michael Kirk
0feb966a1c
comment cleanup / code formatting
...
// FREEBIE
2017-08-29 10:35:18 -04:00
Michael Kirk
526d5e33b9
Sync profile key to sibling devices when updating contact
...
// FREEBIE
2017-08-29 10:35:18 -04:00
Michael Kirk
46919e4702
Add own profile key to multidevice provisioning message
...
// FREEBIE
2017-08-29 10:35:18 -04:00
Michael Kirk
1f3d2d1ed6
Send any profile key in contact sync
...
// FREEBIE
2017-08-29 10:35:18 -04:00
Matthew Chen
d3d9e5dabc
Fix scroll down button state.
...
// FREEBIE
2017-08-28 14:55:39 -04:00
Matthew Chen
cdfdb80fd1
Respond to CR.
...
// FREEBIE
2017-08-28 13:11:13 -04:00
Matthew Chen
7e4859241a
Clear the local profile avatar immediately when we request upload form.
...
// FREEBIE
2017-08-28 13:09:33 -04:00
Matthew Chen
0fa19b5269
Clear own avatar on service if necessary when updating local profile. Clear others' avatar when appropriate.
...
// FREEBIE
2017-08-28 11:59:36 -04:00
Matthew Chen
50a8d0f165
Clear own avatar on service if necessary when updating local profile. Clear others' avatar when appropriate.
...
// FREEBIE
2017-08-28 11:57:39 -04:00
Michael Kirk
1e51bf4899
extract event names
...
// FREEBIE
2017-08-25 17:19:31 -04:00
Michael Kirk
251e206b6d
profiles vs. censorship circumvention
...
// FREEBIE
2017-08-25 17:17:43 -04:00
Matthew Chen
f2ae73e156
Remove obsolete "scrollLaterTimer" hack in messages view.
...
// FREEBIE
2017-08-25 17:01:13 -04:00
Matthew Chen
8794880db8
Unbound message bubble cache size and DRY up cache logic.
...
// FREEBIE
2017-08-25 17:01:13 -04:00
Matthew Chen
c90ca331e3
Respond to CR.
...
// FREEBIE
2017-08-25 16:50:14 -04:00
Matthew Chen
6b8e189f45
Add view to Crop and scale avatar.
...
// FREEBIE
2017-08-25 16:02:15 -04:00
Matthew Chen
728028563c
Add double-tap to zoom out.
...
// FREEBIE
2017-08-25 16:02:15 -04:00
Matthew Chen
e7b32f9fd1
Add double-tap to zoom out.
...
// FREEBIE
2017-08-25 16:02:15 -04:00
Matthew Chen
2b50eb5acc
Add view to Crop and scale avatar.
...
// FREEBIE
2017-08-25 16:02:15 -04:00
Matthew Chen
2c301feeb7
Add view to Crop and scale avatar.
...
// FREEBIE
2017-08-25 16:02:15 -04:00
Matthew Chen
374a59e937
Remove an old TODO.
...
// FREEBIE
2017-08-25 16:01:09 -04:00
Matthew Chen
e8a6ca1c22
Show an error when profile name is too long.
...
// FREEBIE
2017-08-25 16:01:09 -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
89bacf5cce
Respond to CR.
...
// FREEBIE
2017-08-24 17:29:52 -04:00
Matthew Chen
65db75a91d
Fix group profile whitelist check.
...
// FREEBIE
2017-08-24 17:29:32 -04:00
Matthew Chen
9bf80a215f
Don't add avatar to new contacts.
...
// FREEBIE
2017-08-24 17:28:18 -04:00
Michael Kirk
903d792af4
Debug action to clobber local profile and key
...
// FREEBIE
2017-08-24 14:52:49 -04:00
Michael Kirk
041c5a4a11
CR: setNeedsLayout
...
// FREEBIE
2017-08-24 14:44:14 -04:00
Michael Kirk
f49e122567
listen for profile names change notifications
...
// FREEBIE
2017-08-23 17:09:43 -04:00
Michael Kirk
96f0ab215c
wip
2017-08-23 16:42:55 -04:00
Michael Kirk
fd99354673
profile name vs. verified in ContactTableViewCell
...
// FREEBIE
2017-08-23 16:42:22 -04:00
Michael Kirk
e54e1d11c0
show profile name snippet in inbox and conversation settings
...
// FREEBIE
2017-08-23 15:56:58 -04:00
Michael Kirk
279eb89023
Fix whitelist
...
whitelist cache are a bunch of NSNumber's, we need to check their
boolValue
// FREEBIE
2017-08-23 14:59:25 -04:00
Matthew Chen
b28a6bab26
Respond to CR.
...
// FREEBIE
2017-08-23 14:57:02 -04:00
Matthew Chen
57b76b3411
Ensure message view range is properly truncated with view is configured.
...
// FREEBIE
2017-08-23 14:56:16 -04:00
Matthew Chen
15d2fd23d7
Rework save/cancel buttons in profile view.
...
// FREEBIE
2017-08-23 14:07:31 -04:00
Matthew Chen
68309eb00f
Rework save/cancel buttons in profile view.
...
// FREEBIE
2017-08-23 13:31:06 -04:00
Michael Kirk
0a57e7db09
Fix slow start crash after upgrade to 2.16
...
We were opening a write transaction before our sync extensions were
registered. This seems to have caused our views to rebuild themselves
once they did register, which in turn can cause device timeout.
Instead of opening transcations in `init`, we only build the
localProfile once it's needed.
A future PR will ensure transactions
aren't being created before syncViews are registered.
// FREEBIE
2017-08-23 11:02:24 -04:00
Matthew Chen
5e6f5804c1
Respond to CR.
...
// FREEBIE
2017-08-21 17:50:40 -04:00
Matthew Chen
584ddab0b9
Show "share profile with group" banner.
...
// FREEBIE
2017-08-21 17:49:54 -04:00
Matthew Chen
ae1908c40c
Show "share profile with group" banner.
...
// FREEBIE
2017-08-21 17:49:54 -04:00
Matthew Chen
68ee56174a
Pad empty profile names instead of nil.
...
// FREEBIE
2017-08-21 17:49:04 -04:00
Matthew Chen
7eeb326865
Fix minor build error.
...
// FREEBIE
2017-08-21 17:40:18 -04:00
Matthew Chen
6dda535f24
Rework the profile view.
...
// FREEBIE
2017-08-21 17:32:01 -04:00
Matthew Chen
313d06b31d
Rework the profile view.
...
// FREEBIE
2017-08-21 17:32:01 -04:00
Matthew Chen
020d2c567a
Rework the profile view.
...
// FREEBIE
2017-08-21 17:32:01 -04:00
Matthew Chen
3181ee7882
Rework the profile view.
...
// FREEBIE
2017-08-21 17:32:01 -04:00
Matthew Chen
9dfeb132cb
Respond to CR.
...
// FREEBIE
2017-08-21 17:27:30 -04:00
Matthew Chen
1e43e93371
Observe profile changes in conversation view.
...
// FREEBIE
2017-08-21 17:25:07 -04:00
Matthew Chen
14d472781f
Respond to CR.
...
// FREEBIE
2017-08-21 17:13:36 -04:00
Matthew Chen
a340c9ebdc
Clean up ahead of CR.
...
// FREEBIE
2017-08-21 17:05:42 -04:00
Matthew Chen
4578a72ab2
Reorder where contact offers appear.
...
// FREEBIE
2017-08-21 17:05:42 -04:00
Matthew Chen
02c96b7b0e
Rework the contact offers.
...
// FREEBIE
2017-08-21 17:05:42 -04:00
Matthew Chen
9e02524b0b
Rework the contact offers.
...
// FREEBIE
2017-08-21 17:05:42 -04:00
Matthew Chen
c2f9d7dcb2
Rework the contact offers.
...
// FREEBIE
2017-08-21 17:05:42 -04:00
Matthew Chen
265bdce0ba
Start reworking the contact offers.
...
// FREEBIE
2017-08-21 17:05:42 -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
72fbb02028
aes-gcm via openssl
...
// FREEBIE
2017-08-21 16:37:16 -04:00
Matthew Chen
27e496ad06
Respond to CR.
...
// FREEBIE
2017-08-21 10:10:22 -04:00
Matthew Chen
1b055c485d
Rework "cancel navigate back" logic.
...
// FREEBIE
2017-08-21 10:10:22 -04:00
Matthew Chen
25b0f79615
Rework "cancel navigate back" logic.
...
// FREEBIE
2017-08-21 10:10:22 -04:00
Matthew Chen
08347478a2
Implement alternative approach to veto-able back buttons.
...
// FREEBIE
2017-08-21 10:10:22 -04:00
Matthew Chen
9d8c396848
Add profile view to upgrade/nag workflow.
...
// FREEBIE
2017-08-21 10:10:22 -04:00
Matthew Chen
ffb4b3f9d2
Add profile view to registration workflow.
...
// FREEBIE
2017-08-21 10:10:22 -04:00
Michael Kirk
7c386b1d1e
CR: RTL, trim profile names, ensure not empty
...
- RTL support with localizable format strings
- Trim decrypted profile names
- more rigorous empty check
// FREEBIE
2017-08-17 12:24:31 -04:00
Michael Kirk
4511b4015f
Clarify where we use the profile name
...
Add some hints to differentiate profile name usage from a name pulled
from the contacts.
// FREEBIE
2017-08-17 12:24:31 -04:00
Matthew Chen
164bf19b47
Respond to CR.
...
// FREEBIE
2017-08-17 11:22:25 -04:00
Matthew Chen
d476bc286d
* Add debug UI tools for clearing and logging the profile whitelist.
...
* Auto-add new contact threads to profile whitelist when local user sends first message to that thread.
* Ensure dynamic interactions have a non-negative timestamp even if the conversation was empty.
* Only call updateMessageMappingRangeOptions _after_ beginLongLivedReadTransaction and updating messageMappings.
* Improve documentation around how to avoid corrupt mappings in conversation view.
* Fix edge cases around large initial range sizes.
* Always treat dynamic interactions as read.
* Rebuild the “unseen” database views to remove dynamic interactions (see above).
// FREEBIE
2017-08-17 11:22:25 -04:00
Matthew Chen
0b14f87575
Improve comments about mapping consistency in conversation view.
...
// FREEBIE
2017-08-17 11:22:25 -04:00
Michael Kirk
e08fa4bcec
Fix jolting animation after sending a message
...
When we send the nth message, we retain the footer for the n-1th message
until the nth message is successfully sent.
1. leave the footer on the n-1th message
2. draw the nth message with the "..." footer
3. update the nth message with the "sent" footer and hide the footer for
the n-1th message
In the normal case this all happens very quickly, which results in some
unpleasant flicker every time you send a message.
The concession here is that we'll only print the n-1th footer if the
outgoing message *fails*. So until we implement a design more like
Android's double-check for sent/delivery, the user will not be able to
distinguish between a sent and delivered message *while* their message
is outgoing.
In my opinion the lack of jank in the normal case makes the app
supercedes this use case.
// FREEBIE
2017-08-17 11:19:46 -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
Matthew Chen
6c3662b944
Increase max conversation range length.
...
// FREEBIE
2017-08-16 17:07:18 -04:00
Matthew Chen
ddd8c9ff5f
Respond to CR.
...
// FREEBIE
2017-08-16 16:10:07 -04:00
Matthew Chen
3ecd415b84
Show activity indicator during profile update; trim whitespace from profile names.
...
// FREEBIE
2017-08-16 16:05:05 -04:00
Matthew Chen
943945b4bd
Fix “profiles not encoded” bug.
...
// FREEBIE
2017-08-16 16:03:16 -04:00
Matthew Chen
46d27cef30
Respond to CR.
...
// FREEBIE
2017-08-16 10:46:56 -04:00
Matthew Chen
1dd75a05ff
Tweak concurrency in profile manager.
...
// FREEBIE
2017-08-16 10:40:17 -04:00
Matthew Chen
02f8b13f4f
Rework concurrency in the profile manager.
...
// FREEBIE
2017-08-16 10:40:17 -04:00
Matthew Chen
b2360ace6e
Fix layout glitch in messages view.
...
// FREEBIE
2017-08-16 10:38:29 -04:00
Matthew Chen
f618f87825
Respond to CR.
...
// FREEBIE
2017-08-15 17:02:07 -04:00
Matthew Chen
90f959d0ab
Respond to CR.
...
// FREEBIE
2017-08-15 16:47:12 -04:00
Matthew Chen
cdb181eadc
Sketch out profile header in app settings view.
...
// FREEBIE
2017-08-15 16:47:12 -04:00
Matthew Chen
13aea66878
Sketch out profile header in app settings view.
...
// FREEBIE
2017-08-15 16:47:12 -04:00
Michael Kirk
abec536729
simplify check for max file size per CR
...
// FREEBIE
2017-08-15 16:25:01 -04:00
Michael Kirk
2c3e99c372
better var name per code review
...
// FREEBIE
2017-08-15 15:51:41 -04:00
Michael Kirk
fd02644ca7
resize profile avatar
...
// FREEBIE
2017-08-15 15:51:41 -04:00
Michael Kirk
9f72db44ac
Avoid lossy re-encoding of profile image
...
// FREEBIE
2017-08-15 15:45:52 -04:00
Michael Kirk
0290f176c0
Use profile name/avatar when creating new contact
...
// FREEBIE
2017-08-15 15:45:52 -04:00
Michael Kirk
135243e383
CR: variable rename, better comments, fix up tests
...
// FREEBIE
2017-08-14 15:18:12 -04:00
Michael Kirk
7499b3aaf0
Avatar API integration / WIP crypto scheme
...
Crypto Scheme:
- Name (un)padding
- WIP AES-GCM (funtioning, but need to verify against android
implementation, and tag functionality)
Changes to avatar API:
- hard code avatar domain (cdn.signal.org)
- avatar form hands out new avatar key, invalidating old avatar
- preliminary aes-gcm integration
Also:
- New type to represent AES128 keys, rather than passing around opaque
data blobs everywhere, we can use the compiler to help us make sure
we're passing compliant keying material.
- Started using factory pattern for API requests. This is intended to be
a lighter weight way to implement new API requests, rather than the
current 1-method class ceremony.
// FREEBIE
2017-08-14 12:45:37 -04:00
Michael Kirk
283d36c55b
remove avatar digest.
...
For ease of CDN cache expiry, each new avatar will have a unique URL, so
no need for a separate digest. Contents of file at URL will be verified
by forthcoming crypto scheme.
// FREEBIE
2017-08-11 11:28:38 -04:00
Michael Kirk
fc3f9ae396
Replace server sent avatar URL with hardcoded
...
// FREEBIE
2017-08-11 11:19:05 -04:00
Michael Kirk
3d9796db77
Debug actions for calling
...
For testing stale hangup/busy messages
Extracted MessageSender promise API
Moved call debug actions to their own page
// FREEBIE
2017-08-11 09:21:11 -04:00
Michael Kirk
1ee27996e4
Merge branch 'hotfix/2.15.3.1'
2017-08-11 07:42:00 -04:00
Michael Kirk
8da3108b53
Drop stale EndCall/BusyCall messages
...
// FREEBIE
2017-08-11 07:35:48 -04:00
Michael Kirk
0e241299d2
Discard GroupInfoRequest from unknown group
...
// FREEBIE
2017-08-10 12:17:42 -04:00
Michael Kirk
a3ae22c84f
Upload profile avatar to service
...
WIP, this currently lacks crypto pending further discussion.
// FREEBIE
2017-08-09 11:44:34 -04:00
Michael Kirk
72b3f3779b
Discard GroupInfoRequest from unknown group
...
// FREEBIE
2017-08-08 12:17:26 -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
Matthew Chen
e01fbc247e
Refine profile logic.
...
// FREEBIE
2017-08-04 17:35:22 -04:00
Matthew Chen
09e65a674b
Incomplete work to upload avatars.
...
// FREEBIE
2017-08-04 17:35:16 -04:00
Matthew Chen
f6668d24c1
Download profile avatars.
...
// FREEBIE
2017-08-04 17:35:02 -04:00
Matthew Chen
9266c3a4f9
Clear profile state when a user’s profile key changes.
...
// FREEBIE
2017-08-04 17:34:27 -04:00
Matthew Chen
8b9749202d
Load local user profile avatar if necessary.
...
// FREEBIE
2017-08-04 17:34:27 -04:00
Matthew Chen
823927685d
Update profile on service.
...
// FREEBIE
2017-08-04 15:25:17 -04:00
Matthew Chen
83d01eed76
Don’t encrypt/decrypt avatar URL or digest.
...
// FREEBIE
2017-08-04 15:25:10 -04:00
Matthew Chen
f6bcff5427
Fix rebase breakage.
...
// FREEBIE
2017-08-04 15:23:17 -04:00
Matthew Chen
37ce388eb6
Add “add to profile whitelist” offer.
...
// FREEBIE
2017-08-04 15:23:02 -04:00
Michael Kirk
ed4de7e8af
Simplify code / pre-cache localNumber
...
Now that localNumber is read from a dedicated dbConnection we don't have
to worry about it blocking.
// FREEBIE
2017-08-04 15:19:26 -04:00
Matthew Chen
03774216a0
Respond to CR.
...
// FREEBIE
2017-08-04 10:32:00 -04:00
Matthew Chen
6ac4d8e971
Delete profile avatars on disk when unregistering.
...
// FREEBIE
2017-08-04 10:29:56 -04:00
Matthew Chen
ddf3929be1
Auto-add groups to profile whitelist groups when you make them.
...
// FREEBIE
2017-08-04 10:17:24 -04:00
Matthew Chen
ba506bf092
Respond to CR.
...
// FREEBIE
2017-08-04 10:16:17 -04:00
Matthew Chen
49e65ba1b1
Update user profile update date on successful update.
...
// FREEBIE
2017-08-04 09:45:33 -04:00
Matthew Chen
9c0f94f1c0
Fetch profiles from profile manager. Update profile manager with profile fetch results.
...
// FREEBIE
2017-08-04 09:45:33 -04:00
Matthew Chen
6ec756de44
Move profile manager to Signal.
...
// FREEBIE
2017-08-04 09:45:33 -04:00
Matthew Chen
540a0a8e48
Refine UserProfile class. Move local user properties to UserProfile.
...
// FREEBIE
2017-08-04 09:45:33 -04:00
Matthew Chen
a70bd3307d
Show threads if possible.
...
// FREEBIE
2017-08-04 09:35:10 -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
Matthew Chen
43b3abe321
Merge branch 'hotfix/2.15.2'
2017-08-03 13:10:01 -04:00
Matthew Chen
539490ee19
Respond to CR.
...
// FREEBIE
2017-08-03 12:05:53 -04:00
Matthew Chen
d9bc3ac806
Respond to CR.
...
// FREEBIE
2017-08-03 10:49:37 -04:00
Matthew Chen
9c5934359e
Don’t dismiss call view controller to present other view.
...
// FREEBIE
2017-08-03 10:41:16 -04:00
Matthew Chen
138301975c
Don’t dismiss call view controller to present other view.
...
// FREEBIE
2017-08-03 10:40:45 -04:00
Matthew Chen
791e270578
Terminate call if call view presentation is delayed.
...
// FREEBIE
2017-08-03 10:29:40 -04:00
Matthew Chen
634617b7d4
Terminate call if call view presentation is delayed.
...
// FREEBIE
2017-08-03 10:26:22 -04:00
Michael Kirk
81d7f28253
Timer to ensure call screen shown
...
// FREEBIE
2017-08-02 19:13:46 -04:00