Commit Graph

416 Commits

Author SHA1 Message Date
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
JC Brand
698ad90c43 Move insertIntoTextarea methods from view to bottom panel component
That way we further decouple the various components and make it easier
to use them indepenent of one another.
2021-03-04 15:53:04 +01:00
JC Brand
9bac86fe1a Don't add the same OGP metadata multiple times 2021-03-01 21:31:57 +01:00
JC Brand
49837c2da4 Ensure that help messages are always shown 2021-02-24 16:34:46 +01:00
JC Brand
ce1c5ec7f6 Updates #2413
Wrap `history.start` in try/catch clause.
2021-02-24 15:48:11 +01:00
JC Brand
d8cab006c8 Move methods to utils
So that they can also be used independently of the components
2021-02-24 15:18:09 +01:00
JC Brand
d335a11119 Move more muc templates to plugin folder and use dashes 2021-02-24 09:51:37 +01:00
JC Brand
4d0012f672 Two small changes
- Fix controlbox spec to work with newer Jasmine
- Don't import Strophe in the non-headless code
2021-02-24 09:12:31 +01:00
Dele Olajide
61dacfd2a5 fix #2409 - Integrate App Badging API for unread messages 2021-02-24 06:55:59 +01:00
JC Brand
8d74e063af Don't import the entire chatview plugin for the muc-views one 2021-02-24 06:35:49 +01:00
JC Brand
f158a996f4 Turn converse-chatboxes plugin into folder 2021-02-22 21:07:54 +01:00
JC Brand
ae3b2c597d Bugfix. Login form is shown after reconnection 2021-02-22 20:53:59 +01:00
JC Brand
f4bcfa5c44 Move various template files into plugin folders 2021-02-22 20:37:13 +01:00
JC Brand
c69eb6e1bf Split ad-hoc commands code into smaller files 2021-02-16 13:51:59 +01:00
JC Brand
de4fd466dc Move more MUC related views and components to muc-views plugin 2021-02-16 13:46:25 +01:00
JC Brand
c43969fece Move MUC sidebar component to plugin folder
and fix update issue where occupants weren't being shown in the sidebar
when reloading the page
2021-02-12 15:01:00 +01:00
JC Brand
3ae71a45a2 Move chatbox template to chatview plugin folder 2021-02-12 14:38:26 +01:00
JC Brand
a8a2bb4681 Componentize the chat headings 2021-02-12 14:32:55 +01:00
JC Brand
906fa93812 MUC: combine two methods doing roughly the same thing 2021-02-12 14:32:55 +01:00
JC Brand
9ce4092a7c Turn the bottom panel into a custom element 2021-02-12 14:32:55 +01:00
JC Brand
94bc087f50 Move MUC templates to the plugin folder 2021-02-11 20:25:20 +01:00
JC Brand
45e0ba7f9b Use this.listenTo instead of api.listen.on in components
So that event handlers are automatically deregistered when the component is dismounted.
2021-02-10 11:44:04 +01:00
JC Brand
a32b7b64bf Fix display of lgoged-out controlbox in fullpage mode 2021-02-10 11:37:48 +01:00
JC Brand
78fb5935c7 Handle scrolling down in converse-chat-content component 2021-02-09 18:20:52 +01:00
JC Brand
95c14e5a26 Don't pass chatview object to converse-chat-content
and any child components.

This makes it easier to use these components independently of one
another and the overarching view.
2021-02-09 16:40:00 +01:00
JC Brand
f81292e955 Bugfix in window state change handler 2021-02-09 15:48:21 +01:00
JC Brand
790caf9f5a Render converse-chat-content declaratively 2021-02-09 15:48:21 +01:00
JC Brand
18e48be5c4 Move CSS fixes before merge 2021-02-09 15:48:21 +01:00
JC Brand
3f24720633 Use repeat directive to render roster items 2021-02-09 15:48:21 +01:00
JC Brand
28fb2472a4 Chats: use repeat directive 2021-02-09 15:48:21 +01:00
JC Brand
22b6b4b502 minchats: Use utility methods instead of mixins
Various fixes to chat minimization
2021-02-09 15:48:21 +01:00
JC Brand
9f5dbad589 Turn roster into a custom element 2021-02-09 15:48:21 +01:00
JC Brand
b8d710800a Move more methods from ChatBoxView to shared base class 2021-02-09 15:48:21 +01:00
JC Brand
bb317d1abb Combine RoomsPanel with RoomsList element 2021-02-09 15:48:21 +01:00
JC Brand
b31f334109 Fix event handlers in BookmarksView 2021-02-09 15:48:21 +01:00
JC Brand
05c00c5e1c Call minimize on the model
Fix minimizing by listening to change event

