When newly joined clients register for XMPP events upon
CONFERENCE_JOINED, those events that is carried by presence (e.g. START_COMMAND) was
already fired.
Temporary solution is to let the client send a ping message after
registering XMPP event listeners. The moderator will respond with
pong, which forces the presence to be resent.
index.js of local recording
local-recording(ui): recording button
local-recording(encoding): flac support with libflac.js
Fixes in RecordingController; integration with UI
local-recording(controller): coordinate recording on different clients
local-recording(controller): allow recording on remote participants
local-recording(controller): global singleton
local-recording(controller): use middleware to init LocalRecording
cleanup and documentation in RecordingController
local-recording(refactor): "Delegate" -> "Adapter"
code style
stop eslint and flow from complaining
temp save: client status
fix linter issues
fix some docs; remove global LocalRecording instance
use node.js packaging for libflac.js; remove vendor/ folder
code style: flacEncodeWorker.js
use moment.js to do time diff
remove the use of console.log
code style: flac related files
remove excessive empty lines; and more docs
remove the use of clockTick for UI updates
initalize flacEncodeWorker properly, to avoid premature audio data transmission
move the realization of recordingController events
from LocalRecordingButton to middleware
i18n strings
minor markup changes in LocalRecordingInfoDialog
fix documentation
* feat: Displays the E2E RTT in the connection stats table.
* fix: Whitelists the ping config properties.
* ref: Addresses feedback.
* npm: Updates lib-jitsi-meet to e097a1189ed99838605d90b959e129155bc0e50a.
* ref: Moves the e2ertt and region to the existing stats object.
* feat(welcome-page): be able to open settings dialog
- Create a getter for getting a settings tab's props so the device
selection tab can get updated available devices.
- Be able to call a function from a tab after it has mounted. This is
used for device selection to essentially call enumerateDevices on
the welcome page so the device selectors are populated.
- Remove event UIEvents.AUDIO_OUTPUT_DEVICE_CHANGED. Instead directly call
setAudioOutputDeviceId where possible.
- Fix initialization of the audioOutputDeviceId in settings by defaulting
the audio output device to the one set in settings.
* squash: updateAvailableDevices -> getAvailableDevices, add comment for propsUpdateFunction
The JSC version used by React Native is about 3 years old, and doesn't implement
things like Symbol or Typed Arrays, which require polyfills. These polyfills are
sometimes a los less performant, as is the case for Typed Arrays.
Bumping an updated JSC version makes both platforms consistent when it comes to
the JavaScript platform.
Use react-native-fastimage, which uses 2 full-native image impleentations using
well known and mature (native) libraries.
This gets us rid of 2 libraries which were observerd as a source of bugs and
created trouble with dependencies: react-native-fetch-blob and
react-native-img-cache. They are also no longer well maintained.
There is no reason for them to run on the main thread, it's safe to call
AVFoundation functions on threads other than the main thread.
The previous code made an incorrect claim about the thread in which the audio
route change notification selector is called: it's called on a secondary thread:
https://developer.apple.com/documentation/avfoundation/avaudiosessionroutechangenotification
* ref(filmstrip): create an empty container for local filmstrip move
This might be necessary for tile view. To support making the
local video display at the end of remote videos while in tile
view, but separateed from scrollable remote videos, moving
the local video might be necessary. By creating an empty
container, there is a target for local video to move to.
* squash: rename id
* [WEB] add UI for transcription
* add analytics event for button, do not use global APP object
* use props instead of state, use local conference to kick participant
* put imports in alphabetical order
* add translation for TranscribingLabel
* fix merge conflict
* add closed caption button
* purge OverFlowMenuItem which starts and stops Transcription
* readd closed caption icon and fix small issues due to purge
* delete unused icon in _font.scss
* ref(filmstrip): apply filmstrip class to Conference root
Instead of apply the layout class to the body, it can be
applied to Conference. This will allow easier switching
between tile filmstrip and horizontal/vertical filmstrip.
* squash: fix typo filstrip
Move away from middleware and instead update video quality
when the selected video quality updates in redux. This also
lead to removing of automatically exiting audio only because
with the change it's not so readily possible to tell if the
user switched off audio only by re-selecting the already
preferred video quality. Removing this automagic removed
some additional checking done for mobile.
The internal max will be used for tile view. Whatever the
user has set for preferred video quality, the internal
maximum will be respected. This allows for the case where
the user prefers high definition video, but in tile view
it only makes sense to send low definition; ux wise the
user is allowed to continue messing with the video quality
slider.
- "preferred" is being appended because in tile view there is a
concept of what the user prefers to be the maximum video quality
but there is also a maximum respected internall. For example,
the user may prefer HD, but in tile view the tiles may be small
so internall the preferred would be set to LD.
- "receive" is being renamed to "receiver" to be consistent with
the naming in lib-jitsi-meet.
* Get back the Notice class
* Add Notice component in the Conference web view
* Notice is not exported in index.js. Only used internally by
Conference.
* noticeMessage value obtained from features/base/config
* using mapStateToProps
* value is stored in the internal _message property
* Notice component, orignal in `toolbox` is moved from
`toolbox/components` to `conference/components`
* Notice component only implemented and renderable in web views
* Dummy `conference/components/Notice.naive.js`
This patch is partially based in the removed logic included
originally in:
commit 59a74153dc
(tag: jitsi-meet_1886, tag: jitsi-meet_1885, tag: 1797, tag: 1796)
Author: Ilya Daynatovich <shupuercha@gmail.com>
Date: Mon Mar 20 11:04:54 2017 -0500
Toolbar notice as React Component
In reply to: Saúl Ibarra Corretgé @saghul> comments
Signed-off-by: Pablo Saavedra <psaavedra@igalia.com>
* ref(popover): allow for popover content from the right
Popovers contents can display to the left of the trigger
and above the trigger. Add the ability to display to the
right of the trigger my adding mouseover padding. This
may be needed for tile view, depending on where the triggers
are located.
* squash: abstract common css proprties into placeholder class