* Implement disabling buttons (like Web had the ability).
* Use consistent colors (e.g. for the buttons) like the rest of the app
(e.g. WelcomePage).
* Enable AbstractDialog to await a thenable from onSubmit and Dialog to
render a LoadingIndicator in place of the OK/submit button text.
* Regardless of whether the SDK client/consumer employs
JitsiMeetActivity or JitsiMeetView, default to finishing the
associated Activity upon invoking the back button (which is what
Activity#onBackPressed() is documented to do).
* Do not break the public API of JitsiMeetView and, thus, Jitsi Meet SDK
for Android.
* feat(AddPeopleDialog): invite rooms
Distinguish between 'user' and 'videosipgw' search result items and
invite them with using different method.
* squash: fix typo in AddPeopleDialog.web.js
It will replace the "Join" text button while appNavigate lasts.
Note about the implementation: when appNavigate completes the component
may have been unmounted and thus we cannot touch its state. In order to
avoid this problem I added a 'mounted' instance variable which gets set
and reset in componentWillMount / Unmount respectively. This is to avoid
using isMounted, which is highly discouraged.
In order to support XMPP authentication, we'll need the message
accompanying the error and carried by lib-jitsi-meet's
CONFERENCE_FAILED in the redux store. We already carry the message in
the redux action and we've got the error in the redux store.
In order to accommodate the requirements of the work on supporting XMPP
authentication on mobile/react-native, make dealing with Dialog a
little more generic and a little easier.
Filmstrip only mode displays a device selection dialog that
does not have access to the redux/connect. However, the current
VideoTrack extends from AbstractVideoTrack, which assumes a
redux connection. The fix is to move video display logic into
a separate component and have device selection use that, while
the existing VideoTrack remains connected to redux but
uses the new video display component.
Don't require autofocus because that prevents the app from appearing in
Google Play Store for some devices.
Don't require camera for the same reason but also because camera/video
is not a mandatory feature of the app, it's merely likely very
desirable.
Instead of going through the Avatar object, call the getAvatarURL
directly so that the code flows consistently use the participant
representation within redux.
We broke external_api.min.js by importing react/features/util which
imported react/features/base/lib-jitsi-meet.
1. To reduce the risks of such a breakage until we add
external_api.min.js to the torture tests, import as little as
possible in modules/API/external/external_api.js.
2. Use the global JitsiMeetJS on Web in react/features/base/util.
JitsiMeetViewListener is an integral part of the public API of Jitsi
Meet SDK for Android. Utilize it in the Debug configuration of the Jitsi
Meet app for Android in order to increase (1) awareness of API breakages
and (2) API coverage.
The same goes for JitsiMeetViewDelegate in Jitsi Meet SDK and app for
iOS.