Fixes around showing/hiding and minimizing/maximizing

Don't trigger a `show` event on the model to show a chat, instead rely
on the `hidden` attribute which causes a rerender and will show/hide
chats.
2021-02-09 15:48:21 +01:00
JC Brand
704b50fb3e Turn HeadlinesBox into a custom element 2021-02-09 15:48:21 +01:00
JC Brand
fa7443be95 Don't render unnecessary components when not in overlayed view mode
Specifically `converse-minimized-chats` and `converse-controlbox-toggle`
2021-02-09 15:48:21 +01:00
JC Brand
d1c807ec79 Fixes to the bookmarks-list view 2021-02-09 15:48:21 +01:00
JC Brand
fd2f253c09 Add .chatroom class to converse-muc and remove .logged-out to controlbox 2021-02-09 15:48:21 +01:00
JC Brand
a029ece808 Controlbox related bugfixes 2021-02-09 15:48:21 +01:00
JC Brand
e64798208f Remove overrides of renderLoginPanel
which has also been removed earlier
2021-02-09 15:48:21 +01:00
JC Brand
be9016a081 Fix switching between login and register panels 2021-02-09 15:48:21 +01:00
JC Brand
75b8a16465 Fix CSS and work on declaratively rendering the controlbox toggle 2021-02-09 15:48:21 +01:00
JC Brand
a59920e6e5 Turn XMPPStatusView into the converse-user-profile component 2021-02-09 15:48:21 +01:00
JC Brand
6ca2183e24 Remove unneeded ControlBoxPane view 2021-02-09 15:48:21 +01:00
JC Brand
bb7d1c5cba Turn login and register panels into element views 2021-02-09 15:48:21 +01:00
JC Brand
0ecd86ecf7 Turn MinimizedChatsView into an ElementView subclass 2021-02-09 15:48:21 +01:00
JC Brand
ccfb29f1b3 Turn BookmarksView into a custom element 2021-02-09 15:48:21 +01:00
JC Brand
b9bf577ccd Turn rooms list into a custom element 2021-02-09 15:48:21 +01:00
JC Brand
7f869ea72d Make the headlines panel an ElementView
Don't manually insert HeadlinesBoxView
we'll have to convert it to an ElementView
2021-02-09 15:48:21 +01:00
JC Brand
dea2eea919 Componentize dragresize 2021-02-09 15:48:21 +01:00
JC Brand
1949356ede Work on turning chat views into custom elements
The eventual goal is to avoid UI-related stanza processing if the relevant chats
aren't in the DOM.

With the current architecture, chatboxes are created (and the stanzas
related to them processed) even if `#conversejs` isn't in the DOM.

