JC Brand
029fb6d60b
Make sure we have a device to publish before doing so
2018-10-18 00:17:21 +02:00
JC Brand
94a1852b4f
Use async function instead of explicit promises
2018-10-17 23:58:11 +02:00
alan
45cda8494a
possible fix for issue #1185
2018-10-17 22:17:57 +02:00
JC Brand
ceb0b82245
Two changes. See below
...
- No need for the `edited` event.
- Also, don't add load animation for MAM corrections
2018-10-16 21:58:36 +02:00
JC Brand
a8ef1d2904
Fixes #1058 Send inactive CSN when user switches tab
2018-10-16 13:30:29 +02:00
JC Brand
09c3d30ccc
Make sure messages are marked as followups after re-render
2018-10-16 11:56:43 +02:00
JC Brand
82239d281f
Refactor file-extension checking into utility functions
2018-10-16 00:22:39 +02:00
JC Brand
0c58cb7c48
Add the show_images_inline
option
...
updates #1228
2018-10-16 00:06:01 +02:00
JC Brand
a5a600bade
Fixes #1193 Properly handle OMEMO messages without body
tag
2018-10-15 23:47:22 +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
2426f9b7c8
Only attempt loading img URL with filename and appropriate extension
...
updates #1228
2018-10-13 21:12:48 +02:00
JC Brand
e425f25753
Listen for xmpp:
URIs in all of Converse, not only chatrooms
...
updates #537
2018-10-13 20:55:05 +02:00
JC Brand
9e47fff0ba
Fix failing tests by avoiding empty class attr
2018-10-13 20:26:23 +02:00
JC Brand
99c0687684
Fixes #537 Open xmpp: URIs inside Converse
2018-10-13 20:16:00 +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
1c89af47ef
Bugfix. Promise is not callable
2018-10-13 14:14:02 +02:00
JC Brand
7270abb08b
Some refactoring of the code that collapses leave/join messages
...
Mostly to match any previous leave/join message from the same user
Fixes #1062
2018-10-13 13:23:55 +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
aa50942400
Don't show join message for non-online occupants created from members list
...
Fixes #1169
2018-10-11 13:23:39 +02:00
JC Brand
8c772a7f71
We do actually want to show join/leave messages for members
2018-10-11 13:21:01 +02:00
JC Brand
a339053163
Revert "Remove check for @
and for allow_non_roster_messaging
"
...
Seems to make some sense after all, but we need to add a check that the
user isn't a roster contact as well.
2018-10-11 11:58:45 +02:00
JC Brand
eee7ff763e
Remove check for @
and for allow_non_roster_messaging
...
The second especially doesn't make sense and I'm currently not aware of
a case headline stanzas with a JIDs containing `@` and with a body
exist.
2018-10-11 11:02:20 +02:00
JC Brand
dffcc13dea
Fixes #1140 Add support for destroyed chatrooms
2018-10-10 22:57:12 +02:00
JC Brand
23e9c48e53
Avoid creating a headlines box...
...
if we don't have anything to show inside it.
Updates #1221
2018-10-10 20:12:29 +02:00
Licaon_Kter
20ca324cd8
Fix a typo in MUC error messages ( #1238 )
...
* Typo in error message
2018-10-09 06:51:31 +02:00
JC Brand
053d4070f2
Fixes #1176
...
Add config setting `send_chat_state_notifications`
2018-10-07 05:08:08 +02:00
JC Brand
b039398a73
Fixes #1204
2018-10-07 05:05:29 +02:00
JC Brand
6a5a502d58
Add support for rendering xmpp: and mailto: URIs
2018-10-07 04:46:41 +02:00
JC Brand
7a612460da
Fixes #1063 Make URLs in topic clickable
2018-10-07 03:31:18 +02:00
Emmanuel Gil Peyrot
e9007146aa
Improve the moderated and not moderated explanations
2018-10-06 19:32:03 +02:00
JC Brand
c62dca4bd4
Fixes #1199 Provide a link back to the login form
2018-10-05 20:32:34 +02:00
JC Brand
d30efcb3ab
Better bootstrap markup for the account registration form
2018-10-05 20:12:13 +02:00
JC Brand
11bd3db86b
Fixes #1190 by explicitly setting the column width
2018-10-05 17:40:57 +02:00
JC Brand
7a330600d4
Fixes #1214
...
Hide "add contact" button and requesting/pending contacts when
allow_contact_requests is false.
2018-10-05 17:19:53 +02:00
JC Brand
82ce73005b
Fixes #1222
2018-10-05 04:54:00 +02:00
JC Brand
5836e9d805
Formatting
2018-10-05 04:43:24 +02:00
JC Brand
d426d79702
Bugfix. Room features weren't being refreshed properly
...
We were removing the disco entity, but it's associated collections
(`features`, `fields`, `identities` etc) were still stored in
localStorage and not cleared.
So when the entity gets recreated, the stale localStorage cached items
repopulate the collections.
Added `refreshFeatures` API method for refetching disco features and use
that instead.
2018-10-05 04:42:34 +02:00
JC Brand
c1106f3867
Bugfix. Handler not triggered when submitting password form 2nd time
2018-10-05 03:29:14 +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
79b8ed7177
New release 4.0.2
2018-10-02 22:51:01 +02:00
JC Brand
dbfd460125
Don't include additionalData
when en/decrypting with crypto.subtle
...
Otherwise compatibility with Conversations is broken.
Unfortunately this means that OMEMO won't work on Edge, because it
for some reason requires the additionalData.
References:
* https://github.com/conversejs/converse.js/issues/1187#issuecomment-426276243
* https://stackoverflow.com/questions/42933162/web-crypto-api-using-microsoft-edge-38-14393-0-0/42950731
Fixes #1187
2018-10-02 22:07:16 +02:00
JC Brand
148eaeacf5
Bugfix. Error messages don't have associated vcards
2018-10-02 18:04:03 +02:00
JC Brand
ba37826d44
Hook in Hindi and Romanian and update all pot, po and json files
2018-10-02 17:34:59 +02:00
JC Brand
45643d52bf
fixes #1225
2018-10-01 21:50:25 +02:00
JC Brand
e05b7e9de3
OMEMO fixes for Edge.
2018-09-25 13:21:48 +02:00
JC Brand
bf76b3b486
Add a polyfill for TextEncoder/TextDecoder for Edge
2018-09-25 13:20:55 +02:00
JC Brand
6bd4782ff6
Include filename in download link and embedd ogg audio
2018-09-25 00:21:17 +02:00
JC Brand
af35d461e8
Set max-height for embedded videos.
...
Also udpate markup to not use `<source>`.
updates #1189
2018-09-24 23:56:54 +02:00
JC Brand
31080bf2f9
Add a FormData polyfill for Edge comptaibility
...
Fixes #1220
2018-09-24 16:18:51 +02:00
Dele Olajide
647f7cf302
Deleolajide m4a webm support ( #1217 )
...
* Add support for webm video and m4a audio media files
* updated CHANGES.md
2018-09-24 10:00:10 +02:00
JC Brand
505df62eab
Remove start.frag and end.frag
...
They're no longer needed since we're using webpack
2018-09-19 16:00:39 +02:00
JC Brand
682bace83b
Don't show new messages indicator for CSN messages
2018-09-19 13:27:03 +02:00
JC Brand
6dfd0d1aa5
Make sure popovers also work in overlay view mode
2018-09-19 13:01:15 +02:00
contrapunctus-1
7d861be8d7
Use compliance.conversations.im for server recommendation ( #1206 )
2018-09-19 12:25:12 +02:00
JC Brand
094a8a578a
Fixes #1201 Emoji picker appears when pressing enter
2018-09-18 16:26:10 +02:00
JC Brand
0833478da4
Use bootstrap4 for the Converse website
2018-09-18 16:15:32 +02:00
JC Brand
48dc02cf3a
Fixes #1117
...
Silently set status when it comes from a presence stanza
2018-09-18 14:04:50 +02:00
JC Brand
dee49e382c
Avoid horizontal scrolling for messages in Firefox
2018-09-18 13:14:55 +02:00
JC Brand
c37a1dcbb2
Add explanatory snippets from relevant XEP
2018-09-17 10:26:05 +02:00
JC Brand
ad9a840cb7
Avoid saving full MUC JID as domain
2018-09-14 10:31:58 +02:00
JC Brand
b4a70c5f31
Refactor getJidsWithAffiliations
...
Previously the Promise.all made it all-or-nothing, now it'll return
partial matches as well and it'll also log error stanzas.
2018-09-13 16:42:54 +02:00
JC Brand
93c956ba4b
Bugfix. Should be && not ||
2018-09-13 16:42:54 +02:00
JC Brand
0a3a6222c6
Provide error feedback to the /register
command.
...
Also fix if/boolean bug when checking whether we should automatically
register
2018-09-13 12:39:50 +02:00
JC Brand
8c391fe067
Add new config setting enable_muc_push
2018-09-13 11:48:11 +02:00
JC Brand
dee10bfe45
Clear MUC disco after closing a room
...
This is to avoid having a stale/inaccurate MUC features list when
reopening a previously closed MUC
2018-09-13 11:23:37 +02:00
JC Brand
cd05b89726
Fix failing tests due to MUC disco refactoring
2018-09-13 10:52:25 +02:00
JC Brand
8806efce50
Include nick when registering someone as a member
...
This will cause their nick to be registered (if Prosody supports it).
2018-09-12 15:32:38 +02:00
JC Brand
f5b10ff6e8
Formatting
2018-09-12 15:32:37 +02:00
JC Brand
71370f5b45
Add the /register
command for registering yourself
2018-09-12 15:32:37 +02:00
JC Brand
17401cb903
Improvements to automatic nick registrations
...
Also expand and fix the associated test.
2018-09-12 12:36:25 +02:00
JC Brand
6457bc765a
MUC: Use converse-disco to query for room features
...
By doing so we create a new DiscoEntity for the room, which allows us to
query for features via the disco API.
We also avoid duplication of functionality between converse-muc and
converse-disco
2018-09-12 12:36:14 +02:00
JC Brand
197451db54
Add support XEP-0128 service discovery extensions
...
Also add new API methods which return features and XEP-128 fields.
2018-09-12 12:36:13 +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
764686dd19
Enable push services for a MUC domain
...
As soon as a chatroom from that domain is opened and if the MUC supports it.
2018-09-11 11:29:02 +02:00
JC Brand
989ce0f54d
Fixes #1184
2018-09-10 16:21:52 +02:00
JC Brand
a3911094d3
Fix incorrect closing tag
2018-09-10 16:09:38 +02:00
Martin/Geno
dbe88535f1
[BUGFIX] html br
2018-09-10 15:58:17 +02:00
JC Brand
2f2b2ceaf2
Bugfix. Don't create occupants without nick/JID
2018-09-10 08:11:09 +02:00
JC Brand
09bb6b494d
New release 4.0.0
2018-09-07 16:20:30 +02:00
JC Brand
201b8559b6
Avoid bookmark toggle duplication
2018-09-07 16:09:12 +02:00
JC Brand
cfcab80147
Don't inform of unencryptable OMEMO messages unless in debug mode
2018-09-07 15:23:16 +02:00
JC Brand
06352b67c1
Fix AttributeError
2018-09-07 14:49:11 +02:00
JC Brand
8cc88d9b17
Fixes #1152 CSN in MUC triggers rate limiting.
...
- Avoid registering `sendChatState` twice as handler.
- Avoid sending out a CSN right after sending out a message
2018-09-07 14:00:57 +02:00
JC Brand
999536365d
Fixes #1014 Don't show IRC gateway as MUC prefill
2018-09-07 13:14:36 +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
47bde92513
Fixes #1052 Moment locale incorrectly set to zh-tw
2018-09-07 10:38:47 +02:00
JC Brand
27378068c0
Fixes #1064 /topic without argument sets topic to "undefined"
2018-09-07 10:21:47 +02:00
JC Brand
572cc49498
Show room subject in heading, not description
2018-09-07 09:55:36 +02:00
JC Brand
2ef117e402
Fix more missing icons due to Fontawesome upgrade
2018-09-06 19:50:41 +02:00
JC Brand
2acc11f776
Fixes #1158 . Fall back to bookmark JID if name is not available
2018-09-06 17:25:10 +02:00
JC Brand
baf598608a
Fix leave icon
2018-09-06 17:09:47 +02:00
JC Brand
50a1bd7bc5
Fixes #1159
2018-09-06 17:09:32 +02:00
JC Brand
99432eebd9
I think this fixes #1160
...
Don't included MAM data form if there's nothing to filter
2018-09-06 16:56:13 +02:00
JC Brand
565cfc3984
Hook in the Czech translations
2018-09-06 16:03:37 +02:00
JC Brand
023249f62e
Render profile avatar as canvas.
...
We now have uniform avatar rendering for the profile, messages and
chatboxes.
By rendering as canvas, we can avoid stretching the image.
In the process I also moved the ChatBoxViews collection into its own
plugin `converse-chatboxviews` and placed the AvatarAware views there.
fixes #1157
2018-09-06 15:33:13 +02:00
JC Brand
9da214fb76
Match uppercase file names and extensions
2018-09-06 14:03:41 +02:00
JC Brand
c7ae188002
Re-add signout icon and hide clear-text icon when appropriate
2018-09-06 13:37:55 +02:00
JC Brand
4903d748d0
Save hidden state of singletons if possible
2018-09-06 09:44:44 +02:00
JC Brand
eca11953bb
Upgrade to fontawesome 5
2018-09-04 13:34:06 +02:00
JC Brand
adee252b28
Close emoji dropdown on enter and prevent default
2018-09-03 14:36:09 +02:00
JC Brand
23b65f5fc5
Lazily load emoji images
2018-09-03 14:20:14 +02:00
JC Brand
e35fceff1a
Remove the need for emojione
2018-09-03 14:16:59 +02:00
JC Brand
1d38d8af03
Use twemoji for rendering emojis
2018-09-03 13:24:37 +02:00
JC Brand
6b157eedde
Remove converse-oauth as core plugin
2018-09-03 10:50:51 +02:00
JC Brand
866f2737da
More JSDoc docstrings for API methods
2018-09-02 23:43:39 +02:00
JC Brand
5f16babebd
Fix failing OMEMO test and simplify by using async/await
2018-09-02 14:27:05 +02:00
JC Brand
cce27fac99
Avoid unnecessary promise wrapping
2018-09-02 14:18:05 +02:00
JC Brand
16deecd468
All API methods of converse-core are now documented with jsdoc
2018-09-02 12:15:26 +02:00
JC Brand
45fc71c05d
More jsdoc docstrings as well as an intro page and JSON config
2018-09-02 10:11:37 +02:00
JC Brand
6f13676ee1
Show OMEMO error messages only in debug mode
2018-08-31 21:33:46 +02:00
JC Brand
1d5cf8eb7c
Fix AES-GCM encryption/decryption so that it works with Conversations
...
Fixes #497
2018-08-31 21:13:33 +02:00
JC Brand
c2184ce8e1
Always create a new session
2018-08-31 18:44:24 +02:00
JC Brand
fc6982ce08
Merge branch 'omemo-debug'
2018-08-31 18:39:01 +02:00
JC Brand
bd1fd7eef1
Key should be AES-128, not AES-256
2018-08-31 18:33:03 +02:00
JC Brand
c2f1b2543f
Pass array buffer to libsignal decrypt
2018-08-31 18:24:08 +02:00
JC Brand
c8211085fd
Pass array buffer to libsignal encrypt/decrypt methods
2018-08-31 18:10:09 +02:00
JC Brand
6a061b4525
Use raw
key format and not jwk
. Set correct key size.
2018-08-31 17:15:03 +02:00
JC Brand
ed9afe9afb
Only include key and not whole payload from libsignal
2018-08-31 13:57:49 +02:00
JC Brand
18c7ba4ad8
Bugfix. Need to first create bookmark
...
Otherwise we don't include it in the stanza.
So if an error occurs, remove the bookmark again.
2018-08-31 11:24:05 +02:00
JC Brand
bb6d4f75bf
Fade out enter/leave messages sooner and add check
2018-08-31 10:36:51 +02:00
JC Brand
86a0fa280b
Call clearSession
when disconnecting
...
So that the chatboxes get closed/removed.
Also, don't render the login form when we're just reconnecting.
2018-08-31 10:17:24 +02:00
JC Brand
1294d682e1
Automatically remove leave/enter and enter/leave messages
...
after 10 seconds.
2018-08-30 23:13:28 +02:00
JC Brand
4b5b517390
Update bookmark form with proper bootstrap markup
2018-08-30 22:32:16 +02:00
JC Brand
a44f38329c
Only create bookmark after succesfully setting it on the server
2018-08-30 13:39:50 +02:00
JC Brand
34541d6410
Add check before resetting
2018-08-30 13:39:33 +02:00
JC Brand
f947bcc4b1
Also notify if the chat is not visible in the page.
2018-08-29 13:56:18 +02:00
JC Brand
33c2d4614f
Remove unused method
2018-08-29 10:33:43 +02:00
JC Brand
f72ace506f
Replace the onChatBoxAdded override with event handlers
2018-08-28 15:08:38 +02:00
JC Brand
934e86536e
Remove another vestige of OTR
2018-08-28 14:58:07 +02:00
JC Brand
21178add98
Remove converse-otr
2018-08-27 22:09:22 +02:00
JC Brand
4f8b5a4022
Use built-in crypto instead of CryptoJS
2018-08-27 21:54:29 +02:00
JC Brand
1dc1c1f98a
Properly generate and render fingerprints
2018-08-27 21:02:31 +02:00
JC Brand
c142437320
Create new message for correction if the original is not available
...
Fixes #1172
2018-08-27 21:02:31 +02:00
JC Brand
3e7c8655ad
Add a <store>
hint to OMEMO messages.
...
updates #497
2018-08-27 16:44:19 +02:00
JC Brand
15a4bcd11e
Add method to generate missing prekeys
...
When receiving a PreKeySignalMessage, then a prekey has been chosen and
should now be removed from the list of available prekeys in the bundle,
so that a different device doesn't choose it as well.
AFAICT, libsignal removes the prekey, so it's then up to us to
regenerate it and republish our bundle.
updates #497
2018-08-27 16:43:58 +02:00
JC Brand
ea5144c7e5
Refactor the OMEMOStore to not duplicate prekeys
...
Before these changes, prekeys were stored in two places, one place that
converse-omemo accessed and one that libsignal accessed and when
libsignal deleted a prekey the other store wasn't updated.
Now we let the methods called by libsignal store/remove prekeys (and the
signed_prekey) in the same place as used by the code in converse-omemo.
2018-08-25 23:22:18 +02:00
JC Brand
7959855891
Move publishBundle
to OMEMOStore
...
updates #497
2018-08-24 16:32:40 +02:00
JC Brand
d784e4a73a
Show an icon to indicate that a message is encrypted
...
updates #497
2018-08-24 16:26:54 +02:00
JC Brand
4c5ea34acf
New build
2018-08-24 15:39:14 +02:00
JC Brand
3eb5e93f81
Finally able to send a message and decrypt it on the other side
...
Updates #497
2018-08-24 14:40:48 +02:00
JC Brand
2dd5976f65
Fix bugs in the OMEMO store and in the decrypt
method.
...
Updates #497
2018-08-24 13:17:32 +02:00
JC Brand
9e56858aae
Remove unnecessary promise wrapper
2018-08-24 10:51:59 +02:00
JC Brand
7bb7f8f4dc
Can now successfully send an encrypted stanza
...
updates #497
2018-08-23 14:03:16 +02:00
JC Brand
c1123fd6a0
Used wrong registration id and identity key when building a session
...
updates #497
2018-08-23 14:03:12 +02:00
JC Brand
058905134e
Serialize all array buffers to base64 before storing
...
Array Buffers can't be JSON serialized as is.
updates #497
2018-08-23 14:03:09 +02:00
JC Brand
d4ccf20e7f
Update modals when devices get added
...
updates #497
2018-08-23 14:03:06 +02:00
JC Brand
b17579501f
Provide error output to user when encrypted message can't be sent
...
updates #497
2018-08-23 14:03:00 +02:00