lilia
d362d0d978
Autoscroll conversation views
...
Scroll to the bottom (most recent) message in the conversation when it
is opened, when we send a message, and when we receive a message.
2014-10-24 14:49:42 -07:00
lilia
4675cdf3f2
Webcrypto won't go down without a fight
...
Turns out that assigning a new object to window.crypto.subtle
is not so easy. That's probably a good thing.
2014-10-23 21:30:36 -07:00
lilia
a4b25f7df1
Disable the real webcrypto
...
Sadly, we are not quite compliant with the WC3 webcrypto spec
due to our insistance on passing around key data in plain old
ArrayBuffers.
Also converted whitespace.
2014-10-23 21:15:27 -07:00
lilia
c6aae62151
Small message form tweaks
2014-10-22 18:28:40 -07:00
lilia
d67b723f4f
Highlight the selected thread
2014-10-22 17:26:37 -07:00
lilia
19dac1f3df
Decorate incoming group messages
...
with numbers and image placeholders, so you know who's saying what.
2014-10-22 16:30:27 -07:00
lilia
78166365c7
Fix new message number validation
2014-10-22 16:07:16 -07:00
lilia
838283f28b
Send acks instead of closing and opening the socket
...
Hopefully the real fix for #67 until we get protocol-level pings from
the wc3 api.
2014-10-22 12:38:30 -07:00
lilia
6e2a85ccf1
wip new message phone number validation
2014-10-22 12:05:33 -07:00
lilia
e831c649bd
Require a mandatory websocket reset once a minute
...
Compensate for the lack of keepalives in the WebSocket API.
Fixes #67
2014-10-21 19:57:53 -07:00
lilia
a3bf40e852
Shorten websocket time out. Fixes #67
2014-10-21 14:26:14 -07:00
lilia
3a00e49791
Open the most recent conversation on load
2014-10-20 17:49:41 -07:00
lilia
1023ea1732
Refactor textsecure.protos -> textsecure.protobuf
...
DRY up protobuf declarations and move to a slightly briefer naming
convention.
Also dropped some ArrayBuffer -> string conversions as
ProtoBuf.js handles ArrayBuffers just fine, and in fact, more
efficiently than strings.
Finally, dropped the btoa() wrappers, because that incurs an extra
string -> string conversion before the protobuf's internal string ->
array buffer conversion. In lieu of btoa, we can simply pass in the
optional string encoding argument to the protobuf's decode method,
which in these cases should be 'binary'.
Related: #17
2014-10-20 15:11:16 -07:00
lilia
03cc667e48
Standardize some whitespace
...
The preferred style is 4 spaces.
2014-10-20 15:09:36 -07:00
Arnaud Benard
e568e2c528
Fixes #61 - Order by timestamps with tests
2014-10-20 02:07:46 -07:00
lilia
cc5327dbc9
Fix group loop
...
All the group messages were being sent to the last recipient in the
list, due to the persistence of `var number` in later loops and async
calls. An easy mistake to make, when you use for instead of each.
2014-10-18 15:00:43 -07:00
liliakai
1571868520
Merge pull request #66 from aprescott/initial-setup-instructions
...
Add some initial development setup instructions
2014-10-17 17:42:50 -07:00
Adam Prescott
ea85e41cac
Add some initial development setup instructions.
2014-10-17 20:37:35 -04:00
lilia
ac5c359053
Fix strange loop in sendMessageProto
...
Don't declare a new `var i` within the scope of an existing `var i`.
Fixes #63
2014-10-17 16:57:33 -07:00
lilia
e8399f98df
Quickfix for wonky tagsinput
2014-10-17 16:39:35 -07:00
lilia
cd55c0a1f1
Put groupid back in id field also
2014-10-17 14:32:37 -07:00
lilia
0bd5f3e3c2
If for some reason a group has no name, provide a default
2014-10-17 13:25:39 -07:00
lilia
0036e4ef74
Store group ids as strings
2014-10-17 13:11:08 -07:00
lilia
8288e298fc
Group ids should be converted to ArrayBuffers for transport
2014-10-17 12:52:46 -07:00
lilia
143254cec8
Group ids are stored in groupId
2014-10-16 17:50:36 -07:00
lilia
bbe57ef0bf
Stringify incoming group ids
...
Otherwise when we try to make their local storage keys they look like:
"egroupByteBuffer(offset=4,markedOffset=-1,length=28,capacity=112)"
2014-10-16 17:39:45 -07:00
lilia
13c06a26f9
Add phone number utils to background page
...
Quickfix.
Probably it shouldn't actually be verifying any phone numbers.
2014-10-16 14:26:16 -07:00
lilia
4f21bbd21f
Use textsecure.messaging to create groups
...
Not textsecure.storage. Sigh. Also accomodate the fact that
the group id is not returned directly, but rather at the end
of a promise chain.
2014-10-16 14:15:13 -07:00
lilia
fa4c385598
Make initial timestamp on a thread match the 1st message
2014-10-16 14:13:03 -07:00
lilia
f14cd2eed1
Don't validate presence of thread id
...
It's undefined until the first save();
2014-10-16 14:11:51 -07:00
lilia
7e9c0e2394
Group ids should be strings (or stringables)
...
ArrayBuffer was a bad choice.
2014-10-16 13:38:33 -07:00
lilia
6db3eeb52e
Convert incoming timestamps into numbers
...
Fixes #59
protip: don't use << for anything over 2^32. The operands of all bitwise
operators are converted to signed 32-bit integers
2014-10-16 12:32:02 -07:00
lilia
7a6c15bb32
Avoid background thread overwriting outgoing messages
2014-10-15 19:01:30 -07:00
lilia
d7edfd4efb
Remove reference to undefined function
2014-10-15 18:10:27 -07:00
lilia
43f4f6cf99
Open a group's view after it's created
2014-10-14 21:35:40 -07:00
lilia
320d1f18ae
Fix exception when protbuf-encoding groupIds
...
An exception is thrown when protobuf tries to encode a number as the
group id, which is declared to have type 'bytes'.
Fix by make it an ArrayBuffer instead, and increase the length to 16,
which is what the Android client uses:
c632b32ff8/src/org/thoughtcrime/securesms/database/GroupDatabase.java (L222)
2014-10-14 19:33:33 -07:00
lilia
5b0573293f
Fix references to GroupContext Type ENUM values
2014-10-14 19:07:00 -07:00
lilia
01f9fc1f17
More frontend groups fixes
2014-10-14 19:06:35 -07:00
lilia
e89e691957
Fix bug in groupId generation
...
Previously, if calling createNewGroup with an undefined groupId,
no groupId was generated.
This occurred because no entry for "group" + undefined exists in
localStorage, which caused this code to think undefined was a
valid group id.
Fixed by adding `|| groupId == undefined` to the while clause.
Also decoupled the groupId collision check for clarity.
2014-10-14 15:47:51 -07:00
lilia
dc41ebf701
Small frontend fixes for the new group view
2014-10-14 15:47:51 -07:00
lilia
2bd77693e1
Refactor options page and style using bootstrap
2014-10-14 13:59:43 -07:00
lilia
81e4af5827
Move phonenumbery utils to libphonenumber object
...
Slowly whittling away at helpers.js...
2014-10-13 22:49:39 -07:00
lilia
9fc14cfa30
Remove erroneous comment re: MDN copyright
...
In fact, the code samples we have copied from MDN are declared to be
public domain (see link below):
"Code samples added on or after August 20, 2010 are in the public
domain."
https://developer.mozilla.org/en-US/docs/MDN/About#Copyrights_and_licenses
AFAICT we're using code from this page, last updated 10/4/14:
https://developer.mozilla.org/en-US/docs/Web/API/WindowBase64/Base64_encoding_and_decoding
2014-10-10 17:25:40 -07:00
lilia
75e78caec8
Function-wrap options.js
2014-10-10 16:58:44 -07:00
lilia
683c373943
Relaxes verification code validation
...
When codes are sent they are formatted as xxx-xxx. Previously when I
would paste these from GVoice they failed validation thanks to the dash
and whatever whitespace I happened to grab.
2014-10-10 16:32:22 -07:00
lilia
27708cd8d7
Switch to staging. -ca is now production
2014-10-10 16:32:15 -07:00
lilia
0f4b53c176
Update records list in BBLocalStorage on fetch
...
Previously, would only update the known messages.
2014-10-09 20:08:28 -07:00
lilia
2288f8adc1
Fix new group ui not showing
2014-10-09 19:02:52 -07:00
lilia
266600e5ab
There's no need to wrap this function inside a function afaict
2014-10-09 18:54:23 -07:00
lilia
ae98b8680f
Fix whitespace in popup.js
...
Our official standard is 4 space indentation.
2014-10-09 18:43:58 -07:00