Commit graph

10693 commits

Author SHA1 Message Date
Matt Corallo
e7f3e52b6c Remove NaCL! 2015-01-14 11:39:36 -10:00
Matt Corallo
2eac191a6a Merge pull request #123 from WhisperSystems/libts
libtextsecure split
2015-01-14 10:33:21 -10:00
Joe Bandenburg
ac8584dd85 Add JSCS and run as grunt test task
This change only introduces a single rule but more can easily be added
going forwards.
2015-01-14 10:00:40 -10:00
Matt Corallo
1d7afd2a3c Also run sauce tests in firefox 2015-01-14 09:35:58 -10:00
Matt Corallo
325115b7ea Skip NaCL if we're not running from chrome-extension: 2015-01-14 09:35:57 -10:00
Matt Corallo
5785f4033c Compile curve25519/webcrypto into libtextsecure.js 2015-01-14 09:35:57 -10:00
Matt Corallo
07899557dc Give libtextsecure its own components (with way fewer deps) 2015-01-14 09:35:57 -10:00
Matt Corallo
899d756469 Split tests between libtextsecure and main 2015-01-14 09:35:57 -10:00
Matt Corallo
8ad1a38b5b Move js files around for libtextsecure split 2015-01-14 09:35:57 -10:00
Matt Corallo
444b765dfc Remove unused function in _test.js 2015-01-14 09:35:57 -10:00
Matt Corallo
13d403b334 Switch to isNumberSane in group storage 2015-01-14 09:35:57 -10:00
Matt Corallo
17782660e2 Add isNumberSane to textsecure.utils for basic validation 2015-01-14 09:35:57 -10:00
Matt Corallo
6b933455e3 Merge pull request #108 from TheBlueMatt/refreshgroup
Replace all the refreshGroups stuff
2015-01-14 09:35:20 -10:00
Matt Corallo
eac506557f Replace refreshGroups with singular refreshGroup on send 2015-01-14 09:34:36 -10:00
Matt Corallo
0b19e5b9c3 Replace numer->group with group->number->registrationId tracking 2015-01-14 09:34:36 -10:00
Matt Corallo
67bb400b87 Revert "Don't refreshGroups in tryMessageAgain", making a better one
This reverts commit f9e68be45b.

Conflicts:
	js/sendmessage.js
2015-01-14 09:34:36 -10:00
lilia
d119bdff01 restore default avatars 2015-01-14 01:37:41 -10:00
Matt Corallo
1e4a7108e3 Merge pull request #120 from WhisperSystems/testvectors
Re-add v3 testvectors with fixed sauce
2015-01-12 23:23:56 -10:00
Matt Corallo
fb03879d02 Re-add v3 testvectors with fixed sauce 2015-01-12 23:20:06 -10:00
lilia
d2ab8ddd5b Use a newer chrome version
One with webcrypto support
2015-01-12 23:16:20 -10:00
lilia
5c2006e159 Fix build: Revert "Update some of the testvectors to v3"
This reverts commit 33429bd6f7.
2015-01-12 22:29:23 -10:00
Matt Corallo
33429bd6f7 Update some of the testvectors to v3 2015-01-12 21:34:12 -10:00
Matt Corallo
2b0866ee1f Bring protocol_test back in-line with new APIs 2015-01-12 21:34:12 -10:00
Matt Corallo
6124084807 Bring padding calculation in-line with android 2015-01-12 21:26:12 -10:00
lilia
d8efc4d216 Handle incoming group avatars on group creation 2015-01-11 12:33:59 -10:00
lilia
3d6c251fd1 Group avatars 2015-01-11 01:27:22 -10:00
lilia
d52db8fe6f Render group updates
Not pretty, but it works. Also allows for later localization.
Copy/behavior is borrowed from the Android client.

Closes #104
Fixes #65
2015-01-10 08:08:20 -10:00
Markus Rothe
bcff1cf991 README.md: make links clickable 2015-01-09 07:55:14 -10:00
lilia
d08c2e496d Re-enable sauce for PR's
Revert "Do not run saucelabs tests on pull requests because they will fail"

