Commit Graph

140 Commits

Author SHA1 Message Date
JC Brand
eed141b53e Remove unnecessary path aliases from the webpack config 2018-06-06 11:04:23 +02:00
JC Brand
1dac1d781f Don't show own typing notifications in groupchats 2018-06-06 09:57:37 +02:00
JC Brand
3153604823 Inform user of error messages which don't have text 2018-06-05 13:14:24 +02:00
JC Brand
a3fe6162c1 Proper MUC reconnection is handled in converse-muc-views 2018-06-05 13:01:47 +02:00
JC Brand
ca9d53a653 These didn't have the intended effect.
Calling `remove` without models does nothing
2018-06-05 12:42:49 +02:00
JC Brand
bea76e5b2b Use the logout event, instead of an override 2018-06-05 12:42:49 +02:00
JC Brand
f7c3351e2b Merge branch 'master' into webpack 2018-06-04 13:46:27 +02:00
JC Brand
b00567a0ea Fix styles for mobile view 2018-06-01 12:49:45 +02:00
JC Brand
9c6c90a4fc Move config settings into the relevant plugins 2018-05-31 06:38:40 +02:00
JC Brand
6dc9e8edf1 Use webpack for module bundling 2018-05-25 14:23:32 +02:00
JC Brand
c0080390a7 Only initialize presence collection after login 2018-05-24 15:09:01 +02:00
JC Brand
63f659326b Store VCard JID on the groupchat message
for easier retrieval later and to work around MUC's inability to
retrieve VCards for users not in the MUC.
2018-05-24 10:50:07 +02:00
JC Brand
f906761dc0 Initial work on sending a different stanza for OMEMO messages
updates #497
2018-05-23 12:51:01 +02:00
JC Brand
a99e7a317e Change lock icon when clicking the toggle
updates #497
2018-05-23 12:51:01 +02:00
JC Brand
fd3bb570cd Add an omemo_active flag on the chatbox
updates #497
2018-05-23 12:51:01 +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
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
50a67331e2 Find MUC VCard by real JID if we know what it is. 2018-05-14 13:49:04 +02:00
JC Brand
ea60f190aa Bugfix. Check if chatbox exists 2018-05-12 10:57:40 +02:00
JC Brand
04e948ad67 Fix build error by setting dependency 2018-05-11 19:56:32 +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
09db3eddb0 Add tests for contact removal via modal 2018-05-10 22:15:23 +02:00
JC Brand
d16bb315aa Add the ability to remove a contact via the details modal 2018-05-10 18:04:17 +02:00
JC Brand
65ac389625 Add a way to show a user's vcard 2018-05-10 14:10:03 +02:00
JC Brand
b6692b17a2 Show roles from VCard next to name in messages 2018-05-08 19:51:56 +02:00
JC Brand
b3619077f9 Remove dependency on the strophe disco plugin
And instead implement it ourselves.

This solves a bug with that plugin whereby the connection handlers are
added to early and are therefore never fired.

Also fixed a problem whereby entity items are queried for features
before the features have been fetched.
2018-05-07 18:06:50 +02:00
JC Brand
5136b0c1dd Fix two failing tests (and a bug) 2018-05-07 14:31:02 +02:00
JC Brand
e6ba62d804 Avoid creating unnecessary messages 2018-05-07 13:50:07 +02:00
JC Brand
776f49d5c3 Bugfix. Don't remove model, simply remove view
Otherwise the model gets removed mid-creation, which causes the
`url required` error from Backbone.
2018-05-07 12:57:05 +02:00
JC Brand
6ac1df43e1 Render chat state notifications on the message view
and not via the chatbox view (fixes some failing tests also).
2018-05-04 17:26:43 +02:00
JC Brand
99915a26f4 Use vcard from the collection for rendering messages 2018-05-03 20:05:45 +02:00
JC Brand
adf34c845c Render chatbox avatar via the vcards collection 2018-05-03 19:01:57 +02:00
JC Brand
71ed5bbdd1 Don't set vcard on the chatbox model 2018-05-03 18:44:02 +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
4c15ac2e8c Add new config setting: auto_join_private_chats 2018-05-03 16:36:02 +02:00
JC Brand
31982aab0b Store MUC avatars globally, not per chatroom
This allows us to cache them for longer.
2018-05-01 18:30:05 +02:00
JC Brand
53f5627b72 Add support for rendering avatars in groupchats 2018-05-01 18:18:02 +02:00
JC Brand
f9aa75b69e Refactored message attributes and rendering.
- set `username` on the message object,
  instead of always using `fullname` with fallback to `jid`.
- Distinguish better between `groupchat` messages and normal
  messages in `getMessageAttributesFromStanza`
2018-05-01 12:30:58 +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
8fd65487c7 Use safeSave to avoid intermittent test failures
due to asynchronous events.
2018-04-30 15:37:37 +02:00
JC Brand
5ffb09bd15 Updates #161: Treat sent files also as oob messages 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
fb11cfe795 Add converse-embedded class without requiring an override 2018-04-24 14:35:47 +02:00
JC Brand
59a72efe1b Refactor MUC message sending
To make it more similar to how messages are sent in private chats and to
reuse methods as far as possible.

