Commit Graph

495 Commits

Author SHA1 Message Date
JC Brand
ad466b62a0 Rewrite and improve trimOpenChats. updates #61 2014-05-05 23:37:52 +02:00
JC Brand
aa52ba5b94 Add method trimOpenChats. Updates #61 2014-04-26 06:55:52 +02:00
JC Brand
c7b900859d Bugfix. use !isBefore instead of isAfter
moment.js is accurate to the second, instead of milliseconds. This causes
timing errors while testing.
2014-04-25 23:59:05 +02:00
JC Brand
b307d5170b Date handling is now done with moment.js 2014-04-25 23:44:10 +02:00
JC Brand
22c7243043 Initial work on managing the number of open chat boxes 2014-04-25 21:48:56 +02:00
JC Brand
dec674fae2 Bugfix. Opened chatboxes weren't focused...
...when clicking on a contact in the roster
2014-04-24 20:55:07 +02:00
JC Brand
4937fafea4 Add tests for new "clear" button. 2014-04-24 19:21:38 +02:00
JC Brand
9b3601314e Add a new toolbar button to clear chat messages
Configuration options have changed a bit.

show_emoticons and show_call_button are now removed. Instead the toolbar is
configured via a new config option: "visible_toolbar_buttons".
2014-04-24 18:10:04 +02:00
JC Brand
d69a165b05 Use strict mode. Emit an event when the connection drops. 2014-04-24 09:51:21 +02:00
JC Brand
1c26e9016c Fixed chatbox positioning and better disabling of effects
* The animate config option now disables jQuery effects
* Make sure the controlbox is always to the right of all other chatboxes
* Make sure new chatboxes are always created immediately left of the controlbox
2014-04-24 07:58:35 +02:00
JC Brand
eca42fbb2f Add support for XEP-0280 Message Carbons. updates #132 2014-04-19 06:58:26 +02:00
JC Brand
968f8bb223 Add new configuration setting "forward_messages".
What was before default behavior is now optional and disabled by default.
2014-04-19 06:18:17 +02:00
JC Brand
14d90bc99c Upgrade dependencies to their latest versions 2014-04-19 05:12:24 +02:00
JC Brand
7d472eb26d Add new dependency moment.js
Use it to better compare dates when trying to determine whether a message falls
on a different day.

Also upgraded some dependencies' versions.
2014-04-19 01:30:48 +02:00
JC Brand
b88113c246 Fixed some failing tests.
Some of the tests were failing because they didn't expect the controlbox to be
returned from localStorage.
It's too long ago that I've looked at this branch for me to say whether this is
a legitimate bug or not.
Will have to investigate further.
2014-04-18 17:42:35 +02:00
JC Brand
3cfcb2ae34 2 controlbox bugfixes and spec typo.
* Save controlbox to containing collection
* Call refreshWebkit after closing controlbox
2014-03-15 05:52:00 +02:00
JC Brand
fae9b84577 Bugfix: undefined template and a typo 2014-03-15 05:49:11 +02:00
JC Brand
bb0f49cf4d Add a counter to show unread msgs when chat is minimized 2014-03-09 13:31:01 +02:00
JC Brand
9849daacf9 Merge branch 'master' into 0.8
Conflicts:
	bower.json
	converse.js
	docs/CHANGES.rst
	spec/chatbox.js
	tests/utils.js
	tests_main.js
2014-03-09 08:18:00 +02:00
JC Brand
9b3af57d13 Release version 0.7.4 2014-03-05 08:44:01 +02:00
JC Brand
74779afd66 Ensure that URLs in messages are properly escaped 2014-03-05 08:03:52 +02:00
JC Brand
25cc229019 Refactor message handling
- use the same method for both normal and OTR messages
- fix /me actions for OTR messages
- rename messaging methods to minimize ambiguity

Conflicts:
	converse.js
	tests/utils.js
