JC Brand
d3a4555165
Re-add support for muc_domain
and add locked_muc_domain
.
...
updates #1373
2019-02-26 11:58:01 +01:00
JC Brand
2ddd918f6a
Fixes #1437 . List of groupchats doesn't scroll
2019-02-26 11:57:36 +01:00
JC Brand
59c43a23f0
Two changes, see below
...
* Add new test helper to create contacts via IQ exchange
* Use roster nickname to set message fullname
2019-02-24 20:27:41 +01:00
JC Brand
0ee08ee622
Use async/await for enterRoom
2019-02-22 23:14:35 +01:00
JC Brand
9b0e23dcc6
Ensure new contact is attached to existing chatbox
...
When a new contact is added, check if we already have a chatbox open for it,
and if so attach it to the chatbox.
2019-02-22 23:05:03 +01:00
JC Brand
bfaa7e47f2
Add roomviews.get API method
2019-02-22 21:44:03 +01:00
JC Brand
0fc5112000
Found one more occurance of the word room
2019-02-22 21:44:03 +01:00
JC Brand
5afb3051cc
New release v4.1.2
2019-02-22 16:49:45 +01:00
JC Brand
a8e05dae36
Fall back to chatbox JID if the stanza has no from
2019-02-21 09:21:18 +01:00
JC Brand
f123f483ae
Fixes #1406
2019-02-21 09:19:02 +01:00
JC Brand
ce2ae87df2
Bugfix. Open groupchats not shown when logging in after disconnection
...
* Replace `tearDown` overrides with event handlers.
* Move presence listeners to `connected` event handler, otherwise they
don't get called when logging in again after disconnection.
* Add `clearSession` listeners to clean up upon disconnection.
* Use `Promise.all` instead of listening for multiple events.
2019-02-20 23:08:27 +01:00
JC Brand
253958ed93
Prevent duplicate messages by comparing MAM archive id to XEP-0359 stanza ids
2019-02-19 23:08:29 +01:00
JC Brand
4463b44773
Use "XMPP address" instead of "XMPP username"
2019-02-19 15:00:38 +01:00
JC Brand
e389d77107
New release 4.1.1
2019-02-18 20:40:55 +01:00
André Berenguel
8dcb327ead
Update contact nickname when receive a roster push
2019-02-18 20:23:20 +01:00
JC Brand
c026dc8a86
New copyright year
2019-02-18 20:23:18 +01:00
JC Brand
9233087548
Don't hash web storage ids.
...
Makes debugging more difficult and uses up extra CPU cycles for no real security benefit.
2019-02-18 20:23:18 +01:00
JC Brand
af0093bd39
Bugfix: MUC invite form not shown
2019-02-18 15:42:56 +01:00
JC Brand
d830bc1250
Also check for duplicates in one-on-one messages
2019-02-14 15:17:49 +01:00
JC Brand
d08f738656
Bugfix: Restore textarea size after sending message
2019-02-14 13:21:26 +01:00
JC Brand
7e34a462c1
Add support for handling multiple stanza-id
elements
2019-02-14 12:13:07 +01:00
JC Brand
8d00294681
Use origin-id
to check for reflected messages.
...
Also, store the returned `stanza-id` on the message.
2019-02-14 11:33:28 +01:00
JC Brand
6eb05be4be
XEP-0359: Better usage of stanza-id
to check for dupes
2019-02-13 22:14:58 +01:00
JC Brand
5b25d5daaa
Don't send markers to someone not on your roster
...
Updates #324
2019-02-13 19:32:02 +01:00
JC Brand
370c4c84d9
Use async/await instead of explicit promises
2019-02-13 15:49:51 +01:00
JC Brand
4c83a23382
Revert "Reject the waitUntilFeaturesDiscovered
promise if query failed"
...
This reverts commit 01f0a65209
.
Updates #1410
2019-02-13 15:44:17 +01:00
JC Brand
2c9c11e971
onMessage
improvements.
...
Don't check for older messages with same msgid
we can't rely on a message's `id` attribute being unique.
Also, remove `createMessage` in favour of calling `messages.create` directly.
2019-02-13 15:24:02 +01:00
JC Brand
0169d86b11
Re-add check for allow_non_roster_messaging
2019-02-13 15:21:41 +01:00
JC Brand
dfe9d301c6
Test that roster groups are fetched before contacts
...
updates #1405
2019-02-13 11:20:49 +01:00
laszlovl
b172861d2c
Dont run fetchRosterContacts async, to prevent processing presence before contacts are created
...
Fixes #1405
2019-02-13 09:13:45 +01:00
JC Brand
4a5603ab2e
More specific selector for markers and another test
...
Updates #1442
2019-02-13 08:58:27 +01:00
JC Brand
dbcf6002ff
Fixes #1442
2019-02-12 19:10:46 +01:00
JC Brand
9f5031c278
Make converse.initialize
an async
function
...
- Combine all test init functions into `initConverse`
- Use `async` functions in more tests
- Replace `var` with `let` and `const` in more tests
- New utils method `toStanza` which converts a string to a Node
2019-02-12 15:34:50 +01:00
JC Brand
7100681496
Use devDependencies consistently
...
'dependencies' in package.json get installed as well when installing
converse.js or @converse/headless in a 3rd party project, which is
unnecessary.
2019-02-11 19:34:21 +01:00
JC Brand
aa64df35ee
converse-core is not a plugin
2019-02-11 14:45:16 +01:00
Johan Oudinet
a7386200f7
Makefile: Simplify sed commands
...
And fix an extra space added by mistake by the sed command on
_converse.VERSION_NAME in converse-core.js.
2019-02-11 04:45:35 -07:00
JC Brand
a1a381428c
Add converse-chatboxviews as dependency
2019-02-08 15:37:47 -07:00
JC Brand
abe21dce66
Include origin-id
in outgoing messages
2019-02-08 15:34:16 -07:00
laszlovl
590d8769a9
Prevent duplicate messages on MUC join
...
Fixes #1414
2019-02-08 15:32:21 -07:00
JC Brand
004519931c
Upgrade babel and lodash
2019-02-05 13:02:36 -07:00
Christoph Scholz
5e1f5785f9
fix moderator commands that change affiliation
2019-02-05 12:47:53 -07:00
JC Brand
e1f8d53c46
Initial support for chat markers. Updates #324
2019-02-01 15:05:13 +01:00
JC Brand
4c964c56c0
Filter out undefined
2019-02-01 15:05:13 +01:00
JC Brand
1ca7d34c25
Ignore (and destroy) archived/delayed messages with no body to show
2019-01-31 16:11:17 +01:00
Christoph Scholz
b667eae1c8
muc moderator commands can be disabled selectively
2019-01-30 03:42:12 +01:00
JC Brand
10f629310e
Need to declare muc_show_join_leave
as setting
2019-01-29 05:50:43 +01:00
Holger Weiss
af091faf33
Resurrect muc_show_join_leave option
...
The option got lost in commit 9528d81c00
.
Fixes #1263
2019-01-29 05:45:35 +01:00
JC Brand
4150a3a70b
Add Esperanto as supported language
2019-01-29 05:40:34 +01:00
JC Brand
3cbc99a3f2
Roster fixes related to reconnecting
...
Avoid `An 'url' property must be specified` error by properly clearing
presence data upon teardown and then resetting the browserStorage upon
reconnection.
Store contact resources in a Backbone collection
2019-01-28 13:30:47 +01:00
JC Brand
4e9e532a06
Use async/await in populateRoster
2019-01-28 13:27:25 +01:00
JC Brand
374260242c
Variable interpolation bugfix
2019-01-28 13:27:25 +01:00
JC Brand
d97deaea80
Fixes #1369
...
* Add test and changelog entry
* Also show message subject if available
2019-01-28 13:27:25 +01:00
JC Brand
3c0e3d3fab
Refactor out createMessage
.
...
Changes:
* Avoids leaky abstraction of MUC code into converse-chatboxes
* Avoid creating unnecessary message objects (e.g. without <body)
* Add fix for #1369 .
* Rename spec/chatroom.js to spec/muc.js
2019-01-28 13:27:25 +01:00
JC Brand
7753177ca9
Remove unnecessary aliases from webpack
2019-01-25 07:32:50 +01:00
Emmanuel Gil Peyrot
9702e9dee3
Add ARIA live region on chat-content
...
This asks screen readers to read every message received, and is
mandatory for blind users to get notified of new messages.
2019-01-23 14:01:27 +01:00
Christoph Scholz
9eee13e192
fix direct invite for membersonly room
2019-01-22 10:41:59 +01:00
Christoph Scholz
84be0fb9f7
new config option "roomconfig_whitelist"
2019-01-12 21:51:47 +01:00
JC Brand
a2f42d27a2
New release 4.1.0
2019-01-11 18:49:37 +01:00
JC Brand
79990f7e01
Don't unnecessarily set height on textarea
2019-01-11 18:38:09 +01:00
JC Brand
4fe2b23d9c
Modernize some roster tests
...
By ditching jquery and using async/await
2019-01-11 17:40:52 +01:00
Lynesth
df7d663b1d
Force avatar refetch if new hash received
...
Fixes #1334
2019-01-11 17:39:49 +01:00
Lynesth
7e370c1b81
Fix send_chat_state_notifications option for MUCs
...
Fixes half of #1337 .
2019-01-11 17:32:23 +01:00
JC Brand
dc07440de8
Bugfix. Don't create chats for messages without body
2019-01-10 21:47:50 +01:00
JC Brand
1984bdd8e1
Remove row
class.
...
Causes the register form to overflow the parent bounds in overlay view
2019-01-10 21:17:05 +01:00
JC Brand
1eb00d3e5d
CSS/HTML: Nicer styling of branding on the login page
2019-01-10 21:15:01 +01:00
JC Brand
58c29ea26b
Bugfix. Make sure to refresh
...
Otherwise we get an empty collection of features (due to features being
queried for a non-existent MUC)
2019-01-10 13:22:15 +01:00
JC Brand
01f0a65209
Reject the waitUntilFeaturesDiscovered
promise if query failed
...
No code relies on this currently, but it's seems the right thing to do
2019-01-10 13:21:06 +01:00
JC Brand
96f38150f9
Use async/await and don't swallow errors.
...
Also, handle the error in `getRoomFeatures`
2019-01-10 13:16:08 +01:00
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
JC Brand
2fb435b2e0
Don't assume id of "current" for bookmarks' PEP node
...
Causes problems with some versions of Ejabberd which use a different id.
Will be fixed in upcoming versions.
2019-01-08 15:12:02 +01:00
JC Brand
8c708b5fe5
Focus textarea when switching between rooms
2019-01-04 05:48:23 +01:00
JC Brand
d92a742877
Fixes #1390
2019-01-04 05:43:59 +01:00
JC Brand
0c1363c103
The hide_muc_server
option no longer exists
2019-01-03 14:12:36 +01:00
JC Brand
a962fc0a24
Don't unnecessarily check for #publish-options
2019-01-03 13:49:39 +01:00
Christoph Scholz
eacd7fd933
implement /destroy command in muc
2019-01-03 13:09:13 +01:00
JC Brand
7d74319efd
Fixes #1356
2019-01-03 11:45:52 +01:00
JC Brand
aa274f41c2
Make background darker and add new logo
2019-01-02 22:54:04 +01:00
JC Brand
debb8f0e4f
Remove .icon-converse styles
2019-01-01 12:30:54 +01:00
JC Brand
a31c2d40f2
Remove icomoon fonts and use Bauman and the new logo for branding
2019-01-01 11:12:23 +01:00
JC Brand
98fee37a41
Destroy devicelist if we can't fetch the devices for it.
...
Otherwise Converse will try to fetch the devices again and again upon
page refresh.
2018-12-21 06:29:22 +01:00
JC Brand
45ed506551
Don't hardcode devices storage to session storage.
...
The devicelists are not stored in session storage, so we end up with
fetching all the devices per stored devicelist with every new browser
session.
2018-12-21 06:29:22 +01:00
JC Brand
e6c66cfebd
Ability to republish if publish-options precondition not met
2018-12-21 06:29:22 +01:00
JC Brand
bcb3bcaf03
OMEMO can only be supported once it's been initialized
...
updates #1180
2018-12-21 06:29:21 +01:00
JC Brand
a3830e9a7a
Use async/await
2018-12-21 06:29:21 +01:00
JC Brand
be1be3534c
Don't render the lock icon when the MUC doesn't qualify
...
Updates #1180
2018-12-21 06:29:21 +01:00
JC Brand
9aca32ad97
Handle errors when sending encrypted groupchat messages
...
updates #1180
2018-12-21 06:29:21 +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
85dab7367b
Use pubsub#access_model
to publish keys and devices publically
2018-12-21 04:35:28 +01:00
JC Brand
0b25800392
Add converse-pubsub.js
2018-12-20 21:51:16 +01:00
JC Brand
9c05ca9a09
Add test for sending/receiving MUC OMEMO messages
...
While adding support for MUCs, I refactored converse-omemo somewhat to move functions
out of `overrides` and to use async/await
Updates #1180
2018-12-20 21:51:16 +01:00
JC Brand
f64fdb8088
Render the OMEMO lock icon in MUC toolbars as well
...
updates #1180
2018-12-20 21:51:16 +01:00
JC Brand
c8d78d744b
Fix typo and formatting in user-facing strings
2018-12-19 05:50:06 +01:00
JC Brand
4a65e39804
Set default to avoid includes
being called on undefined
2018-12-17 15:29:21 +01:00
Christoph Scholz
d2d64952a0
set store hint on receipts and type='chat'
2018-12-17 15:20:21 +01:00
JC Brand
38d7723bee
Don't call trimChats when not in overlayed mode
2018-12-17 15:18:36 +01:00
JC Brand
82bfe66cac
Simplify setting of MUC features.
...
We don't need an event handler that sets the "opposite" features to
false if we set all features properly in getFeatures
2018-12-17 15:18:20 +01:00
JC Brand
94bcba741b
Handle non-elements, like text nodes
2018-12-17 15:17:53 +01:00
JC Brand
9c812157ee
Use async/await
2018-12-17 15:16:43 +01:00
JC Brand
aed1c60e86
Still trying to fix travis issue.
...
Stop listening on the _converse obj sooner
2018-12-17 12:09:56 +01:00
JC Brand
6c3990ac86
Trying to fix trimChats is not a function
on Travis
2018-12-17 11:50:56 +01:00
JC Brand
49efe390f9
Fix typo
2018-12-17 11:42:43 +01:00
JC Brand
d5e89655dc
Still check the view mode since the trimChats method is debounced
2018-12-16 11:32:19 +01:00
JC Brand
a389f52adb
Fixes #1353 Don't expect delivery receipts to have type chat
2018-12-16 11:22:13 +01:00
JC Brand
b7c01993b7
User-facing term is "groupchat", not "room"
2018-12-16 11:22:12 +01:00
Christoph Scholz
216a684904
prevent message delivery receipts for carbons and own
2018-12-15 20:04:31 +01:00
JC Brand
6ec183451d
Remove global event listener when appropriate.
...
Otherwise trimChats called in `fullscreen` tests (due to being
registered in a previous test)
2018-12-15 20:01:19 +01:00
JC Brand
9ff505fd66
Add unregisterGlobalEventHandlers method
...
And call it when `converse.initialize` gets called again
2018-12-15 20:00:36 +01:00
JC Brand
003af0c438
visibilitychange
is supported by all browsers we support
...
So simplify the code that saves the window state
2018-12-15 19:59:30 +01:00
JC Brand
935ca52b03
Test that open groupchats are shown with their bookmarked names
2018-12-15 19:31:19 +01:00
JC Brand
d5485d09ae
Always render the OMEMO lock icon
...
When OMEMO isn't possible, render it as grey.
This change makes OMEMO for MUCs easier, since there I anticipate that
OMEMO support might change dynamically based on who enters/exits the
room.
updates #1180
2018-12-14 11:25:57 +01:00
JC Brand
9b61b2bdab
We do need a validate method, but it needed a fix.
2018-12-13 10:07:31 +01:00
JC Brand
c954610903
No need to call validate
here
...
Since the plugin is not enabled when it matters.
updates #1374
2018-12-13 08:57:58 +01:00
JC Brand
5dacb96b78
Don't try to create ChatBox from controlbox data in embedded mode
...
updates #1374
2018-12-12 18:52:41 +01:00
JC Brand
e38daf34f7
Remove coupling between converse-chatboxes and converse-roster
...
In embedded mode (singleton) we don't need or want the roster, so we
should be able to disable it.
updates #1374
2018-12-12 18:52:40 +01:00
JC Brand
df3118fe81
Fix bookmark icon
2018-12-12 17:40:14 +01:00
JC Brand
ccb8662ef7
Bugfix. First match for MUC commands
2018-12-10 15:40:30 +01:00
JC Brand
1d55b131f6
CSS: set groupchat owner badge to groupchat color
2018-12-10 15:12:29 +01:00
JC Brand
262b9f9260
CSS: Give color to the controlbox headings
2018-12-10 15:12:28 +01:00
JC Brand
4c965b58d3
CSS: Reuse list-item-action
class for "Contact Requests" actions
2018-12-10 15:12:27 +01:00
JC Brand
2a79c5b08a
Consistent icon usage for leaving a room
2018-12-10 13:31:42 +01:00
JC Brand
02c907128c
Fix regex for setting the version number.
...
updates #1366
2018-12-07 13:55:41 +01:00
JC Brand
384f1d7977
New release 4.0.6
2018-12-07 12:40:02 +01:00
JC Brand
90bf42a002
HTML and CSS improvements for listed items in the controlbox
...
Fixes #1348
Tried to get the unread messages indicator to line up properly with the
text and icons in a room list item.
Also tried to reuse styles where appropriate, specifically
`.list-container` and `.list-toggle`.
2018-12-07 11:37:51 +01:00
JC Brand
aa730b5976
New event messageNotification
2018-12-06 13:55:28 +01:00
JC Brand
a2441545db
Add check inside method, like with playSoundNotification
2018-12-06 13:52:32 +01:00
JC Brand
2857293ad1
Fix failing tests by waiting and slightly improve code
2018-12-06 13:10:34 +01:00
JC Brand
5f00987578
Bugfix. Pass original_stanza to isDuplicate
2018-12-06 13:10:33 +01:00
JC Brand
79bfb45639
Use async/await in MAM code and tests
2018-12-06 13:10:33 +01:00
JC Brand
118bc20478
Rename isSingleton
to isUniView
...
We distinguish between UniView and MultiView instances.
UniView means that only one chat is visible, even though there might be multiple ongoing chats.
MultiView means that multiple chats may be visible simultaneously.
2018-12-04 13:50:15 +01:00
JC Brand
dd3133e7de
Avoid RID out of range
errors in Prosody
...
by not flushing stanzas when sending out an <inactive> CSI.
When reloading the page, the stanzas are resent (because we never had
time to receive acks) which causes problems on Prosody (and likely also
causes the Ejabberd "other-request" errors).
2018-12-03 21:33:34 +01:00
JC Brand
f051ff283b
Don't store vcards globally to all accounts.
2018-11-30 19:43:40 +01:00
JC Brand
714da6f0df
Wait until push services are disabled as well
2018-11-29 13:22:58 +01:00
JC Brand
7109ff672e
Add api method to retrieve controlbox
2018-11-29 12:37:21 +01:00
JC Brand
6358fd7c97
Use finally
2018-11-29 10:41:46 +01:00
JC Brand
cd63afcaad
Add space following question mark
2018-11-22 09:09:14 +01:00
Christoph Scholz
267d91a4f3
don't send receipt requests in MUCs
2018-11-20 17:38:59 +01:00
JC Brand
d341c6a13b
Revert "Use getter to lazily create Strophe.Connection"
...
This reverts commit 7af73c3471
.
Doesn't look like the right approach for adding support for XEP-0156.
Work on that will continue in a branch in the meantime.
2018-11-20 17:31:53 +01:00
JC Brand
7af73c3471
Use getter to lazily create Strophe.Connection
2018-11-18 18:05:47 +01:00
JC Brand
86593dc378
Don't render http (i.e. non-TLS) resources
...
Causes "Mixed Content" TLS errors
2018-11-18 18:05:47 +01:00
JC Brand
c46d937ea4
Fix null check
2018-11-18 15:16:40 +01:00
JC Brand
67958bba40
Check xmlns
2018-11-17 18:58:23 +01:00
Christoph Scholz
8524ff3b99
Fix missing checkmarks in old muc messages
2018-11-17 18:52:52 +01:00
Emmanuel Gil Peyrot
223deaa782
Log the actual error on MAM error
2018-11-17 18:39:28 +01:00
JC Brand
d3a684a57d
Move some functions outside of the initialize
closure
2018-11-15 23:10:40 +01:00
JC Brand
588b015e62
Release v4.0.5
2018-11-15 13:24:22 +01:00
JC Brand
5109c845ef
Add language support for Galician
2018-11-15 12:25:31 +01:00
JC Brand
35a1693ade
Use es2015 module imports in i18n.js
2018-11-15 11:51:43 +01:00
JC Brand
01c3d35db2
Remove unnecessary webpack aliases
2018-11-15 11:29:28 +01:00
JC Brand
82a97fdcb0
Add padding to receipt checkmark
2018-11-15 10:50:25 +01:00
JC Brand
7e24019568
Fixes #1288
...
Add CSS classes to differentiate between incoming and outgoing messages
2018-11-15 10:30:58 +01:00
JC Brand
ecff1fd954
Don't show role badges for /me messages
2018-11-15 10:25:12 +01:00
Emmanuel Gil Peyrot
339d8a8f92
Add XHTML compatibility
...
This is mainly a testing tool, which makes a mode where all HTML bugs
which could slightly mess up the rendering will trigger proper errors in
the browser.
Fixes #1131 .
2018-11-14 22:08:12 +01:00
Emmanuel Gil Peyrot
ab5dd4a146
Switch avatar rendering from canvas to SVG.
...
This delegates the calculation of the aspect ratio to the browser, and
generally simplifies the code.
Fixes #1156 .
2018-11-14 16:03:37 +01:00
JC Brand
352c0797ad
Rename theme to concord
and add config option for setting the theme
2018-11-14 15:56:28 +01:00
JC Brand
dde2efb653
Fix trash icons for pending contacts
2018-11-14 15:46:51 +01:00
JC Brand
067d87a73e
Fix failing test
2018-11-14 15:15:29 +01:00
JC Brand
7cb889b065
Fixes #1317 Don't show errors for CSI messages
2018-11-14 14:34:23 +01:00
JC Brand
1e7247b4d2
Add client info modal showing name and version number
2018-11-14 12:01:27 +01:00
Christoph Scholz
9a307da808
show version info in login dialog
2018-11-13 21:12:24 +01:00
JC Brand
45c47ab2c0
Merge branch 'master' into implement_last_user_interaction_in_presence
2018-11-13 18:45:47 +01:00
Christoph Scholz
12b7687a89
Implement sending presences according to XEP-0319: Last User Interaction in Presence
2018-11-13 18:39:13 +01:00
Christoph Scholz
4b7d18f418
added values 'on' and 'off' for 'trusted' option
2018-11-13 18:36:24 +01:00
Christoph Scholz
da5ca0b585
implement XEP-0184: Message Delivery Receipts
2018-11-13 17:13:35 +01:00
JC Brand
10415c252d
Remove duplicate import and make new build
2018-11-13 13:15:54 +01:00
JC Brand
b85c5b5b0e
Remove backbone.noconflict wrapper
2018-11-12 21:05:30 +01:00
JC Brand
3f751b3af4
Add guard for non-existing chat_state
value
2018-11-12 20:59:43 +01:00
JC Brand
c494f4267a
Use constant
2018-11-12 20:52:28 +01:00
JC Brand
75b923b580
Bump MAM timeout to 20 secs
2018-11-12 20:29:55 +01:00
JC Brand
3b60ced39c
Add a button for regenerating your OMEMO device bundle
2018-11-12 20:29:55 +01:00
JC Brand
fa4c555c44
Use async/await instead of explicit Promise
2018-11-12 14:45:57 +01:00
JC Brand
773c678c4d
More button color fixes after switching to css properties
2018-11-12 14:06:52 +01:00
JC Brand
6139b8060d
Consistent placing of modal buttons
2018-11-12 14:05:35 +01:00
JC Brand
affafc746c
Bugfix. Make sure _devices_promise
is a Promise
2018-11-12 12:04:25 +01:00
JC Brand
9d0cfe8f43
Presence subscription bugfixes.
...
* Return the promise, so that we can wait.
* `sendContactAddIQ` now returns a promise and doesn't take a callback
* Don't call `destroy` on a contact that's already been removed.
2018-11-10 19:09:51 +01:00
JC Brand
461ebc0aea
Use async/await instead of explicit promises
2018-11-09 17:37:14 +01:00
JC Brand
d9093c09ee
Fixes #1312
2018-11-07 12:11:22 +01:00
JC Brand
476b8041aa
Fix badge & button colors. Ensure vars apply to .converse_content
2018-11-07 11:40:35 +01:00
JC Brand
2179255d0a
Add button for resyncing roster contacts
2018-11-07 11:12:04 +01:00
JC Brand
5e7d5d7fb1
Add own class and style for controlbox heading buttons
2018-11-07 11:11:20 +01:00
Christoph Scholz
8ba8a4bc01
new value 'all' for 'show_desktop_notifications'
2018-11-06 10:31:02 +01:00
Christoph Scholz
1bdb171698
added option notification_delay
2018-11-06 06:46:40 +01:00
JC Brand
cc3735ff08
Use async/await
2018-11-05 21:12:12 +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
Emmanuel Gil Peyrot
9a12afc702
Change a docstring into a comment.
2018-11-03 12:05:23 +01:00
Emmanuel Gil Peyrot
5cd7ccb3ef
Correctly display error when HTTP File Upload isn’t supported by the server.
2018-11-03 00:55:18 +01:00
Emmanuel Gil Peyrot
0d4603d80d
Upload files on drag-and-drop.
...
Fixes #1188 .
2018-11-03 00:55:18 +01:00
Emmanuel Gil Peyrot
8c5df984f4
Make user JID a link in user details.
2018-11-03 00:32:29 +01:00
Emmanuel Gil Peyrot
6e26f8b50a
Put the colons in the translatable message.
...
This helps languages which use a different typography for the colon,
such as French which has a narrow non-breakable space before it, or
Japanese which uses a full-width colon character.
2018-11-03 00:25:07 +01:00
Christoph Scholz
171e257c22
make default paths in notifications relative
2018-11-03 00:23:59 +01:00
JC Brand
609995c767
updates #1294 Pass i18n function to template
2018-11-03 00:15:23 +01:00
Emmanuel Gil Peyrot
73e2d44d22
Allow translation of “Uploading file:”.
2018-11-03 00:15:23 +01:00
JC Brand
f974c79acf
Bugfix. Declare converse-modal as a dependency of converse-message-view
...
Otherwise we get `TypeError: Cannot read property 'extend' of undefined`
when attempting to extend `BootstrapModal`.
2018-11-02 11:59:56 +01:00
JC Brand
f471dd2474
Release 4.0.4
2018-10-29 22:28:28 +01:00
JC Brand
6bab16d834
New patreon backers
2018-10-29 11:44:25 +01:00
Emmanuel Gil Peyrot
8c61922d7f
Replace the default avatar with a SVG version.
...
This is both lighter, looks better when rendered at arbitrary
resolutions (as there is no scaling being done), and actually editable
for different deployments.
This image has been hand-drawn using the PNG as a background.
2018-10-28 23:51:00 +01:00
JC Brand
2cfea7cb51
Add description for translateable text
2018-10-28 23:24:33 +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
fd41994672
Pin to latest backbone.browserStorage, then make clean && make dist
2018-10-28 18:23:05 +01:00
JC Brand
6a87caad6e
Don't use template literals for translated strings
2018-10-27 23:12:17 +02:00
JC Brand
11ac846b31
Fixes #1259
2018-10-27 22:56:05 +02:00
JC Brand
f0c5f69757
Fix unclarity in tooltip
2018-10-27 19:23:35 +02:00
JC Brand
36f63d9000
Fixes #1272 Hiding MUC occupants leaves a blank space
2018-10-26 16:37:56 +02:00
JC Brand
20098c08fd
Restrict whitelist for headless only to the relevant plugins
2018-10-26 16:09:45 +02:00
JC Brand
0a02b62cd8
Update build docs on converse-headless and add README
2018-10-26 16:07:37 +02:00
JC Brand
6a70f8abb4
Updated build
2018-10-26 14:45:36 +02:00
JC Brand
2f9089ee10
Updates #1261 More file upload fixes
2018-10-26 14:45:36 +02:00
JC Brand
98b27fbe0c
Merge pull request #1271 from Ppjet6/issue-1252-bookmark-title
...
Fix #1252 , incorrect bookmark icon title
2018-10-26 13:13:06 +02:00
JC Brand
6519083414
Revert to explicit Promise-based code.
...
* src/converse-controlbox.js
async/await causes many tests here to fail due to the controlbox toggle
now apparently showing up a little later (and the tests don't wait for
it to happen).
* src/converse-minimize.js
We get timeout issues in tests.
* src/headless/converse-chatboxes.js
We get a stack overflow while running tests.
2018-10-26 12:53:01 +02:00
JC Brand
7a1f62d34a
Move isVisible
from core utils to html utils
2018-10-26 10:15:36 +02:00
Maxime “pep” Buquet
6f457333ba
Fix #1252 , incorrect bookmark icon title
...
Signed-off-by: Maxime “pep” Buquet <pep@bouah.net>
2018-10-25 22:29:20 +01:00
JC Brand
d5b5bac5d4
Bugfix. Filter step was removed when converting to async/await
2018-10-25 23:08:19 +02:00
JC Brand
b05b57192d
In these two cases I prefer explicit Promise callbacks
...
In both cases we need the `catch` statement due to the fact that a
sendIQ call gets made which rejects for error stanzas (and I find the
Promise form much compacter).
Additionally, we don't want to hold up subsequent execution until
the element has been faded out.
2018-10-25 23:08:19 +02:00
JC Brand
2bcac13683
Catch, log and report errors related to vcard update
2018-10-25 23:08:19 +02:00
JC Brand
e3bce02975
More usage of async/await
2018-10-25 23:08:19 +02:00
JC Brand
55fce912df
Merge branch 'master' into async-await
2018-10-25 18:36:04 +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
6ebf6f6ecc
Fix failing test by making sure notifications are cleared
2018-10-25 08:21:38 +02:00
JC Brand
0715476862
Add package-log.json for headless build. Set to 4.0.4
...
This is probably fine as a patch release. Even tough files have been
moved around, the API is still the same.
2018-10-25 08:01:47 +02:00
JC Brand
fe00fd4f47
Emit an event when sending a stanza
2018-10-25 08:01:46 +02:00
JC Brand
e0f0617629
Don't store the File
object in browserStorage
...
With the recent fixes in backbone.browserStorage, the 'file' attributes
gets persisted to browserStorage before Converse tries to upload the
file.
The File object can't actually be serialized, so an empty map gets
stored and then returned together with a 'change' event.
Instead, store the file as a direct attribute on the message object.
Fixes #1261
2018-10-24 22:59:43 +02:00
JC Brand
53b1239964
Avoid inserting invalid dates and/or empty divs
2018-10-24 22:42:46 +02:00
Emmanuel Gil Peyrot
35b7dbe389
Convert a few functions to async/await.
2018-10-24 21:23:32 +02:00
JC Brand
7b2d64b066
Use _converse.api.send
instead of _converse.connection.send
...
so that we can emit an event when sending a stanza.
2018-10-23 16:06:43 +02:00
JC Brand
a3040a45fc
Move the converse-roster
plugin to the @converse/headless build
2018-10-23 15:40:06 +02:00
JC Brand
14b9c5792d
Remove unused files
2018-10-23 15:32:08 +02:00
JC Brand
a20fd39313
Upgrade NPM and avoid duplicate deps
2018-10-23 15:08:53 +02:00
JC Brand
ce30b64b71
Merge branch 'master' into 1257_notifications-prefer-probably-over-maybe
2018-10-23 12:34:13 +02:00
JC Brand
6904f9a897
Use es2015 modules instead of UMD
2018-10-23 12:25:58 +02:00
JC Brand
3a33d6f99b
Fix linting errors
2018-10-23 12:25:35 +02:00
Guus der Kinderen
daa1654d35
#1257 : Prefer 'probably' over 'maybe' when evaluating Audio support.
2018-10-23 10:15:20 +02:00
JC Brand
3f7ffd025a
Remove Backbone.View related dependencies from headless package
2018-10-22 14:06:03 +02:00
JC Brand
7590a030b0
Move unnecessary templates in headless package to main package
2018-10-22 13:59:06 +02:00
JC Brand
18024b8bd2
Store lerna packages in the src
directory
...
- Also update versions in package.json
- Update Makefile
2018-10-22 13:29:25 +02:00
cmrd Senya
8ba8eb02fa
Update main converse.js package to use @converse/headless
...
* Update moved dependencies references to @converse/headless
* Remove unused webpack resolve aliases
2018-10-22 12:44:38 +02:00
cmrd Senya
12b9824e75
Create package @converse/headless
2018-10-22 12:42:48 +02:00
JC Brand
1c7c70af66
Use new status icon CSS classes for roster contacts as well
...
updates #1209
2018-10-21 23:49:41 +02:00
Lauren Mayers
ba689f4185
Update user status colors and icons
...
fixes #1209
2018-10-21 23:36:57 +02:00
JC Brand
a49c1f5592
Update Strophe.js, strophe plugins and backbone.browserStorage
2018-10-21 23:19:39 +02:00
JC Brand
dfcc1d97a1
Make sure encrypted messages aren't falsely matched as CSNs
2018-10-18 20:33:40 +02:00
JC Brand
c8dc7b63b2
Disable OMEMO when the current device is not trusted.
...
updates #1242
2018-10-18 07:47:25 +02:00
JC Brand
bb78d8519f
Use async function instead of explicit promises
2018-10-18 07:03:42 +02:00
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
JC Brand
7692a46e17
Nonsencical to wrap a promise in try/catch
2018-08-23 14:02:53 +02:00
JC Brand
069d4a9fae
Remove unnecessary promise wrapper
...
updates #497
2018-08-23 14:02:50 +02:00
JC Brand
fd639e2da6
Remove the active
flag for devices.
...
Instead of setting `active` to `false`, we remove the device entirely
(unless its the current device).
Doing it this way means more fetching of bundles for devices that
disappear and then reappear from a user's devicelist.
However, there might be caching invalidation concerns with just reusing
a cached bundle for a device id that disappeared and then reappears.
Additionally this change simplifies the showing of a contact's device
fingerprints in the modal, since we don't have to take active/inactive
into consideration.
updates #497
2018-08-23 14:02:43 +02:00
JC Brand
781ad3d643
Update to use _converse.config
2018-08-23 09:49:51 +02:00
JC Brand
5e9d6c3d6a
Merge branch 'master' into converse-omemo
2018-08-23 09:45:13 +02:00
JC Brand
9f8d30dde3
Create a new store, _converse.config
to store trusted
...
The `_converse.session` store gets cleared after logout, but we want the
`trusted` flag to persist after logout.
Also update the documentation no that the `storage` config option has
been removed in favor of `trusted`.
2018-08-23 09:41:39 +02:00
JC Brand
62cecbec5f
Merge branch 'master' into converse-omemo
2018-08-22 23:41:36 +02:00
JC Brand
76a2192afa
Singleton models need an id attribute via its getter
...
Setting it on the model itself is not sufficient and then causes
changes which should be type `update` become type `create`, causing
multiple versions of the model... resulting in chaos.
2018-08-22 23:39:42 +02:00
JC Brand
9ed2ad631a
Store whether this is a trusted device in _converse.session
...
So that it persists across page loads. Otherwise storage falls back to
the default, causing records to be in both local- and sessionStorage.
Additionally, update singleton models to have the 'id' available as a getter.
Otherwise multiple records gets stored in browserStorage, causing random
results being returned.
2018-08-22 23:36:54 +02:00
JC Brand
f01b6c29c8
Collections shouldn't have id attributes
...
Otherwise the collection's items aren't fetched but it's own properties.
The way to persistently remove items from a collection is to destroy
them, NOT to call `remove`.
2018-08-22 19:26:38 +02:00
JC Brand
5ded22207b
identity_key should be stored as base64, not array buffer
2018-08-22 18:32:31 +02:00
JC Brand
fa0e7aeff5
Updated so that own device is properly created and published
...
Based on live testing. Updated tests accordingly.
2018-08-22 18:16:36 +02:00
JC Brand
a422f07866
Bugfix. beforeTearDown
event handler not fired in tests
2018-08-22 14:33:09 +02:00
JC Brand
75bd24c19e
Update device lists in modals if devices get removed
2018-08-22 14:33:09 +02:00
JC Brand
21a04d9de5
Avoid unnecessary promise-wrapping
2018-08-22 14:33:08 +02:00
JC Brand
de077ba9af
Various small fixes while trying to get it to work
2018-08-22 14:33:08 +02:00
JC Brand
24d86c7edd
Wrap in try/catch, otherwise handler gets removed upon error
2018-08-22 14:33:08 +02:00
JC Brand
235b24d1d4
Bugfixes.
...
- Use sizzle xmlns selector (which doesn't work with `querySelector`)
- PEP Subscription didn't have `+` before `notify`
2018-08-22 14:33:08 +02:00
JC Brand
cf3a33a82e
__super__ is undefined because it's not an override
2018-08-22 14:33:00 +02:00
JC Brand
23a26cfdf5
__super__ is undefined because it's not an override
2018-08-22 11:41:38 +02:00
JC Brand
0339c59390
Clear old modals upon logout
2018-08-21 18:32:16 +02:00
JC Brand
3ec426e11d
Don't render OMEMO stuff in profile modal if OMEMO's not enabled
2018-08-21 18:03:34 +02:00
JC Brand
a06d2c494a
Implement own device removal via stanza
2018-08-21 17:35:17 +02:00
JC Brand
26e936583f
Add devices section to own profile modal
...
Allow for devices to be removed.
2018-08-21 09:28:16 +02:00
JC Brand
8cc69ee5fb
No need for a toJSON call, it's already an object
2018-08-20 11:17:26 +02:00
JC Brand
7d1db66056
Less explicit Promise declarations.
...
It's usually not necessary to wrap a promise inside another one, instead
the original promise can just be returned.
2018-08-20 11:16:06 +02:00
JC Brand
cda426bc82
Merge branch 'master' into converse-omemo
2018-08-20 10:34:04 +02:00
JC Brand
f98b11afeb
Fix linting error
2018-08-20 08:59:48 +02:00
Emmanuel Gil Peyrot
958e8a98a8
Use the roster name or vCard nickname before falling back to vCard fullname or JID.
2018-08-20 08:59:01 +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
9a7f56db7d
Fix format of stanza that queries for devices.
2018-08-19 10:09:43 +02:00
JC Brand
4ed43854bd
Bugfix. Items need to go inside the list
2018-08-18 18:25:52 +02:00
JC Brand
c4ac73cc88
prekey id must be an int.
2018-08-18 18:24:29 +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
b4110dc162
Merge branch 'master' into converse-omemo
2018-08-18 10:24:55 +02:00
JC Brand
299fa4f3f8
Nicer error logging when translations are not found
2018-08-18 10:22:31 +02:00
JC Brand
e123c690f0
Add autocomplete support for occupants with only a JID
2018-08-16 17:11:04 +02:00
JC Brand
2db3db9bab
Add support for editing messages containing mentions
2018-08-16 15:17:54 +02:00
JC Brand
d9c5867ff2
Check references when incrementing unread messages counter
2018-08-16 15:17:54 +02:00
JC Brand
b7eb19e225
Render mentions in a message
2018-08-16 15:17:54 +02:00
JC Brand
15df9b8605
Inlcude references in the outgoing XMPP stanza
2018-08-16 15:17:54 +02:00
JC Brand
f2b017ec89
Add method to determine references from message text
2018-08-16 15:17:53 +02:00
JC Brand
70b953ab84
Change selected item to the one the mouse is hovering over
2018-08-16 15:17:53 +02:00
JC Brand
324ffd5e40
Let @
trigger autocomplete with all possible options shown
2018-08-16 15:17:53 +02:00
JC Brand
cc3a158b57
Initial work on showing all options on @
2018-08-16 15:17:53 +02:00
JC Brand
b6f5cd2cc9
Use the auto_first setting
2018-08-16 15:17:53 +02:00
JC Brand
9a8d3b695e
Generic message which works for both single and groupchats
2018-08-16 15:17:53 +02:00
JC Brand
73deaf24c0
Make sure occupants toggle gets shown
2018-08-16 15:17:53 +02:00
JC Brand
13c9612a8a
Let an additional tab select the currently highlighted element
2018-08-16 15:17:53 +02:00
JC Brand
2abd1c1db1
Get selection via up/down arrow to work
2018-08-16 15:17:53 +02:00
JC Brand
86fab99c54
Expand test case and improve code.
2018-08-16 15:17:53 +02:00
JC Brand
5ded3b6cb9
Make list an executable
2018-08-16 15:17:53 +02:00
JC Brand
ad73abbd12
Rewrite as ES2015 class
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
linkmauve
f0ad326e2e
Simplify an error message on MUC service shutdown ( #1161 )
2018-08-16 11:36:44 +02:00
JC Brand
ddfe35b2c8
Set proper content type for file upload
2018-08-14 18:45:45 +02:00
JC Brand
45d1440684
Cancel message correction by pressing escape.
...
Also fixes #1153
2018-08-10 11:48:07 +02:00
JC Brand
c652568a03
Clear color after submitting a corrected message
2018-08-09 16:33:25 +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
1aceaa9c40
Avoid creating unnecesary promises
...
by returning existing promises and by using _converse.api.sendIQ
2018-08-09 14:44:39 +02:00
JC Brand
daf470e311
Check permissions before attempting to execute action on behalf of user
2018-08-09 14:43:40 +02:00
JC Brand
5e42bb2d49
Bugfix. Don't only set
, save to storage.
...
Otherwise the flag doesn't persist across page loads.
2018-08-08 10:01:26 +02:00
JC Brand
8d40d5f108
Bugfix. Stanza passed in as 2nd parameter
2018-08-08 09:43:32 +02:00
JC Brand
2d05487862
More code reuse between chatboxview and chatroomview
2018-08-07 15:32:13 +02:00
JC Brand
d852721933
Place cursor at the end when correcting a message
2018-08-07 10:09:36 +02:00
JC Brand
08dce556f9
When correcting a message, also highlight the textarea.
2018-08-07 10:09:35 +02:00
JC Brand
27bc33ba09
Use nickname from global settings when entering a room
2018-08-07 10:09:35 +02:00
JC Brand
2884549bb3
Test decryption of incoming OMEMO message
...
updates #497
2018-08-04 23:49:01 +02:00
JC Brand
713f49453f
Working example of AES-GCM encryption and decryption
...
with key import and export.
updates #497
2018-08-04 21:32:08 +02:00
JC Brand
f2c283c907
More work on decrypting messages
2018-08-04 19:41:06 +02:00
JC Brand
be0eaecff9
Parse incoming OMEMO encrypted messages
2018-08-04 09:26:23 +02:00
JC Brand
bb1fdd843a
Use ternary operator to make more compact
2018-08-04 09:07:59 +02:00
JC Brand
4c3645c559
Merge branch 'master' into converse-omemo
2018-08-03 14:47:20 +02:00
JC Brand
b027f0f784
Fixes #1143 Disallow sending of empty messages
2018-08-01 18:48:02 +02:00
JC Brand
f120fbd209
Bugfix. Own groupchat messages weren't being recognized
2018-08-01 18:37:54 +02:00
JC Brand
dc4c832fce
Add jsdoc docstrings to chats
API.
...
Link to the jsdoc output from the Sphinx docs
2018-08-01 12:11:10 +02:00
JC Brand
506aa33131
Wait for promises before opening chats in API methods
2018-08-01 11:12:00 +02:00
JC Brand
cb118b9cd0
Extract inline code into method
2018-08-01 11:10:43 +02:00
JC Brand
cbe6092c33
Handle case where chat content is empty
2018-08-01 11:10:43 +02:00
JC Brand
1443fdd447
(WIP) Wait for promises before opening chats in API methods
2018-08-01 11:10:43 +02:00
Emmanuel Gil Peyrot
8de78dfaf5
Fix disco#info result stanza
...
Converse forgot to add the wrapping query element, making the iq
invalid[1].
Thanks to lovetox for reporting this bug!
[1] https://pastebin.com/raw/T7h3FKHu
2018-07-31 17:52:07 +02:00
JC Brand
7a47b7b992
Don't require a chat JID to be specified in embedded mode
...
We might want to only open a chat later.
2018-07-30 16:42:54 +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
e774e9d1af
Test that own devices (from other clients) get included
...
when sending out encrypted messages.
updates #497
2018-07-28 16:36:56 +02:00
JC Brand
a3593dbc7d
Implement and test sending of encrypted messages
...
updates #497
2018-07-28 15:37:36 +02:00
JC Brand
f40e4b4dbb
Merge branch 'master' into converse-omemo
2018-07-25 12:06:42 +02:00
JC Brand
4cefc7cdf9
Fix failing tests due to renames
2018-07-25 12:05:09 +02:00
JC Brand
bcd6845756
Show fingerprints in the user details modal
...
updates #497
2018-07-25 11:33:16 +02:00
JC Brand
ce447e4035
Merge branch 'master' into converse-omemo
2018-07-22 12:15:16 +02:00
JC Brand
5abb9f8bb2
Found more instance of room
to be replaced with groupchat
2018-07-22 11:31:45 +02:00
JC Brand
114e46dfab
Fix broken test and refactor slightly. updates #497
2018-07-22 10:33:57 +02:00
JC Brand
b80a77a21c
Include signedPreKeySignature in published bundle
...
updates #497
2018-07-21 21:53:31 +02:00
JC Brand
bf13927946
Merge branch 'master' into converse-omemo
2018-07-21 11:34:51 +02:00
JC Brand
87406f5f93
Allow messages to be edited by clicking a pencil icon
...
updates #421
2018-07-21 10:41:10 +02:00
JC Brand
6a790916d3
Only own messages should be editable.
...
Fixes #1139
2018-07-21 08:12:33 +02:00
JC Brand
acd9a18696
Update with new message markup
2018-07-21 07:34:03 +02:00
linkmauve
d25b227ba4
Remove @locked_domain if it has been provided in the JID. ( #1132 )
...
Fixes #917 .
2018-07-17 08:15:27 +02:00
JC Brand
bb5dff9a74
Merge branch 'better-chat_status' of https://github.com/linkmauve/converse.js into linkmauve-better-chat_status
2018-07-16 01:05:45 +02:00
JC Brand
6717315d05
Add support for message corrections in MUC.
2018-07-16 00:49:00 +02:00
JC Brand
16faf62d3f
Fixes #1129 Hide "Contacts" section when logged in anonymously
2018-07-16 00:09:54 +02:00
Emmanuel Gil Peyrot
d518596a2e
Add missing closing quote in label_download.
2018-07-14 18:27:25 +02:00
Emmanuel Gil Peyrot
d643d4c9cf
Remove order constraint in file upload error message.
2018-07-14 18:26:42 +02:00
Emmanuel Gil Peyrot
3fcf9acfcc
Remove order constraint in chatstate message.
2018-07-14 18:26:42 +02:00
Emmanuel Gil Peyrot
422757832b
Remove order constraint in chat_status message.
2018-07-14 18:26:42 +02:00
JC Brand
b4d2007972
Allow any earlier message to be edited.
...
updates #421
2018-07-08 15:20:58 +02:00
JC Brand
a9bb99a1a7
Show animation when a message has been corrected
...
updates #421
2018-07-08 13:43:28 +02:00
JC Brand
84a10d77d9
Cancel message correction by pressing the down arrow
...
Also, add a class `correcting` to the message being corrected, to
provide a visual cue.
updates #421
2018-07-08 11:30:15 +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
f3f58a8da4
Test multiple corrections of the same message
2018-07-06 01:51:27 +02:00