Removed `sendChatRoomMessage` and `clearChatRoomMessages`
2018-04-24 11:09:36 +02:00
JC Brand
9a410c6a96 updates #161 Proper error messages and include server response 2018-04-24 10:09:45 +02:00
JC Brand
74f9952b24 Move sendChatState methods to the models 2018-04-22 04:25:05 +02:00
JC Brand
a19e7aeffe Add support for XEP-0066 Out of band data 2018-04-18 16:58:52 +02:00
JC Brand
d048cff9a8 Provide metadata of file being uploaded.
updates #161
2018-04-18 11:49:53 +02:00
JC Brand
133df99aec Honor the filesize restrictions of the XMPP server
updates #161
2018-04-18 11:35:33 +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
de6ecbf07a Render messages via a new MessageView view
updates #161
2018-04-17 15:21:26 +02:00
JC Brand
264e6830af Remove references to unused parameters
updates #161
2018-04-17 15:21:21 +02:00
JC Brand
584f293d05 Updated and refactored the work from @worlword
* Use Promises instead of callbacks
* Update to latest (Last Call) version of XEP-0363
* Move non-view specific methods to models instead
* Add more tests

updates #161
2018-04-17 15:21:09 +02:00
worlword
3b1d27636d problem fixed, that file-upload would not start. Also did some code cleanup 2018-04-13 11:45:43 +02:00
worlword
bf3e6f2363 some code-changes to align with the coding standard 2018-04-12 09:24:41 +02:00
worlword
7660dbfb31 merge httpFileUpload-Branch with master 2018-04-12 07:43:39 +02:00
worlword
c9a9d01112 used code from 'http-file-upload' branch. Buttons are now added to the toolbars through converse-http-file-upload.js. 2018-04-11 17:09:32 +02:00
worlword
fa80749658 refactoring based on the review from jcbrand 06.Apr.2018 2018-04-11 15:29:41 +02:00
JC Brand
9a526d4194 Refactoring of the XEP-0085 Chat State Notifications code
* Distinguish between CSN messages and other types of messages
* Properly clear previous notifications
* Better handling of notifications from multiple users (in MUC)
* Rename methods to make clarify intent
2018-04-06 17:02:28 +02:00
JC Brand
f260fd87e5 Don't close all chatboxes when reconnecting 2018-03-30 14:16:06 +02:00
JC Brand
c219d37083 Bugfix. Handle attrs not being defined 2018-03-14 18:25:19 +00:00
JC Brand
401513e695 Set fullname from roster contact 2018-03-14 13:02:08 +00:00
JC Brand
daff088c97 Don't set fullname in getChatBox, it's too generic
Instead do it in `_api.chats.create` which is specifically for private chats.
2018-03-14 12:06:38 +00:00
JC Brand
03d7f07a4c Bugfix. Chat wasn't being opened when receiving a message. 2018-03-13 19:11:49 +01:00
JC Brand
ca141401a0 Fix failing tests 2018-03-13 13:42:00 +01:00
JC Brand
0d8d99b850 Bugfix. vcard doesn't necessarily have jid 2018-03-07 10:31:33 +01:00
JC Brand
1ce46a84ae Make sure that statusInitialized is always called
regardless of wether it's a connection or reconnection event.

We can then only listen for `statusInitialized` to handle both cases.
2018-02-22 11:20:26 +01:00
JC Brand
47aad31899 Tricky refactoring.
Removed `_converse.chatboxviews.showChat` and trying to simplify how
chats are created and when they're shown.

Prompted by the work to split the MUC views into a separate plugin
2018-02-21 23:47:02 +01:00
JC Brand
d1d43edf52 Move MUC views into a new plugin 2018-02-21 22:40:30 +01:00
JC Brand
d8f80bc0e6 Merge branch 'master' into bootstrap4 2018-02-19 22:13:01 +01:00
JC Brand
745b821848 Bugfix. Avatars weren't being shown 2018-02-19 21:33:27 +01:00
JC Brand
b6501bcf09 Render .row inside #conversejs element 2018-02-15 15:50:37 +01:00
JC Brand
617019af0e Merge remote-tracking branch 'origin' into bootstrap4 2018-02-15 14:15:04 +01:00
JC Brand
732c923324 Bugfix. Don't show hidden MUCs when new message received. 2018-02-14 13:44:17 +01:00
JC Brand
08a76d8a6b Merge branch 'webcomponent-embedded' 2018-02-14 02:15:49 +01:00
Senya
2b8f6c4363 Add backbone.overview as a dependency for chatboxes (#1016) 2018-02-14 00:39:56 +01:00
JC Brand
5517e3554c Add a new configuration setting: root 2018-02-09 16:08:39 +01:00
JC Brand
20706cb617 Expand the spoiler tests 2018-02-06 21:21:21 +01:00
JC Brand
4e077aac08 Start moving code from the plugin to converse-chatview 2018-02-06 18:05:12 +01:00
JC Brand
b1ffb34b76 Add docstrings 2018-02-06 18:05:12 +01:00
JC Brand
37e4ed6fe8 Avoid false headline message positive for node-less MUC JIDs 2018-01-29 15:00:11 +01:00
JC Brand
834866bd84 Add fullscreen class when applicable 2018-01-23 14:47:46 +01:00
JC Brand
3f94028377 Speed up rendering of chat boxes by lazily rendering the emoji picker 2017-12-20 11:02:46 +00:00
JC Brand
8cd75aa09c Move ChatBox, Message and Messages to converse-chatboxes 2017-12-06 22:09:46 +01:00
JC Brand
3514d6d56b fixes #316
- Also allow private chats to be opened via URL fragment.
- Make sure to clear the URL fragment when the relevant chat is closed.
2017-10-31 23:11:27 +01:00
JC Brand
3b8c2d1b00 Various bug and timing fixes due to the previous refactoring 2017-08-16 14:16:24 +02:00
JC Brand
694eabfc0e Use promises to determine when to create the controlbox 2017-08-16 13:22:18 +02:00
JC Brand
273da9e876 Move chatboxes collection and overview into separate plugin 2017-08-16 12:32:15 +02:00