Commit Graph

405 Commits

Author SHA1 Message Date
JC Brand
cc3a158b57 Initial work on showing all options on @ 2018-08-16 15:17:53 +02:00
JC Brand
b6f4f05b9e Add converse-autocomplete and use that in the chat textarea 2018-08-16 15:17:53 +02:00
JC Brand
27bc33ba09 Use nickname from global settings when entering a room 2018-08-07 10:09:35 +02:00
JC Brand
964b10dc33 Set default BOSH wait time to 59
to avoid timing conflicts with the webserver
2018-07-28 17:13:13 +02:00
JC Brand
2929647e16 Add support for correcting the last message sent
fixes #421
2018-07-08 00:39:28 +02:00
JC Brand
9f42f09d1e Get the first message correction test to pass 2018-07-06 01:04:34 +02:00
JC Brand
efa5e30596 updates #1069 Highlight currently open private chat in the sidebar 2018-07-04 09:08:22 +02:00
JC Brand
58ee1460fe Updates #1069
Highlight the currently open groupchat in the sidebar (in singleton mode).
2018-07-02 23:29:57 +02:00
JC Brand
1880b3f209 Nicer rendering of MUC disconnection messages 2018-07-02 12:52:19 +02:00
JC Brand
9a60b5bb15 Let api.disco.info use api.sendIQ (and therefore be promise based) 2018-06-30 14:01:47 +02:00
JC Brand
3dac4ae45c Add support for logging in with OAuth 2018-06-13 18:39:51 +02:00
JC Brand
6cd9d2e813 Rename _tearDown to tearDown and rebuild 2018-06-07 14:30:10 +02:00
JC Brand
7ee71b0132 Add a plugin for XEP-0357
Currently only allows enabling an "App Service", based on pass-in
configuration values.
2018-06-06 14:00:52 +02:00
JC Brand
eed141b53e Remove unnecessary path aliases from the webpack config 2018-06-06 11:04:23 +02:00
JC Brand
54c6bcd861 Disconnect chatrooms upon tab reload (when using websocket)
This is a workaround until we have support for XEP-0198

updates #1111
2018-06-06 09:56:35 +02:00
JC Brand
2ca382b7a5 Move const declarations out of initialize method 2018-06-01 12:21:41 +02:00
JC Brand
9c6c90a4fc Move config settings into the relevant plugins 2018-05-31 06:38:40 +02:00
JC Brand
195a9781c1 Use an event instead of an override 2018-05-30 17:18:41 +02:00
JC Brand
4e67b420ba New event streamFeaturesAdded 2018-05-29 12:04:42 +02:00
JC Brand
bb95375f9c Support for roster versioning
fixes #1106
2018-05-28 13:59:11 +02:00
JC Brand
9afc344b89 We no longer clear the whole roster, only presence data 2018-05-23 04:34:38 +02:00
JC Brand
9500900f22 Make sure bookmarks are cleared before re-initializing
Otherwise subtle, hard-to-reproduce bugs happen while testing.

Also, don't unnecessarily call `delegateEvents`, it also causes
heisen-breakage.
2018-05-22 21:59:17 +02:00
JC Brand
36fd859a88 Store presence info in a separate collection
So that we can cache roster data for longer and presence data for
shorter.
2018-05-22 21:09:43 +02:00
JC Brand
fe8b257243 Looks like we stopped supporting EXTERNAL auth 2018-05-19 08:22:24 +02:00
JC Brand
c920725832 Add a clearSession event to avoid using overrides. 2018-05-18 15:44:42 +02:00
JC Brand
2508ef0e9e Make the default value for the 'trusted' checkbox configurable
Also remove the `message_storage` setting.
2018-05-18 15:44:42 +02:00
JC Brand
63ce501798 We now only need to override set for the actual VCards
so rename model and only use it in the VCards collection.
2018-05-15 09:47:52 +02:00
JC Brand
38499917a9 updates #194
Include entity capabilities hash in outgoing presences

