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
Matthew Chen
6c3662b944
Increase max conversation range length.
...
// FREEBIE
2017-08-16 17:07:18 -04:00
Matthew Chen
b2360ace6e
Fix layout glitch in messages view.
...
// FREEBIE
2017-08-16 10:38:29 -04:00
Matthew Chen
37ce388eb6
Add “add to profile whitelist” offer.
...
// FREEBIE
2017-08-04 15:23:02 -04:00
Matthew Chen
282ac4bb29
Add “share profile” row to conversation settings.
...
// FREEBIE
2017-08-02 10:50:44 -04:00
Matthew Chen
a0eead37c7
Ensure size of message mappings range increases monotonically.
...
// FREEBIE
2017-07-28 17:13:35 -04:00
Matthew Chen
103a7fab36
Hide empty conversations in home view.
...
// FREEBIE
2017-07-27 15:39:26 -04:00
Matthew Chen
6858a1e944
Fix assert in conversation view around nil title.
...
// FREEBIE
2017-07-27 12:08:21 -04:00
Matthew Chen
803e91c3ce
Fix assert in conversation view around nil title.
...
// FREEBIE
2017-07-27 12:08:21 -04:00
Matthew Chen
d80f470c2c
Respond to CR.
...
// FREEBIE
2017-07-26 12:39:43 -04:00
Matthew Chen
2e7fe5cfd5
Rework database observation in home and message views.
...
// FREEBIE
2017-07-26 12:17:08 -04:00
Matthew Chen
1f1a681180
Rework database observation in home and message views.
...
// FREEBIE
2017-07-26 12:17:08 -04:00
Matthew Chen
f0cecfad11
Surface memory leaks by logging the deallocation of view controllers.
...
// FREEBIE
2017-07-26 11:59:00 -04:00
Matthew Chen
fdac0305cb
Update analytics macros.
...
// FREEBIE
2017-07-21 15:04:41 -04:00
Matthew Chen
14621e1288
Respond to CR.
...
// FREEBIE
2017-07-21 14:49:24 -04:00
Matthew Chen
02c510691c
Adapt number formatting to RTL.
...
// FREEBIE
2017-07-21 14:49:12 -04:00
Matthew Chen
5edec99fd6
Adapt number formatting to RTL.
...
// FREEBIE
2017-07-21 14:49:12 -04:00
Matthew Chen
c799e18c74
Adapt voice messages UI to RTL.
...
// FREEBIE
2017-07-21 14:49:12 -04:00
Matthew Chen
693e74e868
Adapt conversation settings view to RTL.
...
// FREEBIE
2017-07-21 14:49:12 -04:00
Matthew Chen
d36e60b0e9
Respond to CR.
...
// FREEBIE
2017-07-14 20:46:36 -04:00
Michael Kirk
a59eb25aef
extract dismiss string -> CommonStrings.dismissButton
...
// FREEBIE
2017-07-13 17:08:41 -04:00
markus.fassbender
422336db32
fixes compiler warnings FREEBIE
2017-07-08 17:24:22 -05:00
Matthew Chen
0244e134f5
Block device from sleeping during certain activities.
...
// FREEBIE
2017-07-06 17:35:47 -04:00
Matthew Chen
07c8eb54b7
Prevent "scroll to button" button from blipping.
...
// FREEBIE
2017-07-04 11:15:21 -04:00
Michael Kirk
c6cd0bbcae
Always show timestamp after unread indicator
...
// FREEBIE
2017-07-04 09:15:46 -04:00
Michael Kirk
bef3a56e50
DebugUI: create fake unread messages
...
helpful for printing unread indicator
// FREEBIE
2017-07-04 09:15:46 -04:00
Matthew Chen
f7c81bae9d
Show the “scroll down” button if user scrolls up, even if there are no unread messages.
...
// FREEBIE
2017-06-22 15:08:35 -04:00
Matthew Chen
eff1974eeb
[SSK] Reduce chattiness of logs; increase log file sizes.
...
// FREEBIE
2017-06-22 10:10:56 -04:00
Matthew Chen
a039aac36d
Improve UX for multiple “no longer verified” members of a group.
...
// FREEBIE
2017-06-21 15:01:06 -04:00
Matthew Chen
b39c4905c3
Invalid message adapter cache when app becomes visible.
...
// FREEBIE
2017-06-21 10:00:56 -04:00
Michael Kirk
11fa08470d
[JSQ] Fix: can't dismiss keyboard after sending
...
// FREEBIE
2017-06-20 17:45:28 -04:00
Michael Kirk
8898f4a6d4
CR: future proof view placement if we change hierarchy
...
// FREEBIE
2017-06-20 17:31:47 -04:00
Michael Kirk
c70b1e9681
Make system messages deletable
...
// FREEBIE
2017-06-20 17:18:19 -04:00
Michael Kirk
fbba2f5dd7
colocate CollectionViewDelegate methods
...
// FREEBIE
2017-06-20 17:18:19 -04:00
Matthew Chen
de453b2960
Respond to CR.
...
// FREEBIE
2017-06-20 13:12:51 -04:00
Matthew Chen
5796bbd858
Max out the unread count at 99.
...
// FREEBIE
2017-06-20 13:02:25 -04:00
Michael Kirk
0419d35f12
CR: rename method
...
not always resized when used
// FREEBIE
2017-06-20 11:04:11 -04:00
Michael Kirk
8fc2289152
prefer becomeFirstResponder
...
Feels a little more reasonable than interecepting canBecomeFirstResponder
// FREEBIE
2017-06-20 11:04:11 -04:00
Michael Kirk
b4d3e8e744
Fix: tapping input obscures last messages
...
// FREEBIE
2017-06-20 11:04:11 -04:00
Matthew Chen
d01a52758b
Respond to CR.
...
// FREEBIE
2017-06-19 17:41:30 -04:00
Matthew Chen
0d07e0222f
Avoid stale mapping in conversation view.
...
// FREEBIE
2017-06-19 17:41:30 -04:00
Matthew Chen
331a1e90e3
Avoid stale mapping in conversation view.
...
// FREEBIE
2017-06-19 17:41:30 -04:00
Matthew Chen
f6f08891eb
Avoid stale mapping in conversation view.
...
// FREEBIE
2017-06-19 17:41:30 -04:00
Matthew Chen
d4a6a35ee3
Avoid stale mapping in conversation view.
...
// FREEBIE
2017-06-19 17:41:30 -04:00
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
2017-06-19 09:16:37 -04:00
Michael Kirk
1125e2ac99
System messsages can show timestamp
...
added the JSQCollectionViewCell cellTopLabel to the system message
layout
// FREEBIE
2017-06-19 09:14:52 -04:00
Matthew Chen
104a548eb2
Ensure message mapping is up-to-date when app returns from background.
...
// FREEBIE
2017-06-17 14:59:46 -04:00
Matthew Chen
e14b9b511d
Respond to CR.
...
// FREEBIE
2017-06-17 14:03:44 -04:00
Matthew Chen
8649b26033
Don’t auto-scroll after “loading more messages” unless we have “more unseen messages”.
...
// FREEBIE
2017-06-17 13:55:50 -04:00
Matthew Chen
ab95b04e56
Respond to CR.
...
// FREEBIE
2017-06-17 13:47:10 -04:00
Matthew Chen
90c4ba27bf
Respond to post-holiday code reviews.
...
// FREEBIE
2017-06-17 13:38:19 -04:00
Matthew Chen
bd440f0878
Respond to post-holiday code reviews.
...
// FREEBIE
2017-06-17 13:38:19 -04:00
Michael Kirk
1661e8dc34
assume contact in 1:1 thread
...
// FREEBIE
2017-06-16 12:34:15 -04:00
Michael Kirk
a41b10a695
ignore tap on legacy non-blocking SN change message
...
// FREEBIE
2017-06-16 12:34:15 -04:00
Matthew Chen
35d68c6180
Fix "writes on long-lived read connection" issue.
...
// FREEBIE
2017-06-16 02:16:26 -04:00
Matthew Chen
f71f33c2a6
Respond to CR.
...
// FREEBIE
2017-06-15 15:36:27 -04:00
Matthew Chen
c7426f9343
Avoid crashing on startup due to database view creation.
...
* Substitute unread view for unseen view until unseen view is ready.
* Register as many views as possible async.
* Perform blocking, safe migrations before async registration of views.
* Add debug settings view for internal app stats.
* Show blocking overlay until async registration of database views is complete.
* Convert version migrations to use AppVersions.
// FREEBIE
2017-06-15 13:44:30 -04:00
Matthew Chen
6f1f1fac80
Improve handling of group creation failures.
...
// FREEBIE
2017-06-13 15:09:47 -04:00
Matthew Chen
a73c6ede60
Tweak verification UI.
...
* Add “tap for options” to verification banner copy.
* Add close button to banners.
* Always use shield icon for verification row in conversation settings view.
* Add action sheet to verification banner.
// FREEBIE
2017-06-12 15:52:38 -04:00
Matthew Chen
935244843e
Tweak verification UI.
...
* Add “tap for options” to verification banner copy.
* Add close button to banners.
* Always use shield icon for verification row in conversation settings view.
* Add action sheet to verification banner.
// FREEBIE
2017-06-12 15:51:21 -04:00
Matthew Chen
c18a670d6b
Don’t update expiration for messages twice.
...
// FREEBIE
2017-06-12 13:28:29 -04:00
Matthew Chen
027cd8cb34
Rework how messages are marked read.
...
// FREEBIE
2017-06-12 11:52:21 -04:00
Matthew Chen
7da28bd5dc
Multiple refinements around verification.
...
* Check for identity key before presenting fingerprint view.
* Show verification state in a separate subtitle in conversation view.
* Let users verify from group members view.
// FREEBIE
2017-06-09 16:58:00 -04:00
Matthew Chen
11ca51c95f
Show verification state banner. Show verification state in conversation settings view.
...
// FREEBIE
2017-06-09 16:21:59 -04:00
Matthew Chen
471e307ecc
Use checkmark to indicate verification status in conversation view header subtitle, fingerprint view, and in conversation settings row icon.
...
// FREEBIE
2017-06-09 13:12:33 -04:00
Matthew Chen
051b005582
Move QR code scanning to a separate view.
...
// FREEBIE
2017-06-09 07:48:48 -04:00
Matthew Chen
58ebebc97f
Move QR code scanning to a separate view.
...
// FREEBIE
2017-06-09 07:48:48 -04:00
Matthew Chen
fe0ddb53d2
Clean up ahead of PR.
...
// FREEBIE
2017-06-08 15:34:54 -04:00
Matthew Chen
3508feaec3
Convert FingerprintViewController to programmatic layout.
...
// FREEBIE
2017-06-08 14:55:26 -04:00
Matthew Chen
bc63a72c25
Add verification state change messages.
...
// FREEBIE
2017-06-08 10:44:23 -04:00
Michael Kirk
75bab75dc8
Show no redundant error when failing to send due to changed identity
...
The old "blocking" style SN alerts are deprecated. We maintain the
functionality to decrypt incoming messages from legacy SN alerts so that
users have time to recover their undecrypted messages.
// FREEBIE
2017-06-08 10:34:45 -04:00
Michael Kirk
f7468acad2
Properly dismiss file view after proceeding with share to no-longer
...
verified identity
// FREEBIE
2017-06-07 22:31:52 -04:00
Michael Kirk
4e995b76f3
Don't try to share file to untrusted identity
...
There's a problem with this approach - specifically we need to dismiss
the external file share view controller eventually.
But more generally, because SN can present a view controller, it's kind
success/retry handling is contextual to it's presenting view controller.
So, probably the thing to do is duplicate this logic at it's various
presentation contexts.
// FREEBIE
2017-06-07 22:31:52 -04:00
Michael Kirk
146031e4d5
update copy / remove some unused "unseen" tracking
...
// FREEBIE
2017-06-07 10:19:09 -04:00
Matthew Chen
b6ddea9eae
Sketch out OWSIdentityManager.
...
// FREEBIE
2017-06-07 10:18:16 -04:00
Matthew Chen
15074cdb8f
Clean up system message cells, make them tappable, etc.
...
// FREEBIE
2017-06-06 10:26:06 -04:00
Matthew Chen
2d76f2beb9
Respond to CR.
...
// FREEBIE
2017-06-06 10:15:56 -04:00
Matthew Chen
eb53958aeb
Clean up ahead of PR.
...
// FREEBIE
2017-06-06 10:15:56 -04:00
Matthew Chen
a013a7206e
Rework and unify the system messages.
...
// FREEBIE
2017-06-06 10:15:56 -04:00
Matthew Chen
9cdf907e20
Rework and unify the system messages.
...
// FREEBIE
2017-06-06 10:15:56 -04:00
Matthew Chen
2cbf1e1d05
Rework and unify the system messages.
...
// FREEBIE
2017-06-06 10:15:56 -04:00
Matthew Chen
74209561cc
Clean up ahead of PR.
...
// FREEBIE
2017-06-05 16:27:53 -04:00
Matthew Chen
dab8ddb37d
Rework appearance of the unread indicator.
...
// FREEBIE
2017-06-05 16:25:25 -04:00
Matthew Chen
165de573c5
Fix edge cases in the unseen indicator.
...
// FREEBIE
2017-06-05 16:21:26 -04:00
Matthew Chen
84d5ee8e47
Clean up ahead of PR.
...
// FREEBIE
2017-06-05 16:21:26 -04:00
Matthew Chen
a69c6cce4e
Decompose MessagesViewController, add “scroll to bottom button”, improve scrolling behavior.
...
// FREEBIE
2017-06-05 16:21:26 -04:00