Commit Graph

1562 Commits (0fac2e1d681dd23849a4b41a2a0fd80de826c24a)

Author SHA1 Message Date
lilia 657fa2725f Adjust hourglass vertical alignment 9 years ago
lilia 15a9423a17 Change Identity to Safety Numbers in conversation menu
Fixes #935
9 years ago
2-4601 669338c717 i18n 'Theme'
// FREEBIE
9 years ago
paolo.ingls@gmail.com d4f7b9984b Fixed bug920
//FREEBIE
9 years ago
lilia 51e902c26f Remove dead code 9 years ago
lilia 674eeb8313 Remove refs to appWindow
We only need the regular window, not the AppWindow interface, which is
specific to chrome apps.
9 years ago
lilia 9da4cdefd7 Style fix 9 years ago
Paolo Inglese 7cd45714a5 Font size should be adjustable
//FREEBIE
9 years ago
lilia fcffcd35af DRY 9 years ago
2-4601 81e1b84129 Fix 2nd person conjugation in exp. timer messages
// FREEBIE
9 years ago
lilia f8a3ae158c Remove log message 9 years ago
lilia 34888160bb Fix re-appearing disappearing message ui
Fix a bug where entering the message detail view and then going back
would cause the timer menu to appear.
9 years ago
lilia 94c1ac6f09 Fix message insertion for the first element inserted 9 years ago
lilia d3a2f5c838 Ignore expireTimer on session reset messages 9 years ago
lilia 4ee2652367 Fix wrong contact in some timer updates
Mistakenly showed 'You' for timer updates inferred from incoming
messages.
9 years ago
lilia 73e69fe5eb Update libsignal-protocol 1.1.7 9 years ago
lilia 7c81e4ed2e Delete extra space 9 years ago
lilia 790407d42e Add qr codes 9 years ago
lilia f05d693994 Switch from fingerprints to safety numbers 9 years ago
lilia 7fe708d195 Insert keychange advisories
On click, these open a verification panel for the relevant contact,
within this conversation.

// FREEBIE
9 years ago
lilia 1f0a93bf70 Ensure new installs default to non-blocking
// FREEBIE
9 years ago
lilia 1fe90ecdcb Add frontend for safety numbers approval setting
Adds the checkbox under settings.

// FREEBIE
9 years ago
lilia aa42139477 Implement non blocking option
// FREEBIE
9 years ago
lilia ce315f3f8e Add Events to SignalProtocolStore
Allows triggering and listening for events.