Also, started some work on using jsdoc for rendering API documentation.
Ideally that would go into a separate commit but that would take ages to
untangle.
2018-05-11 13:35:27 +02:00
JC Brand
8bd968a03b Also use the VCard cache for the user's own status 2018-05-08 19:24:50 +02:00
JC Brand
6c513ad4be Remove dependency on strophe's vcard plugin 2018-05-08 18:11:56 +02:00
JC Brand
e5cfdca30d Move roster models into their own module 2018-05-05 20:16:23 +02:00
JC Brand
16b2a1b2a9 Avatar/VCard refactoring
- Refer to VCards instead of Avatars where appropriate
- Fetch VCards for non-groupchat messages as well
2018-05-03 18:34:28 +02:00
JC Brand
d5c8acea04 Create avatar objects for all messages, not just groupchat 2018-05-03 18:24:24 +02:00
JC Brand
e77f627432 Remove unused code, fix build path and update package-lock.json 2018-05-03 18:22:54 +02:00
JC Brand
df948a8dd6 Also allow a single-user chat to be embedded into the page 2018-05-03 17:01:17 +02:00
JC Brand
7660a27682 Store image hash from presence on the occupant 2018-05-03 13:50:30 +02:00
JC Brand
d49adc9309 Doesn't look like its necessary to call initConnection again 2018-05-03 11:13:08 +02:00
JC Brand
911ede2886 Small bugfixes.
- Filter did the opposite of what it was supposed to do
- Wrong bind context
- Should actually be mam:2, issue was server misconfiguration
2018-05-02 14:30:14 +02:00
JC Brand
dd505ad9da More fixes now that we don't store the JID under 'fullname'
if the fullname is not available.
2018-05-01 20:07:56 +02:00
JC Brand
0e61eda620 Fix typo, fixes MAM again :) 2018-05-01 18:47:43 +02:00
JC Brand
c14ef3bb75 Bugfix. Can't expect fullname to be set anymore. 2018-05-01 15:21:20 +02:00
JC Brand
60c784a39e Ensure that default image is used for avatars.
By overriding the `set` method.
2018-04-30 15:37:37 +02:00
JC Brand
3d42425083 Some UI improvements
- Render images as thumbnails
- Use the image.html template when rendering images from pasted URLs
- Update message and spoiler markup to render avatars
- Use the default avatar as fallback when user doesn't have one
- Instead of 'me' render own name or JID
2018-04-30 15:37:36 +02:00
JC Brand
a19e7aeffe Add support for XEP-0066 Out of band data 2018-04-18 16:58:52 +02:00
JC Brand
c01e9f8265 Move methods from chatbox view to message view
Specifically the methods related to requesting an upload slot and uploading a file.
Also show a progress indicator while a file is being uploaded.

Updates #161
2018-04-17 15:21:38 +02:00
JC Brand
dad8eb2f48 Remove separate file converse-http-file-upload
It contained only `overrides` and some HTTP upload code was in other
modules.

Current thinking concerning overrides:

Usage of `overrides`, while useful in certain cases, should in general
be discouraged, since it's in essence "monkey patching" which makes it
more difficult to know whats executing at runtime and more difficult to
refactor.

Splitting modules up between XEPs is not always that useful. Some XEPs,
like HTTP Upload (and MAM comes to mind) have their functionality spread
out over single and group chats (and pubsub) and might for practical
purposes be considered "core" enough to not try and keep them in
separate modules (which inevitably requires overrides or a fundamentally
rethinking the architecture).

Where splitting code between modules makes a lot of sense is in keeping
Backbone Models and Views separate (so that alternative view libraries
like Vue could be used) and probably in keeping Single chats, MUC,
PubSub and MIX separate.

updates #161
2018-04-17 15:21:30 +02:00
JC Brand
de6ecbf07a Render messages via a new MessageView view
updates #161
2018-04-17 15:21:26 +02:00
JC Brand
77a51cc2a6 Initial work on XEP-0363: HTTP File Upload 2018-04-14 07:36:24 +02:00
ChaosKid42
fce9ee0db9 replace geoURIs (e.g. from Convesations) by links to openstreetmap (#1054)
* replace geoURIs by link to openstreetmap

* Added testcase
2018-03-31 18:29:01 +02:00
JC Brand
44a2f7807c Hook in ar and eu locales and document. 2018-03-31 15:45:23 +02:00