* Change stage view and use newly reducedUImainToolbarButtons config to show different custom buttons as main toolbar buttons for when web is in reduced UI.
* Change toolbar background color from IFrame API #16468 fixed
* fix(toolbar #16468): implement toolbar background color via configOverwrite for web and mobile
* keep toolbarConfig defaults commented in config.js
* add trailing comma to commented toolbarConfig.backgroundColor
* fix: resolve linting errors
* feat(api): add toolbarVisibilityChanged event to IFrame API
* fix lint
* Change toolbar background color from IFrame API #16468 fixed
* fix(toolbar #16468): implement toolbar background color via configOverwrite for web and mobile
* keep toolbarConfig defaults commented in config.js
* add trailing comma to commented toolbarConfig.backgroundColor
* fix: resolve linting errors
Fixes#16468
Introduces a comprehensive disableChat config option that disables the entire chat feature including button visibility, notifications, sounds, private messages, and keyboard shortcuts. When disabled, the chat tab is hidden from the chat panel while allowing other tabs (polls, files, CC) to remain accessible.
Adds dedicated buttons for polls and file sharing in the toolbar overflow menu, following the pattern of the CC button. Both buttons open the chat panel with their respective tab selected when clicked.
Replaces hard-coded pixel values with relative rem units across UI components to improve typography responsiveness and maintainability.
Co-authored-by: Hristo Terezov <hristo@jitsi.org>
* This is a huge update, mostly because we updated Gradle on the Android side, which includes a more strict bundle process for third party modules. On iOS, even though new architecture is disabled, we had to be explicit about it because of this react native update and because some updated dependencies have it enabled by default and are using turbo modules which are not available, YET, in our project.
* feat(visitors): Allow participants pane button.
* feat(visitors): Do not count the local participant when in visitor mode.
* feat(visitors): Use same buttons on web and native.
* feat(visitors): Always show the visitors count.
It was shown only for the main participants.
* feat(visitors): Skips showing local in participants pane when visitor.
Currently the clientWidth is not representing the window width but it is representing the available video space width since we are subtracting the width of the participants pane and chat area.
When any of the backend is used 'anonymous', 'jitsi-anonymous', 'internal_hashed', 'internal_plain', 'cyrus' and a participant becomes a moderator, because of external module or because set from jicofo we send to client with the self-presence about becoming moderator a default set of permissions which can be controlled via prosody config.
If using 'token' authentication the above applies only if there is a token and the token does not contain context.features.
* feat(rn,screen-sharing) allow sharing the screen and camera on mobile
With the advancements in layer suspension it should now be ok to do.
Users can still mute the camera themselves if they so desire.
Having the camera enabled while in the background is a separate effort.
* feat(visitors): Transcriptions for visitors.
* squash: Fixes filter iq.
* feat: Rewrites room name requests in rayo iq for visitors.
* squash: Handles visitors count that request transcriptions and the languages requested.
* fix(subtitles): Make sure we show captions button when no features but is transcribing.
- Move the styles from css to tss-react ones
- Dynamic fontSize based on the visible area of the page
- Remove the gaps in the background when a line is wrapped.
- Change the text color to white.
- Remove transparency.
getJwtDisabledButtons which is used as a selector will create a new array every time it is called. This will lead to unneccessary rerenders on every action where there is no difference in the result of getJwtDisabledButtons because the reference of the array will be different.