JC Brand
6827e21df1
Fix race conditions in tests
2021-08-31 11:23:49 +02:00
JC Brand
0c0af2d00b
Fix the minimized chats toggle
...
Clicking didn't make the minimized chats appear.
Also turn it into a Lit component
2021-08-29 00:15:45 +02:00
JC Brand
6c3a3dd1d3
Fix background for overlayed mode
2021-08-29 00:15:45 +02:00
JC Brand
8eac031047
Re-add wrapper anchor for unfurl images
...
We don't want the wrapper for interactive elements (GIF, video, audio),
but for images we still want them to link to the unfurled URL.
2021-08-10 13:45:56 +02:00
JC Brand
610e334bed
Use converse-icon
in the modtools modal
2021-08-06 13:38:12 +02:00
JC Brand
44a573b6c4
Handle GIFs inside Unfurls
...
- Add ability to play/pause by using `converse-rich-text`
- Make `converse-rich-text` component configurable whether the media URLs for GIF/audio/video are shown
- Add fallback options for GIFs that have errors
2021-08-03 12:14:13 +02:00
JC Brand
d0627f800c
Clear unread message counters when chat becomes visible
2021-07-30 09:56:17 +02:00
JC Brand
106cde9262
Update modtools component...
...
to accept jid and affiliation and to not use a Model to store state
2021-07-28 13:28:01 +02:00
JC Brand
0242fdb020
Extract moderator tools functionality and put it in a component
...
This makes it easier for 3rd parties to embed it in other modals (besides the bootstrap modal).
2021-07-27 12:53:39 +02:00
JC Brand
10c610232c
Use converse-icon instead of webfonts in heading dropdown
2021-07-27 11:11:36 +02:00
JC Brand
c961615609
Move converse-dropdown
styles in separate file
...
And add some tweaks
2021-07-27 10:53:23 +02:00
JC Brand
55146820e3
Use converse-icon
in the converse-dropdown
component
...
Instead of using webfonts
2021-07-26 19:27:59 +02:00
JC Brand
0ccf25d986
Add support for controlling (e.g. pausing, looping) gifs
...
- Create new component `converse-gif`
- Draw gif in canvas and add controlls
2021-07-23 19:31:43 +02:00
JC Brand
316748988b
Allow contact's profile modal to be shown...
...
even if there is now OMEMO device info
2021-07-23 18:30:07 +02:00
JC Brand
5cce34eb40
Split push plugin up into multiple files
2021-07-19 16:40:40 +02:00
JC Brand
60826ac6c6
Move functions out of core.js
2021-07-19 16:40:40 +02:00
JC Brand
d1abf3a04e
Wait for roster to be initialized
2021-07-19 16:40:40 +02:00
JC Brand
d2a35d4ce1
Turn converse-roster
and converse-roster-filter
into Lit elements
2021-07-15 17:26:09 +02:00
JC Brand
8de4671603
Replace more elements that use font icons with svg icons
2021-07-15 16:28:12 +02:00
JC Brand
2bcf01f5ab
Use DOMPurify instead of XSS.js
...
Remove exports-loader, which is therefore no longer necessary
2021-07-15 14:16:41 +02:00
JC Brand
f2aa39e1c3
Identify media URLs during message parsing
2021-07-06 13:35:22 +02:00
JC Brand
b90a435833
Move url related utility methods to @converse/headless
2021-07-05 18:35:58 +02:00
JC Brand
bff714f24c
OMEMO: Include XEP-0380 EME tag in encrypted messages
2021-07-05 18:35:58 +02:00
JC Brand
01efb02f9e
Make sure XEP-0363 urls are also OMEMO encrypted
...
by re-using `ChatBox.prototype.sendMessage`.
updates #1182
2021-07-03 00:22:03 +02:00
JC Brand
3d8852950d
Add ability to let dropdown appear at the top, left-aligned
...
And use that for the last message in the chat history, otherwise the
dropdown is obscured.
2021-07-01 15:23:37 +02:00
JC Brand
e675c853f3
Add XEP-0454 support for encrypting files
...
Fixes #1182
2021-07-01 14:35:48 +02:00
JC Brand
6665bef76c
Fix failing tests
...
Handle missing message model (happens during tests)
2021-06-29 16:00:10 +02:00
JC Brand
dff5f485c9
Split out MUC tests
2021-06-29 15:59:49 +02:00
JC Brand
4047d619a1
Remove lodash dependency in tests
2021-06-29 15:59:49 +02:00
JC Brand
767d5ec91d
fix failing test
2021-06-29 15:59:49 +02:00
JC Brand
335a491e0d
Stop using the Jasmine "done" callback
2021-06-29 15:59:49 +02:00
JC Brand
8506646db2
Remove unnecessary event trigger
2021-06-29 12:57:48 +02:00
JC Brand
be329a2d10
Don't subclass the chatbox for the controlbox model
2021-06-29 12:55:29 +02:00
JC Brand
14020125b9
Remove sinon and bump npm
2021-06-25 11:21:17 +02:00
JC Brand
0f82b76c09
fix failing test due to i18n string change
2021-06-25 10:59:13 +02:00
JC Brand
ba0ea6c2c4
Update translations based on suggestions from Zash on weblate
2021-06-25 10:38:38 +02:00
JC Brand
7848d8cb2f
Add support for decrypting XEP-0454 OMEMO media
2021-06-25 09:24:18 +02:00
JC Brand
2c0fbec43c
Move arraybuffer utility methods into their own file
2021-06-24 18:57:32 +02:00
JC Brand
92093d6d28
Further style tweaks for embedded media
2021-06-24 13:04:25 +02:00
JC Brand
e00bf3da36
Make sure unread messages are cleared when showing a chat
2021-06-23 17:18:32 +02:00
JC Brand
9e21813251
Move tests into new file
2021-06-23 17:11:13 +02:00
JC Brand
629f382642
converse-roster: Move functions to utils
2021-06-23 12:02:47 +02:00
JC Brand
ad96db994e
Fix failing tests on Travis
2021-06-23 10:52:32 +02:00
JC Brand
958d98a1a1
Use mock method in test
2021-06-22 17:04:27 +02:00
JC Brand
fb6bafdf6c
Styling: Fix an offset bug
...
That caused empty inline code hints to be considered valid.
Also update the tests that were failing due to the changes in the
previous commit.
2021-06-22 16:54:05 +02:00
JC Brand
6dea5959cc
Use API to get chat/room models in components
2021-06-22 14:47:35 +02:00
JC Brand
afd737f965
Fixes #2520
2021-06-22 12:50:50 +02:00
JC Brand
8de6e78729
In converse-muc-chatarea
, use API to get room
...
and handle asynchronicity.
2021-06-18 11:56:35 +02:00
JC Brand
619fb538d7
Show video download URL
2021-06-17 15:50:10 +02:00
JC Brand
095d9b60cd
Render audio from URLs in messages
2021-06-17 15:24:25 +02:00
JC Brand
33b426c79e
Render videos from URLs in messages
2021-06-17 14:06:18 +02:00
JC Brand
2ac49fb9a5
Bugfix. Images being rendered when they shouldn't
2021-06-17 14:06:18 +02:00
JC Brand
b071a0e22f
MAM: Prevent multiple simultaneous queries when scrolling up
2021-06-17 11:39:20 +02:00
JC Brand
b6f2662ad7
Set 'scrolled'
flag on model.ui
...
This prevents it from being persisted across page loads and makes more
sense logically.
Also move markScrolled to utils and MUC unread messages indicator to bottom panel.
2021-06-17 11:39:20 +02:00
JC Brand
dc711d494f
Add a placeholder to indicate a gap in the message history
...
The user can click the placeholder to fill in the gap.
2021-06-17 11:35:06 +02:00
JC Brand
bbc952b265
Fix MUC and headlines heaidngs, so that they still work
...
as ElementViews, since I ran out of time converting them to lit
components as well.
This reverts commit 1121a90af0
.
2021-06-15 11:09:34 +02:00
JC Brand
1121a90af0
Revert "Turn heading into a lit component"
...
This reverts commit 969b2f2e11
.
2021-06-15 10:52:17 +02:00
JC Brand
969b2f2e11
Turn heading into a lit component
2021-06-15 10:33:33 +02:00
JC Brand
8907adc236
Move method to utils
2021-06-15 10:03:10 +02:00
JC Brand
c8304497b5
Remove onStatusMessageChanged handler
...
It's no longer necessary and calls a method that doesn't exist anymore.
2021-06-15 09:59:40 +02:00
JC Brand
68f0be996f
Let chats be closed by calling close
on the models
...
Instead of on the views/components.
We still have `close` methods on the components, but they are just
event handlers and not external API methods to be called by other code.
Instead `close` should be called on the model.
2021-06-15 09:59:40 +02:00
JC Brand
9fb92080f2
Get rid of the APIs to fetch chat views
...
This is largely a leftover from the Backbone.View days and makes less
sense now that the UI is componentized.
Ideally we don't want to call commands on the "views themselves, instead
we should be working on the the models and let the "views" update
themselves automatically.
Also, given that the `jid` attribute on the chat views might change,
especially when rendered declaratively in other frameworks like React,
a view might not be available at times where we previously might have
expected it to be (since it's been repurposed for a different JID).
2021-06-15 09:59:40 +02:00
JC Brand
54d6a6af56
Unfurls: gracefully handle missing OGP data
2021-06-09 20:54:08 +02:00
JC Brand
825e2643ae
Use flex-direction: column-reverse
...
On the `<converse-chat-content>` element. This removes the need for all
the manual scrolling.
Firefox finally supports this feature. Unfortunately Firefox ESR doesn't
yet, but I can't wait anymore.
2021-06-07 19:26:16 +02:00
JC Brand
9bcf5f2947
Scrolling fixes
...
* Remove extra `_markScrolled` function
* Only try to maintain scrolling position when some non-scrolling change has happened.
2021-06-07 17:54:38 +02:00
JC Brand
c966c49304
Fixes #2500
...
This wrongly stored value wasn't inlcuded in the published the bundle
because the libsignal store was used, which had the right value for the public key.
Instead, this value was used locally by being passed to the libsignal
session builder to verify signed prekey.
2021-06-07 13:49:21 +02:00
JC Brand
90dff612c7
Re-initialize chat components when jid attribute changes
2021-06-07 12:53:35 +02:00
JC Brand
e3612e8c62
Turn the chats into Lit components
...
Previously they were of type ElementView from @converse/skeletor
The ElementView component is merely a helper to allow us to eventually
migrate everything to Lit
2021-06-04 15:22:52 +02:00
JC Brand
06c4ded063
Get rid of impperative code to render help messages
...
in 1:1 chat
2021-06-04 13:41:01 +02:00
JC Brand
982586b0e6
Move protocol tests to plugin
2021-06-04 12:53:03 +02:00
JC Brand
ae5a13bb06
Move emojis tests into plugins
2021-06-04 12:53:03 +02:00
JC Brand
f3efbba26c
Create converse-message-form
component
...
More work on making bottom panel sub-components declarative
- Handle auto-completion in the converse-muc-message-form element
- Make message limit indicator a component
- Rename template
2021-06-04 12:53:03 +02:00
JC Brand
623deac3ec
Fix race condition in test
2021-06-03 18:36:26 +02:00
JC Brand
58d96c8594
Use intersection observer to remember scrolling position
2021-06-03 18:24:55 +02:00
JC Brand
279a3c3413
Add saveScrollPosition method on ChatContent
2021-06-03 15:32:39 +02:00
JC Brand
fe3e63d8c5
Declarative scrolling and rendering new messages indicator
...
- Increment `num_unread` when new messages appear while scrolled up
- Set scrolling state in model code (as opposed to view)
2021-06-03 14:16:03 +02:00
JC Brand
ec93e2fff3
Render chat messages loading spinner declaratively
...
instead of imperatively.
Add new non-persisted UI model for rendering UI changes. Currently only
being used for rendering the spinner
2021-06-03 00:02:33 +02:00
JC Brand
59d55b3526
Add option to deregister nickname when closing a MUC
...
By setting `auto_register_muc_nickname` to `'unregister'`
2021-06-02 22:06:57 +02:00
JC Brand
0756af2b30
Refactor chat close
methods
...
- Remove the shared base-class method.
- Trigger `chatBoxClosed` on the model
- Send CSN from the model, not the view
2021-06-02 17:55:52 +02:00
JC Brand
1598640c80
Remove line-breaks from message image markup
...
We use `white-space: pre-wrap` to render the messages, so line-breaks in
the markup add unnecessary space.
2021-06-01 14:56:43 +02:00
JC Brand
994e528b45
Bugfix. Properly escape | character in mentioned nicknames
2021-05-19 14:47:20 +02:00
JC Brand
06f03fc884
MUC: Store disconnection data on the session
2021-05-13 15:45:12 +02:00
JC Brand
698f3a7b15
Bugfix. Can't call tagName
on a Strophe.Builder object
2021-05-13 14:41:44 +02:00
JC Brand
ad53a3c9a1
Message styling fix
...
Don't parse text that falls within XEP-0372 references ranges for
message styling hints.
2021-05-13 11:20:03 +02:00
JC Brand
58b59fe263
Move more tests from spec folder
2021-05-12 12:41:19 +02:00
JC Brand
d71ab6d30d
Bugfix. Need to pass in group name since this
is undefined
2021-05-12 12:26:16 +02:00
JC Brand
2b12f8e257
Use lodash-es everywhere
2021-05-12 12:14:28 +02:00
JC Brand
f40bbbf145
Turn status plugin into folder
...
Remove the use of an override and add a hook `presenceConstructed` instead
2021-05-11 17:04:15 +02:00
JC Brand
1fc44b9d8e
Turn caps plugin into folder.
...
Move more test files to plugins
2021-05-11 16:18:34 +02:00
JC Brand
c8f0406c84
Refactor bookmark plugins
...
Mainly moving functions and methods to utils
2021-05-07 12:27:29 +02:00
JC Brand
18e3b618b4
Some light chat views refactoring
...
- Move `showModeratorToolsModal` method from view to utils
- Move `getNicknameRequiredTemplate` method from view to utils
- Move common `close` code to base class
2021-05-07 11:23:52 +02:00
JC Brand
fdc81fa4ea
Use .conversejs
instead of .converse-root
...
as the class that designates standalone Converse components.
2021-05-06 12:21:35 +02:00
JC Brand
d0594a6bfc
Add new test for <converse-muc>
2021-04-30 18:01:53 +02:00
JC Brand
9c11e0dc32
Use .converse-root
class instead of #conversejs
id
2021-04-30 17:36:42 +02:00
JC Brand
4bdafb8ea3
Break Sass up into more files
...
And import where appropriate to allow for custom builds that are still styled properly
2021-04-30 17:36:40 +02:00
Shaun Wu
9ea8653ef7
Upgrade to Webpack 3
...
Had to make various other changes due to incompatibilities.
- Use the new `lit` package instead of `lit-html` or `lit-element`
- Drop `haunted` since it breaks the rules by specifying `type: module`
but then doesn't import with file extensions
- Use Sass Dart instead of node-sass (fixes #2445 )
- Upgrade Karma
2021-04-30 13:50:50 +02:00
Shaun Wu
1cb2b1f7a9
Adding configurable url history changing
2021-04-29 11:59:28 +02:00
JC Brand
57ccf4c20e
Batched writes to IndexedDB
...
- Update to the latest @converse/skeletor (which uses mergebounce to batch writes)
- Flush storage before logging out
- Flush when reloading the tab
- Create initStorage method
2021-04-28 16:53:50 +02:00
JC Brand
1f7fecab21
Make show_images
a prop of converse-chat-mesage-body
...
That way, when the setting changes and we call `requestUpdate` on
`converse-chat-message`, the body will rerender.
2021-04-26 12:08:16 +02:00
JC Brand
d86f3094b9
Fix failing test
2021-04-23 12:05:30 +02:00
JC Brand
8e0701f7bb
Fix TypeError
...
The view isn't yet defined when we call `maybeFocus`. This is in any case
not the right place to call something like this.
2021-04-23 11:49:45 +02:00
JC Brand
a5d428c42d
Fix closing MUC from rooms list
...
View isn't defined if chat is in background
2021-04-23 11:42:30 +02:00
JC Brand
7b49296a24
Bugfix. Avoid creating an undefined store
2021-04-22 14:47:01 +02:00
JC Brand
b678df8d23
Move tests file to plugin folder
2021-04-22 14:41:17 +02:00
JC Brand
458c51b32d
Move tests for message image rendering to new file
2021-04-21 12:06:10 +02:00
JC Brand
7b7ec45db8
Move disco plugin into folder and import lodash utilities separately
2021-04-21 11:03:22 +02:00
JC Brand
f283dd848e
Try to fix failing test on Travis
2021-04-20 10:39:05 +02:00
JC Brand
b2f09f64c3
Use API to get room
2021-04-19 15:23:58 +02:00
JC Brand
3558936b46
Refactor message component to require less attributes
2021-04-16 13:11:30 +02:00
JC Brand
a129638fd1
Move MUC styling test to plugin folder
2021-04-16 09:45:10 +02:00
JC Brand
943ad96d52
Move tests to plugin folder
2021-04-15 16:42:10 +02:00
JC Brand
fdde708327
Add a new MUC room state: converse.ROOMSTATUS.BANNED
...
This makes it easier to distinguish between being banned from a room, or
being disconnected for other reasons.
2021-04-15 12:34:00 +02:00
JC Brand
383f5c1d60
Extract affiliation-related methods out of the ChatRoom model
...
and put them together in a utils file
2021-04-14 10:44:31 +02:00
JC Brand
13e19eb7f8
Split omemo plugin into more files
2021-04-12 05:09:44 +02:00
JC Brand
42581b1d12
Split mam-views plugin into multiple files
2021-04-11 21:12:37 +02:00
JC Brand
573cc3e8d9
Split omemo plugin up into multiple files
2021-04-11 21:12:37 +02:00
JC Brand
a67603f689
Move various tests to plugin folders
2021-04-11 21:12:37 +02:00
JC Brand
548021b556
Only add view to chatboxviews
after this.model
has been set
...
Otherwise race-conditions arise where `this.model` is undefined
2021-04-08 10:17:26 +02:00
JC Brand
24e57244d1
Remove the messageSend
event
2021-04-08 10:17:02 +02:00
JC Brand
e7ddd07d56
Remove unused method
2021-03-31 14:27:44 +02:00
JC Brand
6d60a79369
MUC: Move function to utils
2021-03-26 11:34:45 +01:00
JC Brand
ccd60f76c3
Cleanup
...
- Move top-level functinos to utils files
- Get rid of unused/obsolete overrides
- Only import components there where they're used
- Bump version in package.json
2021-03-26 10:58:51 +01:00
JC Brand
3129dd9351
Bugfix. Scroll position not respected in MUC
2021-03-24 14:35:33 +01:00
JC Brand
f897596215
Move files around to try and create some consistency and order
2021-03-24 12:41:17 +01:00
JC Brand
bd8a57e0c3
Use the converse-rich-text
component to render the topic
2021-03-24 12:41:17 +01:00
JC Brand
864f5fd7d3
Rename file
2021-03-24 10:43:42 +01:00
JC Brand
6d01a3153e
Move relevant files into converse-rootview plugin folder
2021-03-22 14:34:18 +01:00
JC Brand
453b993cfb
Split up CSS into more files
2021-03-19 12:47:32 +01:00
JC Brand
90ab412628
Move fullscreen styles into relevant plugin
2021-03-19 12:47:32 +01:00
JC Brand
1b91d9b69e
Move roster, bookmarks and minimize styles to plugin folders
2021-03-19 11:53:22 +01:00
JC Brand
79a4006a61
Move headlines scss to plugin folder
2021-03-19 11:48:48 +01:00
JC Brand
73c4c21533
Move MUC styles to plugin folder
2021-03-19 11:47:13 +01:00
JC Brand
b189fc83b0
Move chatbox styles to plugin folder
2021-03-19 11:43:16 +01:00
JC Brand
005cf4dc96
Move controlbox styles to plugin folder
2021-03-19 11:36:19 +01:00
JC Brand
224336e232
Remove last backbone-like declarative event handler from the MUC view
2021-03-17 12:28:16 +01:00
JC Brand
05abb1dae9
Move method from view to model
2021-03-17 11:27:13 +01:00
JC Brand
8f21b020b1
Move method to view unread messages to relevant component
2021-03-17 11:20:13 +01:00
JC Brand
7126ee2df9
Add new component for navigating back to controlbox
...
in small viewports
2021-03-17 11:19:58 +01:00
JC Brand
19e701683d
Turn the controlbox toggle into a lit-element component
2021-03-17 10:37:19 +01:00
JC Brand
c7c077074f
Chat: Move two methdos from component to the model
2021-03-16 11:01:10 +01:00
JC Brand
56a7050160
Don't insert newline after submitting message
2021-03-15 15:15:20 +01:00
JC Brand
d8daedea0d
Render the MUC view component declaratively
2021-03-15 12:34:56 +01:00
JC Brand
5006ebcbae
Bottom panel fixes
...
- Restore textarea size when it gets manually cleared
- Don't reload page when pressing send button
2021-03-12 10:14:34 +01:00
JC Brand
69a9adb459
Rename and move some files around
2021-03-12 09:58:17 +01:00
JC Brand
4646956922
Don't render hidden chats
2021-03-11 13:05:03 +01:00
JC Brand
2dbe50fc97
Refactor converse-muc-sidebar
...
- To only take the MUC JID as attribute
- To be responsible for closing itself
2021-03-11 11:34:52 +01:00
JC Brand
349b6d616d
Move functions for resizing the MUC sidebar to converse-muc-chatarea
2021-03-11 11:22:46 +01:00
JC Brand
4ca30c4b93
Create converse-muc-chatarea
component
2021-03-11 10:26:09 +01:00
JC Brand
d3ab68011a
Split core.js file into multiple smaller ones
...
Update storing of app settings. Store settings in a closured
`app_settings` object inside `@converse/headless/shared/settings`
Remove the `_converse.settings` object.
2021-03-09 14:11:28 +01:00
JC Brand
0d9c7bade3
Don't propagate paste events in chat textarea
2021-03-08 11:20:32 +01:00