Commit Graph

24 Commits

Author SHA1 Message Date
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
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
dd609c1cec Get the webpack dev server to work again
This required triggering the `converse-loaded` event in the entry.js
file, which means it won't be triggered for `@converse/headless` when
used in isolation.

Not ideal, but probably ok because consumers of `@converse/headless`
should probably import it into their own project in any case.
2021-05-06 12:07:44 +02:00
JC Brand
3d58b67517 Use @converse/openpromise 2021-04-28 18:35:08 +02:00
JC Brand
f7432672e4 Fix key in vcard mock data 2021-04-22 14:51:33 +02:00
JC Brand
3558936b46 Refactor message component to require less attributes 2021-04-16 13:11:30 +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
9ce4092a7c Turn the bottom panel into a custom element 2021-02-12 14:32:55 +01:00
JC Brand
f33fa1e9fc Fix more tests 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
be9016a081 Fix switching between login and register panels 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
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
1a161ad2c7 Add api for managing modals
Set passed-in properties on modal
2020-12-03 11:36:02 +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
JC Brand
19dc66900d Split the trusted setting into two new ones:
- `allow_user_trust_override`
- `clear_cache_on_logout`

The `persistent_store` setting can now also be set to `sessionStorage`

The `trusted` settings was in effect playing the role of two separate settings
and implicitly affecting a third ('persistent_store').

By breaking it up, we make things more explicit and allow for new
configurations. For example, clearing the cache on logout, while using
some kind of persistent store.
2020-10-20 11:29:03 +02:00
JC Brand
0ca2e5ae08 Remove need for lodash templates in headless build 2020-09-26 09:58:34 +02:00
JC Brand
16ca8044f8 Add experimental support for running the XMPP conneciton inside a shared worker
Still lacks inter-tab communication to update state across tabs, i.e.
when sending a 1-on-1 message in one tab, it doesn't appear in another,
because that information is not available via the websocket connection.

- Create a new `Connection` class that extends Strophe.Connection and
    move related code from `converse-core.js` into this class.
- Store the session in localStorage when using a worker
- Move XEP-0156 code to connection.js
    This allows us to initialize the connection without needing to know the
    domain.
2020-07-27 12:43:47 +02:00
JC Brand
0da8067129 MAM: Fix a MUC timing issue.
If a message comes in after joining the MUC but before the MAM messages
have been fetched, then converse-mam will query for MAM messages newer
than that message, causing an empty history (except for that one message).
2020-07-14 22:41:26 +02:00
JC Brand
5a57ded243 Add support for the XEP-0333 displayed chat marker
Credit for this work goes to @deleolajide
2020-06-01 18:01:02 +02:00
JC Brand
ac36adddfe Re-add support for a new messages indicator
Fixes #2040
2020-06-01 16:52:12 +02:00
JC Brand
7651d58470 Render chat messages as web components
- Render chat content as a <converse-chat-content> component
- Create new component for rendering the message body
- Get rid of `showMessage` method
2020-06-01 09:53:19 +02:00
JC Brand
0c5593ed75 Various smaller fixes
- Fix failing tests.
- Bump timeout for emoji tests
- Remove unused files.
- Update features section.
2020-04-28 10:42:20 +02:00