1. Add a new `view_mode` value: `embedded`.
This value is used to determine wether the `converse-muc-embedded`
plugin is active or not.
2. Remove the need for the #converse-embedded-chat element.
Instead we reuse the #conversejs element and embed inside that.
3. Removed the need to manually blacklist core plugins
This is now done automatically if `view_mode` is set to `embedded`.
Perhaps eventually we don't blacklist at all and instead use the
`enable` plugin method. For some that probably won't work, like
`converse-chatview`, which we still need to be active.
Setting it on `window` is necessary to have it available inside a
webcomponent.
Triggering an event is necessary so that we don't call
`converse.initialize` too early.
- Use `enabled` method for plugins
- Rename `converse-inverse.js` to `converse-fullscreen.js` and make it a
core plugin.
- We're no longer making separate mobile and inverse builds
No longer a need to whitelist/blacklist plugins for inverse to work.
* Update localisation/translation documentation due to recent changes.
* Remove `moment_locales.js` and instead load the moment locales in `src/i18n.js`
* Mention how to load the fullscreen version. Refs #939
From the perspective of the XMPP server, this is an entirely new login,
and therefore as per RFC-6121 the roster SHOULD be queried, making the
client an "interested resource".
https://tools.ietf.org/html/rfc6121#section-2
* Check if `Backbone.history.start()` has been called before.
* Only call it after routes have been registered.
* Use route for switching between login and register forms
We can now simply call `render` whenever we want to show an error or
notification message.
The flip side is that the template is now larger and contains more login.
Somehow the tests are flaky when the router sets a URL fragment for login or
registration, so I've now added an event handler which does the work without
setting the URL fragment.
The router is still there so that one can manually link to a URL that has the
registration form open. (Issue #828)