// FREEBIE
9 years ago
lilia 5899654ea5 Remove log message 9 years ago
lilia de744a6c55 Fix messages being inserted in the wrong place
Usually new elements are inserted in a predictable order relative to the
sort order of the models/collection, but it's not garaunteed. This fixes
up message element insertion to handle the general case where elements
can be added in any order and must be displayed in correct order as
determined by the collection's sort function. In the worst case, we'll
have to iterate over the entire list of elements to find the right spot,
but in practice most of the time we can short circuit based on the index
of the model or by looking for the predecessor or successor of the
element in question.
9 years ago
lilia 009098f8dd Insert inferred timer updates before the corresponding message 9 years ago
lilia d52050d43f Fix group timer updates 9 years ago
lilia 0bba096510 Use 'You' instead of your own phone number 9 years ago
lilia 1da44c847b Fix handling sent messages sans expirationStartTimestamp 9 years ago
lilia a12569e356 Fix destination on synced timer updates 9 years ago
lilia 86dbbc9f29 Allow null expireTimer in sendmessage 9 years ago
lilia 7eea88a545 Convert expirationStartTimestamp to number 9 years ago
lilia 56aee5e8ef Update conversation snippets automatically
Fixes stale snippets after the message has expired
9 years ago
lilia 8d16bfb65e Populate conversation snippet for timer updates 9 years ago
lilia e488c19889 Do not trigger notifications for timer updates 9 years ago
lilia 7a26cf79ee Insert timer update messages when inferring timer changes 9 years ago
lilia ad2174e279 Sync expirationStartTimestamp on outgoing messages
Linked devices need to know when to start the clock.
9 years ago
lilia 6074a29046 Send timer update messages when changing the timer 9 years ago
lilia 824b7417e9 Apply expireTimer to outgoing messages 9 years ago
lilia 2b2c6ab040 Frontend for timer updates and timer indicator 9 years ago
lilia 448835e4d5 Bail early when processing timer updates
Also let expireTimer default to 0.
9 years ago
lilia 4cd2c03687 Add clock svg style 9 years ago
lilia 7331d967d2 Add support for expiration timer updates messages 9 years ago
lilia e809a0cf8b Breakout timer rendering into its own view
Make width and height constant.
9 years ago
lilia bd713352e3 Hourglass can start at any percentage
This breaks the css-purity of our mixin but is necessary in order to
apply the initial offset of the hourglass animation dynamically, since
jquery can't manipulate arbitrary css on psuedo elements.
9 years ago
lilia 5f92ccd524 Render animated hourglass when messages are expiring 9 years ago
lilia 1383dc141f Ensure that expired messages are removed from the frontend 9 years ago
lilia 02ea4f2475 Use read receipt envelope to infer startExpirationTime
Avoids display of phantom messages that are only received and marked
read locally long after they have expired on another linked device.
9 years ago
lilia 96fd017890 Support for incoming expiring messages
When initialized, or when expiration-related attributes change, expiring
messages will set timers to self-destruct. On self-destruct they trigger
'expired' events so that frontend listeners can clean up any collections
and views referencing them.

At startup, load all messages pending expiration so they can start their
timers even if they haven't been loaded in the frontend yet.

Todo: Remove expired conversation snippets from the left pane.
9 years ago
lilia b888e01044 Add an index on message.expireTimer
This allows us to query all expiring messages on startup.
9 years ago
lilia b3e932dce8 Add protocol support for disappearing messages 9 years ago
lilia 5b5a430114 Support i18n with multiple links
We can now pass a variable number of hrefs into i18n_with_links rather
than just one.
9 years ago
lilia 9b645f90c8 Remove Android requirement from install flow
// FREEBIE
9 years ago
lilia b0c59233f3 Add test fixtures
Test page loads fixtures and renders the inbox view. This may be useful
for smoke testing style changes or generating screenshots with
pseudo-realistic data.

Includes a couple small changes to get rendering working outside the
app.
9 years ago
lilia c16e80c5e4 Let key verification view lazy-load keys
// FREEBIE
9 years ago
lilia fe209a2f41 Upgrade libsignal-protocol v1.1.6 9 years ago
lilia 7b3b01bdf6 Refactor registration event
Make AccountManager into an event target for better separation between
app and service-library handling of registration events.
9 years ago
lilia 6dcff46e26 Move chrome-specific calls to chromium.js
// FREEBIE
9 years ago
lilia b1afb79a14 Set theme based on master device userAgent
// FREEBIE
9 years ago
lilia 2b210b3fcd Fix undefined websocket port
Fixes #889

// FREEBIE
9 years ago
lilia edd6f58539 Update display when contact colors change
// FREEBIE
9 years ago
lilia 9db13310b4 Add port 80
// FREEBIE
9 years ago
lilia 384598fbcc Log websocket urls
// FREEBIE
9 years ago
lilia 0487fa3cd1 Add server fallback port 8443
// FREEBIE
9 years ago
lilia 487f75dd27 Fix lint
// FREEBIE
9 years ago
lilia f610233ef6 Add support for syncing blocked numbers
// FREEBIE
9 years ago
lilia 53f20640af Add support for syncing colors
// FREEBIE
9 years ago
lilia 141cdef2a4 Generalize toast view template
// FREEBIE
9 years ago
lilia ff490994ab Render emoji in group name in group updates
// FREEBIE
9 years ago
lilia baff77c509 Revert "Remove Android requirement from install flow"
This reverts commit 4b9f7d518e.
Put this back when iOS desktop support is ready for general release.
9 years ago
lilia 1d5471c318 Fix search tests
// FREEBIE
9 years ago
lilia 7e0df07e88 Fix tests
// FREEBIE
9 years ago
lilia 9deaa95e8c Strip unicode null from deviceNames
Not sure how or why but sometimes deviceNames arrive on the server
containing a null char.

