Commit Graph

217 Commits

Author SHA1 Message Date
JC Brand
a4d608dcdf Save room features in separate model
As a namespacing mechanism to avoid clashes.
Fixes bug where two chats are shown as currently being active in the rooms list.
2019-01-10 12:15:59 +01:00
Christoph Scholz
eacd7fd933 implement /destroy command in muc 2019-01-03 13:09:13 +01:00
JC Brand
d051085626 Only clear textarea once message was sent
This now requires `sendMessage` to return a boolean to indicate success.
Disable the textarea while message is being sent.
2018-12-21 05:58:22 +01:00
JC Brand
d75e47db6f Also test that MUC title changes automatically 2018-12-18 11:21:36 +01:00
JC Brand
078281d0db Add a test for configuring a MUC 2018-12-17 15:18:36 +01:00
JC Brand
9c812157ee Use async/await 2018-12-17 15:16:43 +01:00
JC Brand
b7c01993b7 User-facing term is "groupchat", not "room" 2018-12-16 11:22:12 +01:00
JC Brand
b91f488491 Use async/await 2018-11-21 13:03:32 +01:00
JC Brand
c9b540289c Use async/await 2018-11-20 18:01:09 +01:00
JC Brand
88e74975c9 Fix failing tests due to avatar changes 2018-11-14 16:37:16 +01:00
Emmanuel Gil Peyrot
87c77385d8 Improve XEP-0245 support.
Namely:
- Only match messages which start with exactly "/me ".
- Simplify the match, checking a string instead of a complex regex.
- Always remove the first four characters in the case of a match, to not
leave an extra leading space.
2018-11-05 14:02:14 +01:00
JC Brand
11a53608d9 Right Align badges of room occupants
fixes #1264

Also...

- hide the badges in overlayed view mode
- hide the features list in overlayed view mode
2018-10-28 23:20:29 +01:00
JC Brand
11ac846b31 Fixes #1259 2018-10-27 22:56:05 +02:00
JC Brand
53b3f2d0d6 Fix failing tests and rewrite to use async/await 2018-10-26 12:53:24 +02:00
JC Brand
c583678c86 Use _coverse.api.sendIQ instead of _converse.connection.sendIQ
So that we know an event will be emitted when the stanza is sent.
2018-10-25 18:29:29 +02:00
JC Brand
6904f9a897 Use es2015 modules instead of UMD 2018-10-23 12:25:58 +02:00
JC Brand
f2c1455762 Bump waiting time for room opened via modal in test utils
Convert more promise-based tests to async/await
2018-10-22 09:59:53 +02:00
JC Brand
0d3e94c60b Minor testing changes
- Use async/await instead of promises.
- Use different room jids (to try and see whether this fixes heisenbugs on travis)
2018-10-22 09:40:24 +02:00
JC Brand
e181aaf99b Make the message view's render method async
So that we first render dynamic content (e.g. images) before inserting
it into the chat.

Also, add the `show_images_inline` setting (which is the cause of this
whole change).

Updated tests to handle this new change and start using async/await
instead of promise callbacks.
2018-10-15 22:19:04 +02:00
JC Brand
99c0687684 Fixes #537 Open xmpp: URIs inside Converse 2018-10-13 20:16:00 +02:00
JC Brand
2c44127932 Remove jquery from spec/chatroom.js 2018-10-13 17:47:52 +02:00
JC Brand
d77802da86 Avoid showing notification messages twice
For example `This groupchat is not anonymous`
2018-10-13 14:41:16 +02:00
JC Brand
15579692a9 Some work on removing jQuery from the MUC tests 2018-10-13 14:14:02 +02:00
JC Brand
7b9c97dfd3 Also squash leave/join messages
And fix an HTML rendering bug for info messages and nicks that contain spaces
2018-10-11 19:04:06 +02:00
JC Brand
71cc98d6f6 Reduce join/leave clutter by removing subsequent ones
Previously we checked only if the last message was a join message from
the same person.

