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
JC Brand
9e965fa20e
Add a rudimentary message versions modal
2018-07-06 01:36:34 +02:00
JC Brand
19b9aeadfd
Show an indicator that the message has been edited
2018-07-06 01:18:03 +02:00
JC Brand
9f42f09d1e
Get the first message correction test to pass
2018-07-06 01:04:34 +02:00
JC Brand
52d5677e40
Rename message
to stanza
to avoid confusion
2018-07-06 00:59:16 +02:00
JC Brand
7b86e24b9a
Add missing CSS class to bookmark list item and fix test
...
updates #1069
2018-07-04 11:24:02 +02:00
JC Brand
388719ff2d
Update CSS of controlbox list items
...
Trying to use more generic CSS selectors and to extract out common patterns.
2018-07-04 10:57:30 +02:00
JC Brand
47ec7501ed
updates #1069 Don't show room-info icon for bookmarks
...
Currently we can only show the room info modal for open rooms, because
we need the Backbone.Model.
Querying the room info and displaying it for non-open rooms will be more
work and will require a separate modal.
2018-07-04 09:18:54 +02:00
JC Brand
145167baae
Don't remove ourselves as occupant
...
when removing offline users who are no longer on the member lists
2018-07-04 09:08:23 +02:00
JC Brand
efa5e30596
updates #1069 Highlight currently open private chat in the sidebar
2018-07-04 09:08:22 +02:00
JC Brand
58ee1460fe
Updates #1069
...
Highlight the currently open groupchat in the sidebar (in singleton mode).
2018-07-02 23:29:57 +02:00
JC Brand
a67fa6d4e5
Render URLs in the topic in the room details modal
2018-07-02 21:20:37 +02:00
JC Brand
a2fef1277c
Don't render labels for hidden inputs
2018-07-02 20:22:16 +02:00
JC Brand
d335173fd7
Bootstrap markup for auto-generated forms
2018-07-02 20:18:22 +02:00
JC Brand
e64edf19b4
Use "Groupchat" instead of "Chatroom"
2018-07-02 16:27:58 +02:00
JC Brand
4331f920cf
Fix failing tests
2018-07-02 15:23:49 +02:00
JC Brand
c6d7317bb2
Show the topic in the room info modal
2018-07-02 13:41:15 +02:00
JC Brand
1880b3f209
Nicer rendering of MUC disconnection messages
2018-07-02 12:52:19 +02:00
JC Brand
eb1f462e07
Handle all presence stanzas sent from the room
...
Our handler was too restrictive due to the namespace matching.
When joining a room and the room's remote server can not be found, then
the resulting error messages doesn't not have the MUC namespace.
2018-07-02 12:52:13 +02:00
JC Brand
118a84f111
Bugfix. Make sure outgoing messages all have unique ids
2018-07-01 12:01:07 +02:00
JC Brand
e2b5f1d15e
Don't reuse the forwarded stanza's id
2018-07-01 11:46:16 +02:00
JC Brand
648c0387dd
Refactor message sending
...
so that we don't have to always wait for stanza creation.
We only need to wait when OMEMO is active, so we keep the waiting
contained to that usecase.
2018-07-01 11:45:58 +02:00
JC Brand
6785eff4a7
Merge branch 'master' into converse-omemo
2018-07-01 11:44:04 +02:00
JC Brand
e5c030c15a
Render max 2 newlines
2018-06-30 16:15:27 +02:00
JC Brand
6e99af698d
Merge branch 'timetag' of https://github.com/Zash/converse.js into Zash-timetag
2018-06-30 15:12:57 +02:00
JC Brand
b5a27b34a1
Render newlines
2018-06-30 15:07:30 +02:00
JC Brand
cc98cea009
Fix failing tests by waiting appropriately
2018-06-30 14:01:47 +02:00
JC Brand
9a60b5bb15
Let api.disco.info
use api.sendIQ
(and therefore be promise based)
2018-06-30 14:01:47 +02:00
Joachim Vandersmissen
878b106c7b
Allow for shift-enter to insert newlines ( #1115 )
...
* Allow for shift-enter to insert newlines
See issue #1081
* Update CHANGES.md
2018-06-19 06:41:22 +02:00
JC Brand
3dac4ae45c
Add support for logging in with OAuth
2018-06-13 18:39:51 +02:00
JC Brand
a2dec2371d
Bugfix. jid
of null
was set on own VCard
...
Also made a few other minor improvements and did some cleanup.
2018-06-12 12:14:49 +02:00
JC Brand
7b19483271
Rename push_services
to push_app_servers
to avoid confusion
2018-06-11 14:17:34 +02:00
JC Brand
a09333f82c
Allow multiple push services to be enabled and also allow disabling
2018-06-07 16:25:59 +02:00
JC Brand
5954cd8f29
Avoid duplicating entities
2018-06-07 15:27:11 +02:00
JC Brand
6126781d83
Proper checking of disco support for push notifications
2018-06-07 15:00:36 +02:00
JC Brand
6cd9d2e813
Rename _tearDown
to tearDown
and rebuild
2018-06-07 14:30:10 +02:00
JC Brand
2cdd46f6dc
Don't close chatboxes after disconnection has already happened
...
Otherwise it attemtps to send out stanzas (causing `this.socket is null`
errors when using websocket).
2018-06-07 14:29:47 +02:00
JC Brand
5d62023701
Only fetch VCards once we're already connected
2018-06-07 14:28:20 +02:00
JC Brand
d4d03925b8
Set hidden
to true
by default for chats in singleton mode.
...
However, when a new chat is created due to an incoming message, and
there aren't any other chats visible, then show it.
2018-06-07 14:09:19 +02:00
JC Brand
37b622251e
Improve and simplify unread message notifications in the roster
...
Use one event instead of two, by listening to `num_unread` on chatboxes.
2018-06-07 13:40:20 +02:00
JC Brand
083f191ead
Consider delayed, non-archived messages as "new"
...
New in the sense that we haven't seen them before
2018-06-07 13:06:32 +02:00
JC Brand
ec65bb3512
createMessage
doesn't need the delay parameter
2018-06-07 12:37:56 +02:00
JC Brand
57b4dec5a0
Bugfix. Validation messages wasn't being shown
...
due to Awesomplete doing things to the DOM and then confusing Snabbdom.
2018-06-06 18:31:04 +02:00
JC Brand
7ee71b0132
Add a plugin for XEP-0357
...
Currently only allows enabling an "App Service", based on pass-in
configuration values.
2018-06-06 14:00:52 +02:00
JC Brand
eed141b53e
Remove unnecessary path aliases from the webpack config
2018-06-06 11:04:23 +02:00
JC Brand
1dac1d781f
Don't show own typing notifications in groupchats
2018-06-06 09:57:37 +02:00
JC Brand
734f3469dd
Bugfix. Message indicator wasn't shown
...
when we received a message for a yet non-existing chat in singleton
mode.
2018-06-06 09:56:46 +02:00
JC Brand
54c6bcd861
Disconnect chatrooms upon tab reload (when using websocket)
...
This is a workaround until we have support for XEP-0198
updates #1111
2018-06-06 09:56:35 +02:00
JC Brand
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
ee5e77e851
Remove call to non-existing method
2018-06-05 11:14:51 +02:00
JC Brand
78d6d493d6
Add info icon in room header and show room details in modal
2018-06-04 19:54:11 +02:00
JC Brand
f7c3351e2b
Merge branch 'master' into webpack
2018-06-04 13:46:27 +02:00
JC Brand
bc872ee2cb
Fix various failing tests and update Makefile
2018-06-04 11:20:34 +02:00
JC Brand
74eed32e82
Add shims to webpack config and fix bugs in templates
2018-06-02 17:18:42 +02:00
JC Brand
8948be1d3d
In mobile view, add arrows to chat headings
...
so that you can navigate "back" to the controlbox.
2018-06-01 14:57:19 +02:00
JC Brand
b00567a0ea
Fix styles for mobile view
2018-06-01 12:49:45 +02:00
JC Brand
2ca382b7a5
Move const declarations out of initialize method
2018-06-01 12:21:41 +02:00
JC Brand
b02c70b4ea
Check the view_mode on the fly
...
instead of disabling the plugin immediately.
This allows us to change the view_mode dynamically.
2018-05-31 06:41:53 +02:00
JC Brand
9c6c90a4fc
Move config settings into the relevant plugins
2018-05-31 06:38:40 +02:00
JC Brand
195a9781c1
Use an event instead of an override
2018-05-30 17:18:41 +02:00
JC Brand
5e97db95f9
Add a close button on the occupants sidebar
2018-05-30 16:55:28 +02:00
JC Brand
8c983ab2a3
Use different icon for adding a groupchat
...
Fixes #1072
2018-05-30 16:38:51 +02:00
JC Brand
d384c70929
Use double angle brackets as occupants toggle icon
...
updates #1072
2018-05-30 16:27:45 +02:00
JC Brand
d205afe3a2
Don't try to render register link if auto_login is true
2018-05-30 16:04:56 +02:00
JC Brand
4e67b420ba
New event streamFeaturesAdded
2018-05-29 12:04:42 +02:00
JC Brand
291fceeb74
Make sure disco info is stored in sessionStorage
...
Otherwise we might have stale disco info and no way to invalidate the cache.
2018-05-28 13:59:38 +02:00
JC Brand
bb95375f9c
Support for roster versioning
...
fixes #1106
2018-05-28 13:59:11 +02:00
JC Brand
4cfade2843
Add support for stream features to converse-disco
2018-05-28 11:40:33 +02:00
JC Brand
e8a26eb185
Store the roster version
...
updates #1106
2018-05-28 10:31:52 +02:00
JC Brand
43d0932d78
Update roster push handling code
...
- Remove misleading comment and fix conditional logic
- Check that there's only one <item> element.
updates #1106
2018-05-28 09:36:12 +02:00
JC Brand
ec609a3883
Refetch VCards which we couldn't retrieve before
2018-05-25 16:25:02 +02:00
JC Brand
ab4d0204f3
Update all vcards that might be associated with an occupant
2018-05-25 15:55:34 +02:00
JC Brand
6dc9e8edf1
Use webpack for module bundling
2018-05-25 14:23:32 +02:00
JC Brand
eff656931c
Move code for handling own presence into new method
...
Fix two bugs as well.
- Pass by reference bug for presence defaults
- querySelector for `delay` returned nothing (use sizzle instead)
2018-05-24 15:47:27 +02:00
JC Brand
c0080390a7
Only initialize presence collection after login
2018-05-24 15:09:01 +02:00
JC Brand
a85401627c
Combine inverse/converse chatrooms css
...
updates #1091
2018-05-24 12:45:10 +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
adad60e298
Refactor so that nick-deduplication takes VCard nick into account
...
Updates #968
2018-05-24 10:24:48 +02:00
JC Brand
3849f56270
Swop buttons and try to make column responsive
2018-05-24 10:18:27 +02:00
JC Brand
e76dc01265
Use nickname from VCard when joining a room
...
updates #968
2018-05-24 10:15:58 +02:00
JC Brand
dd51ad8618
Bugfix. Nickname wasn't being set correctly in vcard
2018-05-24 10:15:25 +02:00
JC Brand
dd5f6f1025
Show join/leave notifications for members who go offline
...
updates #1094
2018-05-24 09:48:01 +02:00
JC Brand
04e95a17c5
Make sure converse-muc-views
is loaded first (if available)
2018-05-24 09:09:09 +02:00
JC Brand
d484320c09
Test that bundles can be updated via PEP
...
Fix bugs in the process
udpates #497
2018-05-23 12:51:01 +02:00
JC Brand
ddd0ef8e20
Test that device lists can get updated via PEP
...
Fix various bugs in the process.
updates #497
2018-05-23 12:51:01 +02:00
JC Brand
41db49ffca
Initial code for handling a bundle update via PEP
...
udpates #497
2018-05-23 12:51:01 +02:00
JC Brand
839210f87c
Fetch and parse bundles, then generate sessions for them
...
udpates #497
2018-05-23 12:51:01 +02:00
JC Brand
5b9f81099b
More OMEMO work
...
- Implement storage interface required by libsignal
- Add some skeleton code for building sessions and sending encrypted messages
updates #497
2018-05-23 12:51:01 +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
61dcebbbf6
When generating a device id, check whether it already exists
...
and if so, generate a new one.
To do so we have to change the order of events.
1. first we fetch our device list
2. then we generate our bundle info (if necessary)
3. then we update our device list (if necessary)
4. then we publish our bundle
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
9645641505
Add own device to the server-stored devicelist
...
updates #497
2018-05-23 12:51:01 +02:00
JC Brand
281865d9b1
Based on feedback from @iNPUTmice, no need to check for PEP support
...
Since you can still start OMEMO sessions with contacts without it, they
just can't create sessions with you.
2018-05-23 12:51:01 +02:00
JC Brand
09eb1731b5
Add code to generate and publish our bundle and update the test
...
updates #497
2018-05-23 12:51:01 +02:00
JC Brand
6042c233bc
Add test that the OMEMO toolbar button renders
...
Fix and improve accordingly. updates #497
2018-05-23 12:51:01 +02:00
JC Brand
2f149a0ea2
Fetch devices upon devicelist creation
...
updates #497
2018-05-23 12:51:01 +02:00
JC Brand
0c50808b65
Add missing declaration and don't run OTR tests
...
Add 3rd party dependencies
updates #497
2018-05-23 12:51:01 +02:00
JC Brand
e833af14bf
updates #497
...
Various fixes to code checking for server and contact client support
2018-05-23 12:51:01 +02:00
JC Brand
bfc246d9c7
Disable OTR and add code for adding the toolbar button.
2018-05-23 12:51:01 +02:00
JC Brand
039f30a5d3
Add 3rdparty dependencies (used by libsignal)
...
Hopefully later we can use NPM for them, first want to get things to work
2018-05-23 12:51:01 +02:00
JC Brand
7b28cb7943
updates #497
...
Initial work on adding OMEMO support
2018-05-23 12:51:00 +02:00
JC Brand
3f0920a8c4
Don't remove occupants who are on member lists.
...
updates #1094
2018-05-23 12:48:11 +02:00
JC Brand
9afc344b89
We no longer clear the whole roster, only presence data
2018-05-23 04:34:38 +02:00
JC Brand
f0b1295577
Updates #1098 IE doesn't support document.contains
2018-05-23 04:22:47 +02:00
JC Brand
9500900f22
Make sure bookmarks are cleared before re-initializing
...
Otherwise subtle, hard-to-reproduce bugs happen while testing.
Also, don't unnecessarily call `delegateEvents`, it also causes
heisen-breakage.
2018-05-22 21:59:17 +02:00
JC Brand
36fd859a88
Store presence info in a separate collection
...
So that we can cache roster data for longer and presence data for
shorter.
2018-05-22 21:09:43 +02:00
JC Brand
b939de03bc
Make sure that the textarea resizes back to original size
...
after sending
2018-05-19 08:22:57 +02:00
JC Brand
fe8b257243
Looks like we stopped supporting EXTERNAL auth
2018-05-19 08:22:24 +02:00
JC Brand
c920725832
Add a clearSession
event to avoid using overrides.
2018-05-18 15:44:42 +02:00
JC Brand
2508ef0e9e
Make the default value for the 'trusted' checkbox configurable
...
Also remove the `message_storage` setting.
2018-05-18 15:44:42 +02:00
JC Brand
e82112715d
Update padding of controlbox elements
...
Instead of padding the container, pad individual elements that need it.
This enables us to have highlighting (e.g. on hover) that spans the full
width of the controlbox.
updates #1069
2018-05-18 15:44:42 +02:00
JC Brand
59535656b6
Add checkbox to indicate whether this is a trusted device
2018-05-18 15:44:42 +02:00
ChaosKid42
7a36acade5
remove "?" from user-search-query ( #1103 )
2018-05-17 18:26:06 +02:00
JC Brand
d339a06ea7
Bugfix. Wrong dict key used.
2018-05-17 11:25:05 +02:00
JC Brand
4490e27e08
Forgot we're moving away from using inverse here :)
2018-05-17 11:19:07 +02:00
JC Brand
897a5b2a86
branding
2018-05-17 11:10:52 +02:00
JC Brand
d0a97fe3c2
Only inform new users that the room is not anonymous
...
instead of informing all users every time someone enters the room.
2018-05-15 10:29:56 +02:00
JC Brand
dc97488b7a
Bugfix. Image was getting unset when saving own vcard
2018-05-15 10:16:52 +02:00
JC Brand
37ce3fb737
Add a button to refresh a contact's vcard
2018-05-15 10:11:13 +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
ec5a57b9d2
Remove unnecessary btn
class
2018-05-14 13:49:04 +02:00
JC Brand
2a7c6142a5
Use newer classes
2018-05-14 13:49:04 +02:00
ChaosKid42
4bdc9636b4
another fix for IE11 ( #1102 )
2018-05-13 12:39:16 +02:00
ChaosKid42
63764a7d51
fix selected values in list-multi form fields ( #1101 )
2018-05-12 16:45:40 +02:00
JC Brand
a33b451b73
Bugfix. Messages were losing followup class when re-rendered
2018-05-12 12:09:17 +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
8908ab5c7d
We no longer user the inVerse branding
2018-05-11 13:50:19 +02:00
JC Brand
72001cb9df
updates #1100 More jsdoc docstrings
2018-05-11 13:42:35 +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
ab1c19a974
Update markup to fit the mockup
2018-05-11 10:29:56 +02:00
JC Brand
d871392039
updates #1094
...
Update the occupants list when occupants are added/removed from the
member lists.
2018-05-11 00:17:44 +02:00
JC Brand
f573c69d08
updates #1094
...
Refetch the members lists when adding a new member via invite
2018-05-10 23:48:09 +02:00
JC Brand
f011078805
Handle case where we don't have a nick for an absent occupant
...
updates #1099
2018-05-10 23:28:03 +02:00
JC Brand
527555badf
Add missing spec file
2018-05-10 23:24:43 +02:00
JC Brand
09db3eddb0
Add tests for contact removal via modal
2018-05-10 22:15:23 +02:00
JC Brand
21741649e4
Don't hide close button for chats
...
I find it useful to be able to close them
2018-05-10 21:29:05 +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
2845d84b98
Remove debugging code
2018-05-09 14:35:05 +02:00
JC Brand
9bc21741fc
Update mockup and CSS accordingly
2018-05-09 12:57:50 +02:00
JC Brand
859bc0616e
Fixes #1094
...
- Show users who are registered on the different members lists
- Show badges indicating user's roles and affiliations
2018-05-09 12:28:34 +02:00
JC Brand
28ec15094e
Add alert modal and close profile modal on save
2018-05-09 10:09:42 +02:00
JC Brand
64754fa33a
Fix class name for icon
2018-05-09 09:27:21 +02:00
JC Brand
b6692b17a2
Show roles from VCard next to name in messages
2018-05-08 19:51:56 +02:00
JC Brand
8bd968a03b
Also use the VCard cache for the user's own status
2018-05-08 19:24:50 +02:00
JC Brand
708b1dbe99
fixes #337
...
It's now possible to set your VCard via the UI and via the API
2018-05-08 18:14:56 +02:00
JC Brand
6c513ad4be
Remove dependency on strophe's vcard plugin
2018-05-08 18:11:56 +02:00
JC Brand
2d5e8262e9
Create new builds
2018-05-07 18:24:24 +02:00
JC Brand
30c9a878ca
Bugfix. Make sure nick is shown for sent messages
2018-05-07 18:22:45 +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
bbf33a8e4f
Combine duplicate queryForArchivedMessages
methods
2018-05-07 13:49:32 +02:00
JC Brand
dbee62c794
Do disco check in fetchArchivedMessages
...
so that it's applied in all cases where archived messages are fetched.
2018-05-07 13:14:58 +02:00
JC Brand
d42b872795
Check if room supports MAM before qyerying
...
instead of wrongly checking the bare JID
2018-05-07 13:07:44 +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
7e94f3c691
Bugfix. Send model instance to event listeners
...
So that we can call `getDisplayName`
2018-05-07 10:58:58 +02:00
JC Brand
b8679063c5
Use the VCards collection for roster contacts
...
Instead of saving the vcard data on the contact model itself
2018-05-05 20:51:14 +02:00
JC Brand
e5cfdca30d
Move roster models into their own module
2018-05-05 20:16:23 +02:00
JC Brand
09c55ebc28
Remove the use_vcards
settings
...
VCards will now always be used.
2018-05-04 22:50:41 +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
e77f627432
Remove unused code, fix build path and update package-lock.json
2018-05-03 18:22:54 +02:00
JC Brand
df948a8dd6
Also allow a single-user chat to be embedded into the page
2018-05-03 17:01:17 +02:00
JC Brand
4c15ac2e8c
Add new config setting: auto_join_private_chats
2018-05-03 16:36:02 +02:00
JC Brand
3fe2ff234e
Fixes #1088
...
Entity items weren't being fetched from cache.
Apparently this bug only surfaced because with Ejabberd the upload
service is nested one level deeper than with Prosody.
2018-05-03 15:48:32 +02:00
JC Brand
01a88c24a8
Refetch avatar when occupant's photo hash has changed
2018-05-03 14:50:27 +02:00
JC Brand
7660a27682
Store image hash from presence on the occupant
2018-05-03 13:50:30 +02:00
JC Brand
8c3f379d82
Calculate and save avatar hash upon receipt
2018-05-03 13:44:52 +02:00
JC Brand
d49adc9309
Doesn't look like its necessary to call initConnection again
2018-05-03 11:13:08 +02:00
JC Brand
c25de7bd4c
Bugfix. initAvatars
wasn't being called.
2018-05-03 11:13:00 +02:00
JC Brand
c18eaa3351
pluginsInitialized
is too early
...
we don't yet have a connection then, so listen to
`connectionInitialized` instead.
2018-05-02 16:19:12 +02:00
JC Brand
a52e24adc8
Fixes #1087
2018-05-02 15:40:47 +02:00
JC Brand
cb0d8c7d86
Found more MUC code that should be in the view module
2018-05-02 15:29:06 +02:00
JC Brand
ca0f5fcfef
Fix bookmark item markup
...
so that `hidden` class gets applied to the right element
2018-05-02 15:16:56 +02:00
JC Brand
7eb6b13f10
Don't mark /me messages are followup messages.
2018-05-02 14:55:10 +02:00
JC Brand
911ede2886
Small bugfixes.
...
- Filter did the opposite of what it was supposed to do
- Wrong bind context
- Should actually be mam:2, issue was server misconfiguration
2018-05-02 14:30:14 +02:00
JC Brand
dd505ad9da
More fixes now that we don't store the JID under 'fullname'
...
if the fullname is not available.
2018-05-01 20:07:56 +02:00
JC Brand
cbc48629f1
Clear canvas before redrawing
2018-05-01 19:55:26 +02:00
JC Brand
afc924fd72
Bugfix. Since refactoring we do want onMessage
to handle MAM messages
2018-05-01 19:46:18 +02:00
JC Brand
0e61eda620
Fix typo, fixes MAM again :)
2018-05-01 18:47:43 +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
c14ef3bb75
Bugfix. Can't expect fullname
to be set anymore.
2018-05-01 15:21:20 +02:00
JC Brand
b5a516e044
Add new api method vcard.update
2018-05-01 14:59: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
54cafb1243
Update vcard.get
API method to accept either a JID string or a model
2018-05-01 11:45:12 +02:00
JC Brand
097d992d13
Bugfix, /me message wrongly marked as followup message.
2018-04-30 16:23:52 +02:00
JC Brand
eaf65f4d24
Add missing items-list class (as per mockup)
2018-04-30 15:37:37 +02:00
JC Brand
4f7c08b1da
Bail when in a callback for a hanging chatroom
2018-04-30 15:37:37 +02:00
JC Brand
4bcf8e7bc3
Mark followup messags so that they can be styled differently
2018-04-30 15:37:37 +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
876a07b3de
Fix the failing tests
2018-04-30 15:37:37 +02:00
JC Brand
1405d9cb49
Also style file upload and action messages.
2018-04-30 15:37:37 +02:00
JC Brand
209bac4b5e
Use uri.js to identify URLs in message text.
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
36ccb4618f
Tweak chatroom headings
2018-04-30 15:37:36 +02:00
JC Brand
56e4e8b8ee
Fix rendering of headline messages.
...
Also, add urijs to more intelligently handle URIs
2018-04-30 15:37:36 +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
57f7e31aa1
Add a spoiler message to the mockups
2018-04-30 15:37:36 +02:00
JC Brand
aa6a739cfa
Initial work on showing avatars in messages.
...
- Update the mockups to show avatars.
2018-04-30 15:37:36 +02:00
JC Brand
6cce931086
Make sure show
is created on all chatbox types
2018-04-24 16:39:39 +02:00
JC Brand
fb11cfe795
Add converse-embedded
class without requiring an override
2018-04-24 14:35:47 +02:00
JC Brand
76a47829cd
Optimize keyPressed
slightly
2018-04-24 14:35:29 +02:00
JC Brand
7807b19905
Debounce show
similarly to other methods
2018-04-24 14:34:19 +02:00
JC Brand
71be72b50c
Automatically grow/shrink input as text is entered/removed
2018-04-24 14:33:00 +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
e0aaeb66ea
updates #161
...
* Fix typo which broke MUC file upload
* Remove unused method
* Move file input into li element
2018-04-24 07:49:37 +02:00
JC Brand
a15c9e54d0
Also test for when XEP-0363 is not supported
...
Updates #161
2018-04-22 17:47:34 +02:00
JC Brand
aacfe3b66b
Don't show MUC CSN if from myself. fixes #1026
2018-04-22 04:26:35 +02:00
JC Brand
74f9952b24
Move sendChatState
methods to the models
2018-04-22 04:25:05 +02:00
JC Brand
2850ef0485
Don't show delayed chat state notifications
2018-04-22 04:09:24 +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
076ace3fad
Parse and save jabber ❌ data formdata from a disco#info result
2018-04-17 16:42:20 +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
db790183d8
Remove unused code
2018-04-17 15:21:38 +02:00
JC Brand
dad8eb2f48
Remove separate file converse-http-file-upload
...
It contained only `overrides` and some HTTP upload code was in other
modules.
Current thinking concerning overrides:
Usage of `overrides`, while useful in certain cases, should in general
be discouraged, since it's in essence "monkey patching" which makes it
more difficult to know whats executing at runtime and more difficult to
refactor.
Splitting modules up between XEPs is not always that useful. Some XEPs,
like HTTP Upload (and MAM comes to mind) have their functionality spread
out over single and group chats (and pubsub) and might for practical
purposes be considered "core" enough to not try and keep them in
separate modules (which inevitably requires overrides or a fundamentally
rethinking the architecture).
Where splitting code between modules makes a lot of sense is in keeping
Backbone Models and Views separate (so that alternative view libraries
like Vue could be used) and probably in keeping Single chats, MUC,
PubSub and MIX separate.
updates #161
2018-04-17 15:21:30 +02:00
JC Brand
de6ecbf07a
Render messages via a new MessageView view
...
updates #161
2018-04-17 15:21:26 +02:00
JC Brand
264e6830af
Remove references to unused parameters
...
updates #161
2018-04-17 15:21:21 +02:00
JC Brand
6cab7fcc41
Fix failing tests due to refactoring
...
updates #161
2018-04-17 15:21:16 +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
JC Brand
9c2a5bd3b8
Merge branch 'worlword-httpFileUpload' into http-file-upload
2018-04-14 07:50:29 +02:00
JC Brand
042c1947ed
Add file-upload button
2018-04-14 07:40:07 +02:00
JC Brand
a9d2881888
Fix disco hierarchy
...
Previously we kept all entities and their items (which are also
instances of _converse.DiscoEntity) in a flat array.
Instead, we should have a tree-like structure where items are stored
on the relevant entity (and recursively on other items).
2018-04-14 07:36:24 +02:00
JC Brand
77a51cc2a6
Initial work on XEP-0363: HTTP File Upload
2018-04-14 07:36:24 +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
ca40cf6541
removed EmptyLines in ChatView.js and Change Lineendings to LF in toolbar_fileUpload.html
2018-04-12 09:37:58 +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
JC Brand
3d29567ab6
Revert "Don't show typing from different device
CSN messages"
...
This reverts commit 7303e96cdb
.
Instead of dropping the feature entirely, we can check if the CSN is a
carbon message.
2018-04-11 18:46:50 +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
7303e96cdb
Don't show typing from different device
CSN messages
...
To avoid showing them erroneously would mean keeping track of used
message ids which seems like more work than justified by the feature.
Fixes #1026
2018-04-10 20:56:54 +02:00
JC Brand
3d0435a755
Remove hack specific to the soon to be retired Slack XMPP gateway
2018-04-10 20:56:40 +02:00
JC Brand
9528d81c00
Move various MUC methods onto the Backbone.Model
...
To more cleanly separate views and models and to make MUC in headless
mode more viable.
Refs #1032
2018-04-10 18:59:02 +02:00
Kim Alvefur
a82f950e3c
Put timestamp in a <time> tag for better semantics and easier styling
2018-04-07 21:47:22 +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
worlword
7839f20846
fixed sendMessage for so that tests will work again
2018-04-05 08:45:58 +02:00
worlword
83c0d42ecf
changed line-endings in converse-httpFileUpload.js
2018-04-04 16:03:44 +02:00
worlword
530e7f9d3f
fixed file-upload-button in MUC and added changes.md entry
2018-04-03 12:29:12 +02:00
worlword
b23712aec3
added httpFileUpload to converse.js
2018-04-03 11:20:57 +02:00
JC Brand
e31373a6ae
Fixes #1055 Wrong paths in build.js
2018-03-31 19:51:55 +02:00
ChaosKid42
fce9ee0db9
replace geoURIs (e.g. from Convesations) by links to openstreetmap ( #1054 )
...
* replace geoURIs by link to openstreetmap
* Added testcase
2018-03-31 18:29:01 +02:00
JC Brand
44a2f7807c
Hook in ar
and eu
locales and document.
2018-03-31 15:45:23 +02:00
JC Brand
ebfd0a8f77
Move various funcitons related to MUC member lists to utils
...
and out of the MUC views plugin.
Refs #1032
2018-03-30 14:23:39 +02:00
JC Brand
06141b3212
Move methods from MUC view to model
...
* checkForReservedNick
* parseRoomFeatures
* sendConfiguration
Refs #1032
2018-03-30 14:23:39 +02:00
JC Brand
2705ec8193
Let the chatarea expand when the occupants sidebar is collapsed.
2018-03-30 14:23:39 +02:00
JC Brand
6a12a96e85
Fixes #1043 Parsing of bookmarks fail with missing nick element.
2018-03-30 14:23:39 +02:00
JC Brand
ce849aaffc
Fix failing tests
2018-03-30 14:23:39 +02:00
JC Brand
d90416eae8
Add workaround for apparent Prosody bug
...
Details here: https://prosody.im/issues/1121
2018-03-30 14:22:53 +02:00
JC Brand
faaaa8139a
Properly remove ContactView from the overview
2018-03-30 14:22:53 +02:00
JC Brand
93a20ee4ee
Make sure removeFromRoster is called only once
2018-03-30 14:22:53 +02:00
JC Brand
b584f2efb3
Add a new config setting nickname
...
- for subscription requests
- when entering chat rooms
2018-03-30 14:22:53 +02:00
JC Brand
3354083934
Bugfix. Remove view for contact moved to different group
...
Otherwise the contact stays visible under "Pending Contacts" although
the subscription request has been accepted.
2018-03-30 14:22:53 +02:00
JC Brand
e8718ec3d3
Bugfix. Make sure group gets inserted
...
when it's created due to a new contact being added.
Was previously in the wrong place.
2018-03-30 14:22:52 +02:00
JC Brand
1029aae215
Write out map when calling create
2018-03-30 14:22:52 +02:00
JC Brand
c8f72b350b
Disable vcard plugin is use_vcard
is false
2018-03-30 14:22:52 +02:00
JC Brand
535fc7bc8d
Use strings for map keys
2018-03-30 14:22:52 +02:00
JC Brand
9799ecce10
Focus inputs inside modals
2018-03-30 14:22:52 +02:00
JC Brand
0173d28f48
Clear "add contact" form after submission.
2018-03-30 14:22:52 +02:00
JC Brand
b9cdf6b71f
Make sure relevant roster group gets inserted when a new contact gets added
...
by calling `sortAndPositionAllItems`.
Particularly relevant to the "Pending Contacts" group.
2018-03-30 14:22:52 +02:00
JC Brand
e1995c6d4e
Focus input when showing the add contact modal
2018-03-30 14:22:51 +02:00
JC Brand
4f2b040f22
Allow setting a nickname when adding a roster contact
2018-03-30 14:22:51 +02:00
JC Brand
5e8843e8bd
xhr_user_search_url
fixes after some real world testing
2018-03-30 14:22:51 +02:00
JC Brand
95406a149d
Re-add xhr_user_search_url
and autocomplete when adding contacts
2018-03-30 14:22:51 +02:00
JC Brand
7a254a56e0
Pad the toggle and rename to "Chat Contacts"
...
to make it clearer that this toggle relates to chatting.
2018-03-30 14:16:07 +02:00
JC Brand
ea4337da51
Set column width for chatbox buttons in the sass file
2018-03-30 14:16:07 +02:00
JC Brand
2580cafa76
Bugfix. Fix selector
2018-03-30 14:16:07 +02:00
JC Brand
deff6e071c
Remove the clear
button. It was pretty useless
...
because it didn't actually clear anything permanently and upon page
reload the messages were there again.
2018-03-30 14:16:06 +02:00
JC Brand
516352c413
Disable emoji images by default
2018-03-30 14:16:06 +02:00
JC Brand
f260fd87e5
Don't close all chatboxes when reconnecting
2018-03-30 14:16:06 +02:00
JC Brand
6f67e3c721
Don't wrap the build in an anonymous define
.
...
This cause the error "Mismatched anonymous define" when loading the
bundle in Plone.
The original reason for adding `start.frag` was to wrap the bundle in a
closure to not pollute the global namespace (e.g. overriding global
`define` and `require` with Almond`s versions) and secondarily to allow
people to load the bundle via require.js.
The second usecase should now probably be done via a shim in the
require.js config.
2018-03-30 14:16:06 +02:00
JC Brand
8fda25c997
Honor the allow_logout setting
2018-03-30 14:16:05 +02:00
JC Brand
69172af4d0
Make sure to use transpiled modules
2018-03-30 14:16:05 +02:00
JC Brand
81fb2f443d
Bugfix. Make sure roster is re-inserted after reconnection
2018-03-30 14:16:04 +02:00
JC Brand
f90ca8f7f4
Remove unused class
2018-03-30 14:16:04 +02:00
JC Brand
11f02f78fe
Fix more failing tests
2018-03-17 18:54:19 +00:00
JC Brand
cb0b99ac37
Bugfix. Show message author in spoiler messages
2018-03-17 14:39:30 +00:00
JC Brand
f0ae8c44ff
Show caret for room, bookmark and group toggles
2018-03-17 11:42:17 +00:00
JC Brand
850c6aa2bd
Fix more failing tests
2018-03-16 23:37:52 +00:00
JC Brand
7b8a244163
Fix failing bookmarks tests
2018-03-16 11:49:39 +00:00
JC Brand
39e427bca9
There's no longer a dropdown to set the status
2018-03-16 11:49:31 +00:00
JC Brand
2f46bb8ce7
Fix failing tests
2018-03-14 23:10:31 +00:00
JC Brand
1565decfc0
Add identifiable class name
2018-03-14 18:25:33 +00:00
JC Brand
c219d37083
Bugfix. Handle attrs not being defined
2018-03-14 18:25:19 +00:00
JC Brand
2ff18c2cfb
Fix emoji test (now that bootstrap dropdown is used)
2018-03-14 17:32:01 +00:00
JC Brand
2045741fbe
Add api.chatviews.get
method
2018-03-14 13:27:36 +00:00
JC Brand
044907e4fa
Looks like focus
parameter was never used.
2018-03-14 13:27:36 +00:00
JC Brand
401513e695
Set fullname from roster contact
2018-03-14 13:02:08 +00:00
JC Brand
05e7cc8529
Let api.contacts.get
return the RosterContact model
2018-03-14 13:01:29 +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
c621732f2f
Bugfix. Get JID from presence
2018-03-14 11:54:22 +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
c958a1822c
Remove unused code (due to bootstrap dropdowns)
2018-03-11 12:12:15 +01:00
JC Brand
9c80ab5d43
Use bootstrap button markup
2018-03-11 12:07:36 +01:00
JC Brand
d7de739001
Add close button for controlbox in overlay view mode
2018-03-09 23:53:05 +01:00
JC Brand
a1145140c3
Various small tweaks
...
- Style room invite
- Remove old border-radius
- Show close icon for minimized chats
2018-03-09 23:27:12 +01:00
JC Brand
591e794f69
chat head: Show minimize icon and hide for now the vcard icon
2018-03-09 23:20:14 +01:00
JC Brand
c10a2596e3
Eagerly render emoji picker and avoid overflow in overlay view
2018-03-09 23:16:53 +01:00
JC Brand
986921c630
Small fixes for minimized chats toggle
2018-03-09 23:14:08 +01:00
JC Brand
392a7e8ab3
Don't use the bootstrap responsive grid for chats in overlay mode
2018-03-09 23:06:41 +01:00
JC Brand
849d6b2612
Update the minimized chats widget
2018-03-09 18:14:18 +01:00
JC Brand
9c0b7c71cd
Render OTR menu as a bootstrap dropdown
2018-03-09 17:30:42 +01:00
JC Brand
9825d6e777
Use bootstrap dropdown to render the emoji picker
2018-03-09 14:51:24 +01:00
JC Brand
8bddd0d7f4
Some work on showing emoji in a dropdown
2018-03-09 11:46:50 +01:00
JC Brand
40f4555419
Only show controlbox head when logging in, in overlayed view mode
2018-03-09 11:46:23 +01:00
JC Brand
251c023b15
Remove the ability to resize horizontally
2018-03-09 11:02:15 +01:00
JC Brand
914a55707d
Replace col-
classes with Sass mixins
2018-03-09 10:12:05 +01:00
JC Brand
db44a4f44d
Update the login form for the overlayed view mode
2018-03-07 21:40:55 +01:00
JC Brand
d72463c939
Make more semantic by putting login/register column info in css
2018-03-07 18:06:02 +01:00
JC Brand
b3f2fafeea
Various smaller fixes and improvements
2018-03-07 14:36:19 +01:00
JC Brand
21e1b2694f
Bugfix from master.
2018-03-07 11:06:11 +01:00
JC Brand
2db4550b13
Update chat events markup.
2018-03-07 11:02:12 +01:00
JC Brand
0d8d99b850
Bugfix. vcard doesn't necessarily have jid
2018-03-07 10:31:33 +01:00
JC Brand
e3350ab79f
Update chat head markup
2018-03-06 19:03:32 +01:00
JC Brand
0d3cdf12c8
Bugfix. Don't query on non-existent class
2018-03-06 19:03:23 +01:00
JC Brand
d04a7df295
Update room features markup to use font awesome
2018-03-06 18:33:59 +01:00
JC Brand
181b1836b0
Update and further style toolbars
2018-03-06 15:26:05 +01:00
JC Brand
6bdf204be4
Show occupants sidebar again
2018-03-05 16:58:31 +01:00
JC Brand
076265f108
Listen for click in the bookmarks view
2018-03-05 16:51:51 +01:00
JC Brand
d4d3d4c838
Merge branch 'split-muc' into bootstrap4
2018-03-05 16:51:33 +01:00
JC Brand
0013ee5506
Split MUC views into separate file/plugin
2018-03-05 16:32:13 +01:00
JC Brand
8211ed8f70
Release 3.3.4
2018-03-05 14:43:53 +01:00
JC Brand
1a2c1441a1
Updates #1021 Fix TypeError: Cannot read property 'firstChild' of null
2018-03-05 14:29:49 +01:00
JC Brand
983c94a619
converse-fullscreen not relevant to mobile view mode
2018-03-05 14:20:32 +01:00
JC Brand
dcc6244fc2
Don't overwrite default avatar with undefined
2018-03-04 07:29:24 +01:00
JC Brand
759603eea5
Hook in bg and tr locales
2018-03-04 06:11:18 +01:00
JC Brand
3c182b5a26
Server field in Rooms
tab showed MUC supporting clients
2018-03-03 11:45:57 +01:00