// FREEBIE
9 years ago
lilia 43ca465eb9 Remove unused code
// FREEBIE
9 years ago
lilia 1c89142752 Customize emoji conversion
Use image tags with :emoji: in a title attribute for an optimal
copy/paste ux.

// FREEBIE
9 years ago
lilia f042378a37 Upgrade emoji support and switch to apple emoji
Use emojijs for replacing unicode with image tags for display. We were
already using it to replace colons with unicode. Additionally it has
a companion data repo that is kept up to date with images from all
the common image sets.

// FREEBIE
9 years ago
lilia 4b9f7d518e Remove Android requirement from install flow
// FREEBIE
9 years ago
lilia b5191e78c3 More themeing
Restyle message input and welcome screen
Cleanup search, headers

// FREEBIE
9 years ago
lilia 5333f89d9d Fix svg icon colors
// FREEBIE
9 years ago
lilia 6c05a71424 Tune up ios bubble style
// FREEBIE
9 years ago
lilia 8fbb0d05f5 Add settings ui for theme
// FREEBIE
9 years ago
lilia 7b9894d688 Refactor css to support theming
Move away from inline style attributes for setting contact colors.
Apply colors by name via css classes instead. Also lays groundwork
for syncing contact colors.

// FREEBIE
9 years ago
lilia 3531667207 Fix closing recorder when clicking away
// FREEBIE
9 years ago
lilia 87f4029210 Fix lint
// FREEBIE
9 years ago
lilia 3aa72d2244 Address large font size edge cases
Fix some visual bugs occuring at large font size:
  * Contact names break onto the next line after their avatars in
    message detail screen
  * Settings menu font-size failed to scale
  * Handle Content overflow in modals.

// FREEBIE
9 years ago
lilia b330b80484 Change font size on ctrl+scroll
Fixes #864

// FREEBIE
9 years ago
lilia 9fa7e7f462 Remove unused view
// FREEBIE
9 years ago
lilia 645e05c2b9 Add support for new fingerprint format
This will be ready to roll whenever Android/iOS is.

// FREEBIE
9 years ago
lilia 254b6621c2 Update libsignal-protocol v1.1.5
// FREEBIE
9 years ago
lilia 4f46a164ba Add voice notes
// FREEBIE
9 years ago
lilia d11f9fd538 Update libsignal-protocol v1.1.4
// FREEBIE
9 years ago
lilia 9ab64ec44d Allow localization of month-day format string
The short month-day format ex: 'Aug 8', is not built-in to momentjs, so
we need to localize it.

// FREEBIE
9 years ago
lilia e5b54d9b6a Bubble up InvalidStateErrors and log them
These may be indicative of a potentially fatal lack of disk space.

// FREEBIE
9 years ago
lilia 83629df560 Log on failure to fetch storage
// FREEBIE
9 years ago
lilia 67c7a06c28 Use momentjs for timestamp localization
Let momentjs handle proper pluralization of relative times. This comes
at the sacrifice of displaying 'minutes' in the conversation list
timestamp rather than 'min'. Note that we don't use moment's fromNow
instance method so as to preserve the rounding logic that matches the
Android client.

// FREEBIE
9 years ago
lilia 78b8fbc836 Update momentjs
// FREEBIE
9 years ago
lilia 4d9b6917d7 Fix timestamp tests
These were failing because chrome's i18n functions aren't available in
test.

// FREEBIE
9 years ago
lilia 688b297050 Move window.chrome reference to chromium.js
// FREEBIE
9 years ago
lilia fed8f62617 Remove untranslatable strings from locale file
// FREEBIE
9 years ago