Commit Graph

1311 Commits

Author SHA1 Message Date
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
Ariel Fuggini
758c46c5aa Fixes infinite loop bug when appending .png to allowed image urls 2021-02-09 15:38:06 +01:00
JC Brand
0a1cbf87b8 MUC: Ensure that MAM query is from latest cached messages
In some cases a race condition can occur where a new message is received
before the MAM query starts.

Previously, the newly received message would be considered the latest
message to query from, thereby causing a gap in the history.
2021-02-03 10:27:46 +01:00
JC Brand
5feaab9a95 MUC: Add test for showing cached messages before entering 2021-02-02 15:12:31 +01:00
JC Brand
a294827211 Make sure Notification spy has relevant methods 2021-02-02 10:30:13 +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
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
1a88aff179 Decided to still collapse newlines...
and to solve the offset issue by replacing excessive newlines with
the zero-width space unicode character.
2021-01-18 12:18:33 +01:00
JC Brand
61bb0cfab7 Don't collapse newlines.
This causes index offset issues with any rich elements in the message.

We could try to fix the offsets, or alternatively replace the collapsed
newlines with spaces (to maintain the original offsets), but I don't
think it's worth the effort since I'm not sure that it's a good idea to
collapse newlines in the first place.
2021-01-18 11:27:01 +01:00
JC Brand
2c7b220453 RAI: Always send the presence to enable RAI when leaving a MUC
Looking at the Prosody code, it appears to be cheap since
Prosody will do nothing if you're already registered and this works
around a bug in mod_muc_rai where events aren't fired for each resource
of the same joined nick joining or leaving the MUC.
2021-01-15 13:55:40 +01:00
JC Brand
58c5e9676a Handle forwarded mentions coming from the MUC, not the host 2021-01-08 18:25:36 +01:00
JC Brand
3f47c4d3dd Use real JID in XEP-0372 references only when the MUC is non-anonymous 2021-01-04 14:24:23 +01:00
JC Brand
9a2ded5a9a Remove global lodash 2020-12-29 15:12:45 +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
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
6b9c718df7 RAI: Handle MUCs that start out hidden
When a MUC starts out hidden, we first need to join in order to find out
whether we're affiliated before we can know whether we should enable RAI
or join the MUC as usual.
2020-12-21 12:07:00 +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
18e6ebe9af MUC: Bugfix, don't set state to entered on unavailable presence 2020-12-17 13:04:24 +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
eed9ee8033 RAI: Add tests 2020-12-16 13:48:14 +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
2f244da8b1 Fix failing test 2020-12-11 14:06:37 +01:00
JC Brand
b771827d2a Fix corrections tests 2020-12-10 17:13:40 +01:00
JC Brand
af2df84fc1 Styling: Fix offsetting of mentions mixed in with styles 2020-12-09 18:05:08 +01:00
JC Brand
8572c86941 Styling: Trim leading whitespace inside blockquote
As demanded by XEP-0393
2020-12-09 15:11:54 +01:00
JC Brand
58586ab2e4 Styling: quotes should start on newlines
And when nested, have no spaces between them.
2020-12-09 14:19:31 +01:00
JC Brand
e3ebde9741 Move converse-chat plugin into folder 2020-12-07 16:30:11 +01:00
Xavi Ferrer
f4b6b93b8b update info messages visibility 2020-12-03 11:45:25 +01:00
JC Brand
160ab3452e Rename ids of two modals 2020-12-03 11:43:04 +01:00
JC Brand
1a161ad2c7 Add api for managing modals
Set passed-in properties on modal
2020-12-03 11:36:02 +01:00
JC Brand
b18cc6bcc5 Move modals and their templates into ./modals/ 2020-12-03 11:02:35 +01:00
JC Brand
5a3aaeb056 Prevent default when opening chat via xmpp: URI 2020-12-03 10:45:08 +01:00
JC Brand
01ee942920 Styling fixes
* Calculate proper length for :geo URI matches
* Don't strip out line-break after quotes, instead use CSS `display: inline-block`
2020-12-01 10:21:21 +01:00
JC Brand
c608958eb3 Handle special case of two @ signs preceding a nickname 2020-11-27 22:06:22 +01:00
JC Brand
f86efca9a6 autocomplete: Use regex instead of hardcoded list...
to determine valid characters to form a boundary before an `@` mention

Also fixed an issue with mentions looking like they're part of URLs, by
first processing mentions separately.
2020-11-27 22:06:22 +01:00
Xavi Ferrer
8b9c97745f Allow selected characters to precede a mention 2020-11-27 14:12:29 +01:00
JC Brand
35db01d316 Styling: Take offset into consideration when adding templates 2020-11-27 11:12:19 +01:00
JC Brand
30e784b8ec Fix: use_system_emojis was false but unicode emojis shown in picker 2020-11-27 10:26:06 +01:00
JC Brand
c002600ac5 Rename update_title setting to show_tab_notifications 2020-11-25 16:30:52 +01:00
JC Brand
fb316ff010 Styling: Remove line-break at end of blockquote
since the DOM element breaks the line already
2020-11-25 16:12:00 +01:00
JC Brand
f9650f33be Add support for XEP-0393 message styling
Fixes #1083

Directives are rendered as templates and their bodies are MessageText instances.
We thereby achieve the necessary nesting of directives (and other rich
elements inside directives) by letting each directive
body render itself similarly to how the whole message body is rendered.
2020-11-24 16:06:48 +01:00
JC Brand
7ae2b48da9 Move /me message tests to own file
Test mention inside a /me message
2020-11-24 16:06:48 +01:00
JC Brand
4e3a81d697 Fixes #2337
Newly opened headline chat isn't hidden by default in fullscreen view

Also include some CSS fixes for fullscreen headlines boxes
2020-11-19 13:20:02 +01:00
bernard-ng
08684a7c51 Fixes #2277 Show nickname conflict error 2020-11-18 11:23:46 +01:00
JC Brand
8a857e39f4 Move tab update to notification plugin
Updating tab notifications is not something that should be done in the headless part of Converse.
Don't update the tab title, having a favicon is enough.
2020-11-18 10:42:31 +01:00
Ariel Fuggini
6de07c5c29 Adds setting to toggle showing unread message counter in page title 2020-11-05 14:27:10 +01:00