lilia
3f37cd21a9
Remove remaining traces of localStorage
...
Add window.storage to the background page, which loads all data from the
'items' store in indexeddb, caching them in memory for synchronous
access, then override textsecure storage to use that in memory store.
2015-05-15 11:39:19 -07:00
lilia
a3c5b0959f
Port textsecure.storage.impl to indexeddb
2015-05-15 11:38:15 -07:00
lilia
d230df5622
Move local identitykey and registrationid to indexeddb
2015-05-15 11:38:14 -07:00
lilia
fe1d78b5fa
Load protobufs asynchronously. Fixes #223
2015-05-15 11:38:14 -07:00
lilia
b8c5bc293c
App windows cannot be refreshed
2015-05-15 11:38:10 -07:00
lilia
76e170686a
Make getBackground async
2015-05-12 15:39:15 -07:00
lilia
a57363f1c0
Update manifest to be a chrome packaged app
2015-05-12 15:39:14 -07:00
lilia
22796099d8
Fix manifest
2015-05-09 14:35:57 -07:00
lilia
7799bef86c
Tweak key conflict error messages
...
Be generic, because sometimes it's not TextSecure, but Signal.
2015-05-07 17:43:30 -07:00
lilia
6572c0836f
Get notification permission on install
...
Notifications are still configured off by default, but now we don't need
to trigger the pop-down permission dialogue if the user enables them.
2015-05-07 17:30:29 -07:00
lilia
8da062f75c
Resize icon to various resolutions
...
You want icon sizes? I got all the size you need.
2015-05-07 17:30:29 -07:00
lilia
f8db7c606a
Include bootstrap via sass
...
One less file to load on the options/register page.
2015-05-07 16:22:57 -07:00
lilia
7da9a1d5a7
Use production server in /dist
2015-05-07 15:01:46 -07:00
lilia
65c069b3d3
Update extension name and description
2015-05-07 14:46:03 -07:00
lilia
915612114b
Remove general get/put/remove methods from AxolotlStore
2015-05-06 18:14:32 -07:00
lilia
d0e262d7cb
AxolotlStore stores groups in indexeddb
2015-05-06 17:49:31 -07:00
lilia
359b4a15a2
Move group storage to axolotl store
...
Add async get/put/removeGroup to axolotl store and let libtextsecure
use it for group state storage.
2015-05-06 17:49:23 -07:00
lilia
748f32022a
Fix up refreshGroup
2015-05-06 13:49:20 -07:00
lilia
f774047935
Make libtextsecure group storage asynchronous
2015-05-06 13:11:12 -07:00
lilia
c26c6fc317
Store sessions by encodedNumber
...
Storing multiple sessions in a single indexeddb record is prone to
clobbering data due to races between requests to update multiple device
sessions for the same number, since you have to read the current state
of the device->session map and update it. Splitting the records up makes
it so that those updates can be made in parallel. Selecting all the
sessions for a given number can still be done efficiently thanks to
indexeddb range queries.
2015-05-05 17:44:59 -07:00
lilia
37c496f4f0
Close the provisioning socket
2015-05-05 17:44:59 -07:00
lilia
43d6efcd9e
Don't save device objects to disk
...
Generate them from session and identity data. Save/delete pending prekey
data in an in-memory store and attach it to outgoing device objects.
2015-05-05 17:44:59 -07:00
lilia
f18795a253
Add removeSession
2015-05-05 17:44:58 -07:00
lilia
f413f03a6b
Add getDeviceIds to axolotlstore
...
And add tests for getDeviceIds and removeAllSessions
2015-05-05 17:44:58 -07:00
lilia
121671c99f
Store identity keys in indexeddb
...
Let device storage request them from axolotl store rather than storing a
copy.
2015-05-05 17:44:58 -07:00
lilia
7eda48f755
Move Session Storage to indexedDB
2015-05-05 17:44:58 -07:00
lilia
20ebc3f890
Move identity key storage functions to axolotl store
2015-05-05 17:44:58 -07:00
lilia
f38b18ef63
Move Session storage to axolotlstore
2015-05-05 17:44:57 -07:00
lilia
9de1572ba6
Convert all storage.devices methods to be asynchronous
2015-05-05 17:44:57 -07:00
lilia
71715c95bc
Async remove identity
2015-05-05 17:44:57 -07:00
lilia
26f1aa4db5
Async putSessionsForDevice
2015-05-05 17:44:57 -07:00
lilia
666f6baaca
Async getSessionsForNumber
2015-05-05 17:44:56 -07:00
lilia
9e7d8c0a08
Rename textsecure.api and make it internal-only
2015-05-05 17:44:56 -07:00
lilia
45a61780af
Fixup refreshPreKeys and call it whenever a prekey is deleted
2015-05-05 17:44:56 -07:00
lilia
7d0aeac8cb
Use a worker to facilitate key generation
2015-05-05 17:44:55 -07:00
lilia
f465bdddbf
Add textsecure.AccountManager
...
This class should be used for account registration and for refreshing
prekeys for your account.
2015-05-05 17:44:55 -07:00
lilia
a960acacc6
Add textsecure.refreshKeys
...
This helper checks the server for the number of remaining prekeys, then
generates more if there are fewer than 10 remaining.
// FREEBIE
2015-05-05 17:44:55 -07:00
lilia
96eafc7750
Integrate libaxolotl async storage changes
...
* Session records are now opaque strings, so treat them that way:
- no more cross checking identity key and session records
- Move hasOpenSession to axolotl wrapper
- Remote registration ids must be fetched async'ly via protocol wrapper
* Implement async AxolotlStore using textsecure.storage
* Add some db stores and move prekeys and signed keys to indexeddb
* Add storage tests
* Rename identityKey storage key from libaxolotl25519KeyidentityKey to
simply identityKey, since it's no longer hardcoded in libaxolotl
* Rework registration and key-generation, keeping logic in libtextsecure
and rendering in options.js.
* Remove key_worker since workers are handled at the libaxolotl level
now
2015-05-05 17:44:55 -07:00
lilia
8304aa903a
Update libaxololt to a087b9e746e67995f16e077183cc0
2015-05-05 17:44:54 -07:00
lilia
2cb0070343
s/TextSecure/Signal on options page
2015-05-05 17:44:30 -07:00
lilia
a76fbe165b
Add css transition to smooth progress bar animation
...
Conflicts:
js/options.js
2015-05-05 13:55:52 -07:00
lilia
2ff954d2f8
Fix api.js
2015-05-04 15:14:58 -07:00
lilia
e4b49bde51
Add more websocket tests
2015-05-01 13:25:46 -07:00
lilia
cc6a44f35d
Fix tests
2015-05-01 12:13:03 -07:00
lilia
3ea254d0db
Add TextSecureWebSocket tests
2015-04-30 16:59:16 -07:00
lilia
849a407433
Add mock-socket for testing socket stuff
2015-04-30 15:43:11 -07:00
lilia
da34b8e0f8
Rename textsecure.websocket and make it internal-only
2015-04-30 15:07:35 -07:00
lilia
89c24cd2fa
Move throwHumanError to api.js
...
It is only used there.
2015-04-30 12:26:13 -07:00
lilia
36b1e87214
Add textsecure.MessageReceiver
...
Encapsulate the websocket resources and socket setup process in a
friendly OO class. The MessageReceiver constructor expects an instance
of EventTarget on which to fire message events asynchronously. The
provider of the EventTarget can then add/remove listeners as desired.
2015-04-29 16:50:20 -07:00
lilia
bf2bf4cfd9
Remove redirect to index from registration.done()
2015-04-29 13:39:41 -07:00