This reverts commit 7b851ba548.

This seemed like a good idea at the time, but it prevents tests from
being run on PR's made from branches within our own fork. Also, in
hindsight, I find that the "merge with caution" alert banner is an
appropriate adornment for PR's which have not been able to run the
saucelabs tests due to their alien origin.
2015-01-07 19:33:23 -10:00
lilia
4e6faf4e27 Always listen for (re-)registration events
If we clear local storage and re-register in a foreground page, the
background page needs to re-init its websocket with the new account
credentials.
2015-01-07 19:09:07 -10:00
Matt Corallo
9a30a1e175 s/\t/ /g in manifest.json 2015-01-06 14:52:15 -08:00
Matt Corallo
d9db0f53e7 s/\t/ /g in {background,options}.html 2015-01-06 14:51:59 -08:00
Matt Corallo
b070c6ccb0 s/\t/ /g in stylesheets/options.css 2015-01-06 14:49:04 -08:00
Matt Corallo
2d41385369 Remove last \t in crypto_test.js 2015-01-06 14:47:39 -08:00
Matt Corallo
7ebf0f5085 Remove last \t in protocol.js 2015-01-06 14:47:03 -08:00
Matt Corallo
2c781e5b62 s/\t/ /g in test/index.html 2015-01-06 14:46:33 -08:00
Matt Corallo
28aa0a5508 s/\t/ /g in fake_api.js 2015-01-06 14:46:23 -08:00
Matt Corallo
1f8b8cd0ea s/\t/ /g in testvectors.js 2015-01-06 14:44:25 -08:00
Matt Corallo
406be10f53 s/\t/ /g in sendmessage.js 2015-01-06 14:39:54 -08:00
Lilia
cf99f03acd Merge pull request #107 from zmanian/FixTravisBuildsOnPullRequests
Fix for Travis Builds on pull requests
2015-01-03 10:42:17 +01:00
Zaki Manian
7b851ba548 Do not run saucelabs tests on pull requests because they will fail 2015-01-02 20:33:52 -08:00
lilia
fca67d7b0e Simplify pushMessageContent handler slightly
New private conversations have their type set in onMessageReceived. New
group conversations should be handled the same way as normal group
updates. It was pointed out we should never have to handle a group
message without a preceding group update, as those would be rejected by
textsecure.processDecrypted. An exception would be if you delete the
group from indexedDB but not localStorage, but that's not a mode we
should be supporting.

Also in this change I switched to instantiating a new conversation
object on every call to handlePushMessageContent. Originally, I thought
to use the local conversation list as a cache, but it's a bit simpler to
re-read from the database every time for now. Later on we should revisit
and optimize for fewer read/writes per incoming message.
2014-12-24 15:37:05 -08:00
lilia
0ea176dfa0 Don't require a conversation name
Just display a sensible default in the frontend if it's unset.
For private conversations this should be the phone number, for
groups, the list of numbers.
2014-12-24 14:32:11 -08:00
lilia
ff259a7dee Tolerate extra whitespace in the registration code field 2014-12-24 14:31:04 -08:00
lilia
0292c12712 Catch and save Bad Mac errors on the incoming message model 2014-12-23 18:31:57 -08:00
lilia
40b54185f3 If we happen to get a group message with no update, use a blank name 2014-12-23 15:07:43 -08:00
lilia
f23403f82b Fix arguments to sendMessageProto in tryMessageAgain
As ov ccc98d2 sendMessageProto takes a timestamp for the first argument,
in service of app-level delivery receipts.
2014-12-23 15:02:03 -08:00
lilia
f9e68be45b Don't refreshGroups in tryMessageAgain
This was intended to sync the group state of a recently re-installed
client, but is prone to overkill when we have a lot of old stale groups
around. Also this implementation incurs some rate limit errors from the
server.
2014-12-23 14:28:19 -08:00
Dave Sescleifer
2462aba24b Fixed timestamps and added last message to the gutter 2014-12-22 23:38:26 -08:00
Dave Sescleifer
1c47fb7ed8 Contact name now overflows into ellipsis 2014-12-22 23:38:26 -08:00