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
335a491e0d
Stop using the Jasmine "done" callback
2021-06-29 15:59:49 +02:00
JC Brand
14020125b9
Remove sinon and bump npm
2021-06-25 11:21:17 +02:00
JC Brand
7848d8cb2f
Add support for decrypting XEP-0454 OMEMO media
2021-06-25 09:24:18 +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
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
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
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
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
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
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
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
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
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
698f3a7b15
Bugfix. Can't call tagName
on a Strophe.Builder object
2021-05-13 14:41:44 +02:00
JC Brand
58b59fe263
Move more tests from spec folder
2021-05-12 12:41:19 +02:00
JC Brand
2b12f8e257
Use lodash-es everywhere
2021-05-12 12:14:28 +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
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
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
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
f283dd848e
Try to fix failing test on Travis
2021-04-20 10:39:05 +02:00
JC Brand
3558936b46
Refactor message component to require less attributes
2021-04-16 13:11:30 +02:00
JC Brand
a67603f689
Move various tests to plugin folders
2021-04-11 21:12:37 +02:00
JC Brand
24e57244d1
Remove the messageSend
event
2021-04-08 10:17:02 +02: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
f897596215
Move files around to try and create some consistency and order
2021-03-24 12:41:17 +01:00
JC Brand
864f5fd7d3
Rename file
2021-03-24 10:43:42 +01:00
JC Brand
453b993cfb
Split up CSS into more files
2021-03-19 12:47:32 +01:00
JC Brand
b189fc83b0
Move chatbox styles to plugin folder
2021-03-19 11:43: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
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
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
4ca30c4b93
Create converse-muc-chatarea
component
2021-03-11 10:26:09 +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
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
f4bcfa5c44
Move various template files into plugin folders
2021-02-22 20:37:13 +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
9ce4092a7c
Turn the bottom panel into a custom element
2021-02-12 14:32:55 +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
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
22b6b4b502
minchats: Use utility methods instead of mixins
...
Various fixes to chat minimization
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
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
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
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
2b6c56f148
Move converse-chatview plugin into folder
2020-12-08 09:50:17 +01:00