2014-03-05 01:46:19 +02:00
JC Brand
317ab95cd8 Refactor message handling
- use the same method for both normal and OTR messages
- fix /me actions for OTR messages
- rename messaging methods to minimize ambiguity
2014-03-05 01:23:45 +02:00
JC Brand
ec39e6e802 Emit new event onChatBoxToggled 2014-03-04 20:16:03 +02:00
JC Brand
b14538b441 Rename ChatBoxesView to ChatBoxViews 2014-03-04 15:54:36 +02:00
JC Brand
1567b212c3 Add closure get/set methods for rosteritem views 2014-03-04 15:49:02 +02:00
JC Brand
d20ca10638 Add closured get/set methods for views from chatboxesview 2014-03-04 15:09:16 +02:00
JC Brand
ac0042fdf9 Extend the "close chat" test with a normal chatbox usecase 2014-03-04 13:22:49 +02:00
JC Brand
c030494ef0 Fix tests and simplify code for showing controlbox 2014-03-01 08:21:36 +02:00
JC Brand
4f2125c20e Simplified by setting height via template, not JS
Also dropped the minimum height restriction
2014-03-01 01:57:20 +02:00
JC Brand
7d58d856b8 Save chat box's toggle state between page loads. 2014-03-01 01:57:20 +02:00
JC Brand
8294162f9d Store and maintain a chatbox's custom size. 2014-03-01 01:57:20 +02:00
JC Brand
11b59b31d3 Fix tests after all the refactoring... 2014-03-01 01:57:20 +02:00
JC Brand
8feeb73320 Fix webkit bug that prevents boxes from reordering when one is closed 2014-02-23 05:49:30 +02:00
JC Brand
0414fa02c2 Add some resistance around chatbox's original height when resizing 2014-02-23 03:38:26 +02:00
JC Brand
1ce7620b88 Merge remote-tracking branch 'origin' into 0.8
Conflicts:
	converse.js
	docs/CHANGES.rst
	index.html
2014-02-23 02:54:35 +02:00
JC Brand
319a955f65 Add code that allows resize by click+drag.
Removed dragresize.js and instead wrote new much smaller and simpler code
in converse.js.
2014-02-22 23:20:36 +02:00
JC Brand
94c135a6d8 Merge branch 'otr-by-default' of git://github.com/Aupajo/converse.js into Apajo-otr-by-default
Conflicts:
	converse.js

Fixes #102
2014-02-12 12:52:57 +02:00
JC Brand
18d6a91881 Add API method to retrieve the SID. Fixes #93 2014-02-12 12:37:39 +02:00
JC Brand
30f3114c7c Add method to get the latest RID. Updates #93 2014-02-12 12:19:12 +02:00
JC Brand
1a4044dd2a Slight refactor of generatePrivateKey...
to avoid having to give pass it a callback method
2014-02-12 11:30:05 +02:00
JC Brand
62d59ff3e4 Refactor some OTR code into a Backbone model and adapt tests. 2014-02-12 07:12:00 +02:00
JC Brand
398142c7de Add a test for the passphrase storage. Updates #111 2014-02-12 02:02:45 +02:00
JC Brand
ca9c215cac Use a random passphrase to encrypt the private key. Updates #111 2014-02-12 00:45:25 +02:00
JC Brand
2026305791 Remove code for re-attaching a prebinded session.
I couldn't get it to work. Suspect that a new session needs to be
created/authenticated instead of attaching to the existing connection.
2014-02-11 23:48:38 +02:00
JC Brand
dc858cc38b Register connection addHandlers when reconnecting 2014-02-11 15:52:12 +02:00
JC Brand
c3b98fd2fd Refactor and improve the reconnecting code and make it configurable
There is still the apparent problem that after reconnecting, event listeners
hvae to bre reregistered (which doesn't happen currently).

So messages can be sent but not received...
2014-02-11 13:14:36 +02:00
JC Brand
d0f023dbb1 Allow the OTR private key to be cached. Updates #111 2014-01-31 18:07:44 +02:00
JC Brand
5406df1bc7 Add an animated spinner when generating a private key. 2014-01-31 13:40:33 +02:00
JC Brand
8232cdaff2 Bugfix. Updates #111
When using OTR with prebind, the user password isn't defined.
=============================================================

When not using prebind, the user password is used to encrypt the private key
for the OTR session before it's saved in session storage.

When using prebind, we ideally want to use the same OTR private key across page
loads, so that we don't have to spend the time generating a new one together
with AKE on every page load. To do this, we need to store it somewhere, like
the browser's session storage.

However, I have yet to find a secure way to store the OTR private key that does
not expose it to maliciously injected javascript.

For now, I've updated the code to generate a new private key and do the AKE
with every page reload.

I'm considering adding code to store the private key in Session Storage and
letting the user explicitly enable this (while making them aware of the risks
involved).
2014-01-31 05:50:38 +02:00