Scott Nonnenberg
82b2a611e3
MessageView: Always remove errors on re-render to prevent doubles
...
FREEBIE
2017-08-07 16:14:49 -07:00
Scott Nonnenberg
78c02f1154
Restore 'cancel' button on delete message confirmation dialog
...
FREEBIE
2017-08-07 16:14:49 -07:00
Scott Nonnenberg
ec70170829
ConversationView.unload: Add ability to provide reason for logging
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
c0f8812f9b
ConversationView: when windows are closed, call unload()
...
Anyway, unload() is a more comprehensive method for doing what the close
handler was trying to do before.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
65283d2794
Unload conversations and old messages every half-hour
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
31d7e652fe
Dismiss the app loading screen if we failed to connect to socket
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
305bd6b3b8
App loading screen: show messages processed so far
...
Also, show the same loading screen on index.js before we've bootstrapped
the app.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
39795170c1
Handle the 'extension loaded, reopen window' scenario
...
Not sure exactly how to think about Chrome app lifetimes, so we're
being conservative. We only show the full-application loading screen
once, on first display of the inbox.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
53f2bfbb57
Animated loading screens on startup and first conversation load
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
3e8b34f3d0
findOrCreateById instead of private-specific method
...
Anyway, findOrCreateById with no type didn't succeed, because the
conversation didn't validate.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
b985228160
Last seen indicator/scroll down button - defensive removal
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
e6859a3684
Ensure that promises always resolve, or that rejections are okay
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
5da324103a
Throttle calls to getProfile when opening conversation
...
We don't want to throttle other calls to getProfile, so we localize this
to the fetch we do when we first open a conversation.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
aa80cdd74d
ConfirmationDialogView: Make showCancel an explicit option
...
Also, don't call resolve/reject callbacks if they weren't provided.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
14765599f3
Delete individual message
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
80a2a01e37
Remove jitter on verifying/unverifying safety number
...
On every click, even when sub-panes were open, we were calling
markRead(), which would save the conversation model with the new
unreadCount. The KeyVerificationPanelView was wired up to the change
event on conversation, so it would render with the results of that
update, then finally the user's intended update.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
12b2674bde
Show size of files even if size not precomputed for attachment
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
4124d5cb9b
Show 'Message not sent' only if 'Some recipients failed' not showing
...
Also switch up the visual style for 'Some recipients failed' text to
match the more-visible 'Message not sent' text and the 'Resend' link.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
25243ad9de
Send warning: Show single problematic group member, not group name
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
697079cf9b
Add else handlers with logging in toggleVerified catch handler
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
8112cd220a
Show warning when we discover key change on verify
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
5bba6d3f17
setTrusted() -> setApproved() to dismiss the five-second warning
...
This change makes sense, since there was already a reference in the code
to the then-nonexistent setApproved()!
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
7ab20f09cc
Fix focus issues with identity key send view
...
Tabbing right after entering the view would cause everythign to go crazy
as focus went back to the pane you were just on. This change both sets
the proper focus on load of that view (on the cancel button) and hides
other panes when they aren't active, only making them visible again when
they are once again the 'top' pane.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
ff4fde651c
Make it clear in conversation just some recipients failed
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
12914307f1
Improve experience when discovering identity key error on send
...
New experience in the Message Detail view when outgoing identity key
errors happen, matching the Android View.
'View' button is only shown on outgoing key errors right now.
When a contact with an outgoing identity key error is clicked, they are
taken to a view like the popup that comes up on Android: an explanation
of what happened and three options: 'Show Safety Number', 'Send Anyway',
and 'Cancel'
Contacts are now sorted alphabetically, with the set of contacts with
errors coming before the rest.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
b6cca41a0c
Update verification-related strings to better match mobile app
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
5b46ef3562
Show last seen indicator for keychange/verification notifications
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
1fedc75e5d
Handle unverified length of zero
...
This can happen with unknown groups, where we don't know the list of
members but we're receiving messages. It's generally not a good
experience, but we shouldn't crash.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
30bc3fca3a
MessageView: Be resilient to multiple renders of a network error
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
d1fa28b706
Object.assign -> _.extend(), for to make Chrome 45 and below work
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
1e8ae774a2
Differentiate between local and remote trust decisions
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
16433d661a
Show call to action on group member list when verifying
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
31bf05e14a
Add verified state summary to top of safety number screen
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
11372b4e00
Add icons for keychange and expiration timer in-conversation items
...
The shield matches the Android app's key change notification, and the
clock icon was easy to do and makes it easier to visually distinguish
those items in the conversation history.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
c714fb6dbf
Shadow/icon/blue for banner, better verify advisories in dark theme
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
1d7cbc14fd
Fix a couple bind()) issues when getting verified state
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
b0dbecb4e2
Check trust store for identity key information on every new message
...
It's debounced so it doesn't go too crazy.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
782c484680
Check trust store for latest identity key info before sending
...
We definitely want the latest information from our local database before
attempting to send.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
fc39241003
Ensure that we pull verified state only after getting profiles
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
36c28296e9
Remove extraneous logging
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
9b864c8675
Re-render verified change conversation items when convo changes
...
If the contact's name changes, for example.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
1cf9289b1a
Add items to conversation history when user verifies/unverifies
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
a827334c3e
Allow re-send of messages in msg detail view on OutgoingKeyError
...
We also show more errors than we used to in the MessageDetail screen
to help make it clear what is happening, and why the user would need to
re-send.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
688cae6374
Remove empty string class passed to contact template
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
8264f3ba33
Make the term 'Verified' fully localizable
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
e9968c3118
Remove comments after NewGroupUpdateView investigation
...
It doesn't run today - it depends on RecipientsInputView, which depends
on Backbone.TypeaheadCollection which doesn't currently exist in the
product.
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
8d29cb9830
Prevent access to Safety Number when talking to yourself
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
c7e385eb38
Remove 'safety number approval' option from settings dialog
...
Also sync templates in test/index.html and background.html
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
9204188aa3
A bit of cleanup after some early code review
...
FREEBIE
2017-08-04 12:03:25 -07:00
Scott Nonnenberg
2955c36b3e
Confirmation dialog: Make keyboard-accessible: escape to cancel
...
And proper tab order. Then some more work to re-focus on the message
composition field after the dialog shows up and steals focus.
FREEBIE
2017-08-04 12:03:25 -07:00