Now instead we check the last n messages that are join or leave
notifications.
2018-10-11 15:59:52 +02:00
JC Brand
cf75d37587 join/leave notification fixes.
* Don't show leave notification twice when someone leaves, joins and then leaves again
* Add a test case for a member joining and then leaving
2018-10-11 14:05:52 +02:00
JC Brand
dffcc13dea Fixes #1140 Add support for destroyed chatrooms 2018-10-10 22:57:12 +02:00
JC Brand
9bc8bdf34c Test updates after updating to use latest strophe.js
`toLocaleString` now returns element attributes in alphabetical order
(for better cross-browser consistency).

Also, `toLocaleString` is now used in favor of `outerHTML` because
browsers aren't consistent with one another in their output.
2018-10-03 21:11:20 +02:00
JC Brand
4129c0ea3b Fix failing test 2018-09-13 17:04:44 +02:00
JC Brand
cd05b89726 Fix failing tests due to MUC disco refactoring 2018-09-13 10:52:25 +02:00
JC Brand
603708a9c9 Update test openAndEnterChatRoom to handle re-opening of rooms
in which case a disco query is not sent out again because we still have
it cached.
2018-09-13 09:04:21 +02:00
JC Brand
acef8feaaa Refactoring of fetching of reserved nick
- Move `getDefaultNickName` to the model and rename to `getDefaultNick`
- Let `checkForReservedNick` return a promise and save `nick` once received
- Updated `openAndEnterChatRoom` to wait appropriately and remove presence-wrapper
- Update tests to wait appropriately
- Remove presence-wrapper in `getRoomFeatures`
2018-09-12 12:36:13 +02:00
JC Brand
2df9b24211 Add option to auto-register your nickname to a room
See https://xmpp.org/extensions/xep-0045.html#register
2018-09-12 12:36:13 +02:00
JC Brand
014354d075 Fixes #986 Affiliation changes aren't displayed in the chat 2018-09-07 11:54:29 +02:00
JC Brand
27378068c0 Fixes #1064 /topic without argument sets topic to "undefined" 2018-09-07 10:21:47 +02:00
JC Brand
f5d41db18a Fix failing test by using the right API 2018-09-03 09:45:04 +02:00
JC Brand
5406e9739c Trying to fix timing issue on Travis 2018-08-25 01:04:17 +02:00
JC Brand
e7f211bacf Avoid an unnecessary promise and create message as soon as possible
under non-OMEMO circumstances. Otherwise, when messages are fetched in
bulk via MAM, then a message referring to a previous one (e.g.
a correction) may be processed before the message being referred to has
been created.
2018-08-19 10:32:43 +02:00
JC Brand
ca9229a906 createMessage now returns a promise.
Also, fix all broken tests, mostly related to this.
2018-08-18 17:12:22 +02:00
JC Brand
33cd23c529 Minor idiomatic changes 2018-08-16 15:17:53 +02:00
JC Brand
c25cc4c76b Bugfix. Existing occupants weren't found because query was only by jid
Which meant that occupants were being duplicated.

updates #1146
2018-08-09 15:46:49 +02:00
JC Brand
27bc33ba09 Use nickname from global settings when entering a room 2018-08-07 10:09:35 +02:00
JC Brand
f120fbd209 Bugfix. Own groupchat messages weren't being recognized 2018-08-01 18:37:54 +02:00
JC Brand
506aa33131 Wait for promises before opening chats in API methods 2018-08-01 11:12:00 +02:00
JC Brand
4cefc7cdf9 Fix failing tests due to renames 2018-07-25 12:05:09 +02:00
JC Brand
acd9a18696 Update with new message markup 2018-07-21 07:34:03 +02:00
JC Brand
f3f58a8da4 Test multiple corrections of the same message 2018-07-06 01:51:27 +02:00
JC Brand
e64edf19b4 Use "Groupchat" instead of "Chatroom" 2018-07-02 16:27:58 +02:00
JC Brand
1880b3f209 Nicer rendering of MUC disconnection messages 2018-07-02 12:52:19 +02:00
JC Brand
4361d0d66a Fix failing tests due to time tag 2018-06-30 15:25:25 +02:00