* Initial work on making controlbox an element
* Create a shared base class
* Ceate ChatBoxViews proxy
* Update sass now that certain classes are moved to converse-chats element
2021-02-09 15:48:21 +01:00
JC Brand
eb65f75f45 Move headlines panel template to plugin 2021-02-09 15:48:21 +01:00
JC Brand
5feaab9a95 MUC: Add test for showing cached messages before entering 2021-02-02 15:12:31 +01:00
JC Brand
9568d57e5f Pass message attrs to shouldNotifyOfGroupMessage 2021-02-01 17:50:46 +01:00
JC Brand
5d1b5ac6c9 Notifiations: Add new hook shouldNotifyOfGroupMessage 2021-02-01 17:14:35 +01:00
JC Brand
50dda3244e Move converse-notifications plugin into a folder and split up 2021-02-01 16:15:55 +01:00
JC Brand
7f851208aa Move converse-roster plugin into folder and split up 2021-01-26 14:34:36 +01:00
JC Brand
7199e63fd7 Move converse-profile plugin into folder 2021-01-22 15:49:16 +01:00
JC Brand
85bd192f3c Move converse-minimize into a folder
Also, use utility methods instead of adding a mixin to ChatBoxViews
(since we're planning on removing it).
2021-01-18 12:56:17 +01:00
JC Brand
9a2678450a Move converse-bookmarks plugin into folder 2021-01-08 14:28:36 +01:00
JC Brand
2da2dbff71 Move converse-bookmark-views into folder 2021-01-07 13:29:55 +01:00
JC Brand
eaa67dab91 Bugfix. Filtering of contacts stopped working after refactoring 2021-01-07 12:52:56 +01:00
JC Brand
5e0b05356f dragresize: use lit-html to render the template 2020-12-29 12:40:16 +01:00
JC Brand
12bb9375f4 Move converse-dragresize plugin to folder 2020-12-29 12:38:17 +01:00
JC Brand
f2ef8c7206 controlbox: render the toggle via lit-html 2020-12-29 12:23:39 +01:00
JC Brand
3f40098144 Render logo for registration form
Also fix showing of version number in login form
2020-12-29 12:16:23 +01:00
JC Brand
9372ad2dff register: Use lit-html to render templates 2020-12-29 11:49:25 +01:00
JC Brand
e31fa1f7dd Move converse-register plugin to folder 2020-12-29 10:36:59 +01:00
JC Brand
828eac1e72 rosterview: Move more lodash templates to lit-html 2020-12-28 21:20:18 +01:00
JC Brand
bb3ac36098 Render the roster container and filter with lit-html
This is the first commit that makes use of the `ElementView` from
Skeletor, which lets us turn views into custom elements.
2020-12-28 20:56:37 +01:00
JC Brand
794a709690 Move converse-rosterview plugin into folder 2020-12-28 19:46:40 +01:00
JC Brand
da131715ba Use lit-html to render form fields 2020-12-28 18:25:51 +01:00
JC Brand
62dbb1062f Add support for protoXEP: MUC mention notifications 2020-12-21 14:02:43 +01:00
JC Brand
986f7550f3 Clear messages upon reconnection as late as possible
To avoid a long empty flash while new messages are being fetched again.
2020-12-17 16:23:47 +01:00
JC Brand
1f476b8793 Move converse-mam plugin into own folder 2020-12-17 14:48:50 +01:00
JC Brand
4349b016eb MUC: Only clear messages when MUC is left intentionally
by the user, and not as part of cleanup during logout or when leaving
automatically in order to receive XEP-0437 activity indicators.
2020-12-17 14:00:18 +01:00
JC Brand
2121766623 More RAI improvements
- Add test for incoming RAI message
- Only enable RAI if the user is affilated in MUC being left
- Handle error presence indicating a resouce-constraint
- Don't unregister stanza handlers in `leave`, since we still want to
  listen to RAI-related stanzas. Instead unregister upon the `destroy`
  event.
2020-12-17 13:04:24 +01:00
JC Brand
fe365a6561 Move converse-roomslist plugin into folder 2020-12-16 14:05:34 +01:00
JC Brand
e80afbfe39 Move MUC and stanza utils into shared and plugin-specific files 2020-12-14 16:30:13 +01:00
JC Brand
c457081597 WIP: Add support for XEP-437: Room Activity Indicators
- Send marker for last message before leaving and before subscribing to RAI
- clear cache of RAI-subscribed domains on reconnection
2020-12-14 13:11:24 +01:00
JC Brand
bb3f52d2f2 Move the autocomplete code into ./shared
And remove it as a plugin.
2020-12-10 11:17:57 +01:00
JC Brand
240fab99f4 Split chatboxviews/index.js into multiple files 2020-12-08 10:16:34 +01:00
JC Brand
e31d5ba939 Move converse-headlines-view plugin into a folder 2020-12-08 09:50:17 +01:00
JC Brand
c0fafcec70 Move converse-muc into a folder 2020-12-08 09:50:17 +01:00
JC Brand
e8536ebc88 Move converse-muc-views plugin into own folder 2020-12-08 09:50:17 +01:00
JC Brand
2b6c56f148 Move converse-chatview plugin into folder 2020-12-08 09:50:17 +01:00
JC Brand
ecfaba0781 Move converse-chatboxviews plugin into folder 2020-12-08 09:50:17 +01:00
JC Brand
4c1813d6d4 Move converse-controlbox plugin into folder 2020-12-08 09:50:17 +01:00
JC Brand
d47c72711b Document the button hooks 2020-12-03 16:56:54 +01:00
JC Brand
824bf2ed30 Move all plugin files to ./plugin folders
Rename converse-core.js to core.js
2020-12-03 16:41:15 +01:00