diff options
Diffstat (limited to 'app')
-rw-r--r-- | app/features/conference/components/Conference.js | 124 | ||||
-rw-r--r-- | app/features/onboarding/constants.js | 31 | ||||
-rw-r--r-- | app/features/settings/actionTypes.js | 40 | ||||
-rw-r--r-- | app/features/settings/actions.js | 70 | ||||
-rw-r--r-- | app/features/settings/components/SettingsDrawer.js | 165 | ||||
-rw-r--r-- | app/features/settings/reducer.js | 44 | ||||
-rw-r--r-- | app/i18n/lang/de.json | 8 | ||||
-rw-r--r-- | app/i18n/lang/en.json | 8 | ||||
-rw-r--r-- | app/i18n/lang/es.json | 8 | ||||
-rw-r--r-- | app/i18n/lang/fr.json | 8 | ||||
-rw-r--r-- | app/i18n/lang/gl.json | 8 | ||||
-rw-r--r-- | app/i18n/lang/hu.json | 8 | ||||
-rw-r--r-- | app/i18n/lang/it.json | 8 | ||||
-rw-r--r-- | app/i18n/lang/nl.json | 8 | ||||
-rw-r--r-- | app/i18n/lang/pt-br.json | 8 | ||||
-rw-r--r-- | app/i18n/lang/ru.json | 8 | ||||
-rw-r--r-- | app/i18n/lang/sq.json | 8 | ||||
-rw-r--r-- | app/preload/preload.js | 2 |
18 files changed, 34 insertions, 530 deletions
diff --git a/app/features/conference/components/Conference.js b/app/features/conference/components/Conference.js index 6d88116..cf7a2e2 100644 --- a/app/features/conference/components/Conference.js +++ b/app/features/conference/components/Conference.js @@ -9,7 +9,7 @@ import { push } from 'react-router-redux'; import i18n from '../../../i18n'; import config from '../../config'; -import { getSetting, setEmail, setName } from '../../settings'; +import { getSetting } from '../../settings'; import { conferenceEnded, conferenceJoined } from '../actions'; import JitsiMeetExternalAPI from '../external_api'; @@ -40,16 +40,6 @@ type Props = { _disableAGC: boolean; /** - * Email of user. - */ - _email: string; - - /** - * Name of user. - */ - _name: string; - - /** * Default Jitsi Server URL. */ _serverURL: string; @@ -58,16 +48,6 @@ type Props = { * Default Jitsi Server Timeout. */ _serverTimeout: number; - - /** - * Start with Audio Muted. - */ - _startWithAudioMuted: boolean; - - /** - * Start with Video Muted. - */ - _startWithVideoMuted: boolean; }; type State = { @@ -155,23 +135,6 @@ class Conference extends Component<Props, State> { } /** - * Keep profile settings in sync with Conference. - * - * @param {Props} prevProps - Component's prop values before update. - * @returns {void} - */ - componentDidUpdate(prevProps) { - const { props } = this; - - if (props._email !== prevProps._email) { - this._setEmail(props._email); - } - if (props._name !== prevProps._name) { - this._setName(props._name); - } - } - - /** * Remove conference on unmounting. * * @returns {void} @@ -224,10 +187,16 @@ class Conference extends Component<Props, State> { ...locale }; + // override both old and new prejoin config options, + // old one for servers that do not understand the new option yet + // and new one for newly setup servers where the new option overrides + // the old if set. const configOverwrite = { disableAGC: this.props._disableAGC, - startWithAudioMuted: this.props._startWithAudioMuted, - startWithVideoMuted: this.props._startWithVideoMuted + prejoinPageEnabled: true, + prejoinConfig: { + enabled: true + } }; Object.entries(hashParameters).forEach(([ key, value ]) => { @@ -254,9 +223,8 @@ class Conference extends Component<Props, State> { this._api.on('suspendDetected', this._onVideoConferenceEnded); this._api.on('readyToClose', this._onVideoConferenceEnded); this._api.on('videoConferenceJoined', - (conferenceInfo: Object) => { + () => { this.props.dispatch(conferenceJoined(this._conference)); - this._onVideoConferenceJoined(conferenceInfo); } ); @@ -336,32 +304,6 @@ class Conference extends Component<Props, State> { this._navigateToHome(event); } - /** - * Updates redux state's user name from conference. - * - * @param {Object} params - Returned object from event. - * @param {string} id - Local Participant ID. - * @returns {void} - */ - _onDisplayNameChange(params: Object, id: string) { - if (params.id === id) { - this.props.dispatch(setName(params.displayname)); - } - } - - /** - * Updates redux state's email from conference. - * - * @param {Object} params - Returned object from event. - * @param {string} id - Local Participant ID. - * @returns {void} - */ - _onEmailChange(params: Object, id: string) { - if (params.id === id) { - this.props.dispatch(setEmail(params.email)); - } - } - _onIframeLoad: (*) => void; /** @@ -379,46 +321,6 @@ class Conference extends Component<Props, State> { isLoading: false }); } - - /** - * Saves conference info on joining it. - * - * @param {Object} conferenceInfo - Contains information about the current - * conference. - * @returns {void} - */ - _onVideoConferenceJoined(conferenceInfo: Object) { - this._setEmail(this.props._email); - this._setName(this.props._name); - - const { id } = conferenceInfo; - - this._api.on('displayNameChange', - (params: Object) => this._onDisplayNameChange(params, id)); - this._api.on('emailChange', - (params: Object) => this._onEmailChange(params, id)); - } - - /** - * Set email from settings to conference. - * - * @param {string} email - Email of user. - * @returns {void} - */ - _setEmail(email: string) { - this._api.executeCommand('email', email); - } - - /** - * Set name from settings to conference. - * - * @param {string} name - Name of user. - * @returns {void} - */ - _setName(name: string) { - this._api.executeCommand('displayName', name); - } - } /** @@ -431,12 +333,8 @@ function _mapStateToProps(state: Object) { return { _alwaysOnTopWindowEnabled: getSetting(state, 'alwaysOnTopWindowEnabled', true), _disableAGC: state.settings.disableAGC, - _email: state.settings.email, - _name: state.settings.name, _serverURL: state.settings.serverURL, - _serverTimeout: state.settings.serverTimeout, - _startWithAudioMuted: state.settings.startWithAudioMuted, - _startWithVideoMuted: state.settings.startWithVideoMuted + _serverTimeout: state.settings.serverTimeout }; } diff --git a/app/features/onboarding/constants.js b/app/features/onboarding/constants.js index 7b971f3..2e11500 100644 --- a/app/features/onboarding/constants.js +++ b/app/features/onboarding/constants.js @@ -3,12 +3,6 @@ import { OnboardingModal, OnboardingSpotlight } from './components'; import { openDrawer, closeDrawer } from '../navbar'; import { SettingsDrawer } from '../settings'; -export const advenaceSettingsSteps = [ - 'server-setting', - 'server-timeout', - 'always-on-top-window' -]; - export const onboardingSteps = { 'welcome-page': [ 'onboarding-modal', @@ -16,10 +10,9 @@ export const onboardingSteps = { 'settings-drawer-button' ], 'settings-drawer': [ - 'name-setting', - 'email-setting', - 'start-muted-toggles', - ...advenaceSettingsSteps + 'server-setting', + 'server-timeout', + 'always-on-top-window' ] }; @@ -38,24 +31,6 @@ export const onboardingComponents = { text: 'onboarding.settingsDrawerButton', onNext: (props: OnboardingSpotlight.props) => props.dispatch(openDrawer(SettingsDrawer)) }, - 'name-setting': { - type: OnboardingSpotlight, - dialogPlacement: 'top right', - target: 'name-setting', - text: 'onboarding.nameSetting' - }, - 'email-setting': { - type: OnboardingSpotlight, - dialogPlacement: 'top right', - target: 'email-setting', - text: 'onboarding.emailSetting' - }, - 'start-muted-toggles': { - type: OnboardingSpotlight, - dialogPlacement: 'top right', - target: 'start-muted-toggles', - text: 'onboarding.startMutedToggles' - }, 'server-setting': { type: OnboardingSpotlight, dialogPlacement: 'top right', diff --git a/app/features/settings/actionTypes.js b/app/features/settings/actionTypes.js index 4fc7ac5..a9b1a73 100644 --- a/app/features/settings/actionTypes.js +++ b/app/features/settings/actionTypes.js @@ -10,16 +10,6 @@ export const SET_ALWAYS_ON_TOP_WINDOW_ENABLED = Symbol('SET_ALWAYS_ON_TOP_WINDOW_ENABLED'); /** - * The type of (redux) action that sets Start with Audio Muted. - * - * @type { - * type: SET_AUDIO_MUTED, - * startWithAudioMuted: boolean - * } - */ -export const SET_AUDIO_MUTED = Symbol('SET_AUDIO_MUTED'); - -/** * The type of (redux) action that sets disable AGC. * * @type { @@ -30,26 +20,6 @@ export const SET_AUDIO_MUTED = Symbol('SET_AUDIO_MUTED'); export const SET_DISABLE_AGC = Symbol('SET_DISABLE_AGC'); /** - * The type of (redux) action that sets the email of the user. - * - * @type { - * type: SET_EMAIL, - * email: string - * } - */ -export const SET_EMAIL = Symbol('SET_EMAIL'); - -/** - * The type of (redux) action that sets the name of the user. - * - * @type { - * type: SET_NAME, - * name: string - * } - */ -export const SET_NAME = Symbol('SET_NAME'); - -/** * The type of (redux) action that sets the Server URL. * * @type { @@ -68,13 +38,3 @@ export const SET_SERVER_URL = Symbol('SET_SERVER_URL'); * } */ export const SET_SERVER_TIMEOUT = Symbol('SET_SERVER_TIMEOUT'); - -/** - * The type of (redux) action that sets Start with Video Muted. - * - * @type { - * type: SET_VIDEO_MUTED, - * startWithVideoMuted: boolean - * } - */ -export const SET_VIDEO_MUTED = Symbol('SET_VIDEO_MUTED'); diff --git a/app/features/settings/actions.js b/app/features/settings/actions.js index 8b94cf7..1c437f1 100644 --- a/app/features/settings/actions.js +++ b/app/features/settings/actions.js @@ -2,50 +2,14 @@ import { SET_ALWAYS_ON_TOP_WINDOW_ENABLED, - SET_AUDIO_MUTED, SET_DISABLE_AGC, - SET_EMAIL, - SET_NAME, SET_SERVER_URL, - SET_SERVER_TIMEOUT, - SET_VIDEO_MUTED + SET_SERVER_TIMEOUT } from './actionTypes'; import { normalizeServerURL } from '../utils'; /** - * Set the email of the user. - * - * @param {string} email - Email of the user. - * @returns {{ - * type: SET_EMAIL, - * email: string - * }} - */ -export function setEmail(email: string) { - return { - type: SET_EMAIL, - email - }; -} - -/** - * Set the name of the user. - * - * @param {string} name - Name of the user. - * @returns {{ - * type: SET_NAME, - * name: string - * }} - */ -export function setName(name: string) { - return { - type: SET_NAME, - name - }; -} - -/** * Set Server URL. * * @param {string} serverURL - Server URL. @@ -78,38 +42,6 @@ export function setServerTimeout(serverTimeout: number) { } /** - * Set start with audio muted. - * - * @param {boolean} startWithAudioMuted - Whether to start with audio muted. - * @returns {{ - * type: SET_AUDIO_MUTED, - * startWithAudioMuted: boolean - * }} - */ -export function setStartWithAudioMuted(startWithAudioMuted: boolean) { - return { - type: SET_AUDIO_MUTED, - startWithAudioMuted - }; -} - -/** - * Set start with video muted. - * - * @param {boolean} startWithVideoMuted - Whether to start with video muted. - * @returns {{ - * type: SET_VIDEO_MUTED, - * startWithVideoMuted: boolean - * }} - */ -export function setStartWithVideoMuted(startWithVideoMuted: boolean) { - return { - type: SET_VIDEO_MUTED, - startWithVideoMuted - }; -} - -/** * Set disable AGC. * * @param {boolean} disableAGC - Whether to disable AGC. diff --git a/app/features/settings/components/SettingsDrawer.js b/app/features/settings/components/SettingsDrawer.js index 79ed1da..4622b3f 100644 --- a/app/features/settings/components/SettingsDrawer.js +++ b/app/features/settings/components/SettingsDrawer.js @@ -1,10 +1,8 @@ // @flow -import FieldText from '@atlaskit/field-text'; import ArrowLeft from '@atlaskit/icon/glyph/arrow-left'; import { AkCustomDrawer } from '@atlaskit/navigation'; import { SpotlightTarget } from '@atlaskit/onboarding'; -import Panel from '@atlaskit/panel'; import React, { Component } from 'react'; import { withTranslation } from 'react-i18next'; @@ -13,11 +11,10 @@ import type { Dispatch } from 'redux'; import { compose } from 'redux'; import { closeDrawer, DrawerContainer, Logo } from '../../navbar'; -import { Onboarding, advenaceSettingsSteps, startOnboarding } from '../../onboarding'; -import { Form, SettingsContainer, TogglesContainer } from '../styled'; +import { Onboarding, startOnboarding } from '../../onboarding'; +import { SettingsContainer, TogglesContainer } from '../styled'; import { - setEmail, setName, setWindowAlwaysOnTop, - setStartWithAudioMuted, setStartWithVideoMuted, setDisableAGC + setWindowAlwaysOnTop, setDisableAGC } from '../actions'; import SettingToggle from './SettingToggle'; @@ -37,21 +34,6 @@ type Props = { isOpen: boolean; /** - * Email of the user. - */ - _email: string; - - /** - * Whether onboarding is active or not. - */ - _isOnboardingAdvancedSettings: boolean, - - /** - * Name of the user. - */ - _name: string; - - /** * I18next translation function. */ t: Function; @@ -70,10 +52,6 @@ class SettingsDrawer extends Component<Props, *> { super(props); this._onBackButton = this._onBackButton.bind(this); - this._onEmailBlur = this._onEmailBlur.bind(this); - this._onEmailFormSubmit = this._onEmailFormSubmit.bind(this); - this._onNameBlur = this._onNameBlur.bind(this); - this._onNameFormSubmit = this._onNameFormSubmit.bind(this); } /** @@ -111,64 +89,25 @@ class SettingsDrawer extends Component<Props, *> { primaryIcon = { <Logo /> } > <DrawerContainer> <SettingsContainer> - <SpotlightTarget - name = 'name-setting'> - <Form onSubmit = { this._onNameFormSubmit }> - <FieldText - label = { t('settings.name') } - onBlur = { this._onNameBlur } - shouldFitContainer = { true } - type = 'text' - value = { this.props._name } /> - </Form> + <SpotlightTarget name = 'server-setting'> + <ServerURLField /> </SpotlightTarget> - <SpotlightTarget - name = 'email-setting'> - <Form onSubmit = { this._onEmailFormSubmit }> - <FieldText - label = { t('settings.email') } - onBlur = { this._onEmailBlur } - shouldFitContainer = { true } - type = 'text' - value = { this.props._email } /> - </Form> + <SpotlightTarget name = 'server-timeout'> + <ServerTimeoutField /> </SpotlightTarget> <TogglesContainer> <SpotlightTarget - name = 'start-muted-toggles'> + name = 'always-on-top-window'> <SettingToggle - label = { t('settings.startWithAudioMuted') } - settingChangeEvent = { setStartWithAudioMuted } - settingName = 'startWithAudioMuted' /> - <SettingToggle - label = { t('settings.startWithVideoMuted') } - settingChangeEvent = { setStartWithVideoMuted } - settingName = 'startWithVideoMuted' /> + label = { t('settings.alwaysOnTopWindow') } + settingChangeEvent = { setWindowAlwaysOnTop } + settingName = 'alwaysOnTopWindowEnabled' /> </SpotlightTarget> + <SettingToggle + label = { t('settings.disableAGC') } + settingChangeEvent = { setDisableAGC } + settingName = 'disableAGC' /> </TogglesContainer> - <Panel - header = { t('settings.advancedSettings') } - isDefaultExpanded = { this.props._isOnboardingAdvancedSettings }> - <SpotlightTarget name = 'server-setting'> - <ServerURLField /> - </SpotlightTarget> - <SpotlightTarget name = 'server-timeout'> - <ServerTimeoutField /> - </SpotlightTarget> - <TogglesContainer> - <SpotlightTarget - name = 'always-on-top-window'> - <SettingToggle - label = { t('settings.alwaysOnTopWindow') } - settingChangeEvent = { setWindowAlwaysOnTop } - settingName = 'alwaysOnTopWindowEnabled' /> - </SpotlightTarget> - <SettingToggle - label = { t('settings.disableAGC') } - settingChangeEvent = { setDisableAGC } - settingName = 'disableAGC' /> - </TogglesContainer> - </Panel> <Onboarding section = 'settings-drawer' /> </SettingsContainer> </DrawerContainer> @@ -187,78 +126,6 @@ class SettingsDrawer extends Component<Props, *> { _onBackButton() { this.props.dispatch(closeDrawer()); } - - _onEmailBlur: (*) => void; - - /** - * Updates email in (redux) state when email is updated. - * - * @param {SyntheticInputEvent<HTMLInputElement>} event - Event by which - * this function is called. - * @returns {void} - */ - _onEmailBlur(event: SyntheticInputEvent<HTMLInputElement>) { - this.props.dispatch(setEmail(event.currentTarget.value)); - } - - _onEmailFormSubmit: (*) => void; - - /** - * Prevents submission of the form and updates email. - * - * @param {SyntheticEvent<HTMLFormElement>} event - Event by which - * this function is called. - * @returns {void} - */ - _onEmailFormSubmit(event: SyntheticEvent<HTMLFormElement>) { - event.preventDefault(); - - // $FlowFixMe - this.props.dispatch(setEmail(event.currentTarget.elements[0].value)); - } - - _onNameBlur: (*) => void; - - /** - * Updates name in (redux) state when name is updated. - * - * @param {SyntheticInputEvent<HTMLInputElement>} event - Event by which - * this function is called. - * @returns {void} - */ - _onNameBlur(event: SyntheticInputEvent<HTMLInputElement>) { - this.props.dispatch(setName(event.currentTarget.value)); - } - - _onNameFormSubmit: (*) => void; - - /** - * Prevents submission of the form and updates name. - * - * @param {SyntheticEvent<HTMLFormElement>} event - Event by which - * this function is called. - * @returns {void} - */ - _onNameFormSubmit(event: SyntheticEvent<HTMLFormElement>) { - event.preventDefault(); - - // $FlowFixMe - this.props.dispatch(setName(event.currentTarget.elements[0].value)); - } -} - -/** - * Maps (parts of) the redux state to the React props. - * - * @param {Object} state - The redux state. - * @returns {Props} - */ -function _mapStateToProps(state: Object) { - return { - _email: state.settings.email, - _isOnboardingAdvancedSettings: !advenaceSettingsSteps.every(i => state.onboarding.onboardingShown.includes(i)), - _name: state.settings.name - }; } -export default compose(connect(_mapStateToProps), withTranslation())(SettingsDrawer); +export default compose(connect(), withTranslation())(SettingsDrawer); diff --git a/app/features/settings/reducer.js b/app/features/settings/reducer.js index cb9afec..7c99241 100644 --- a/app/features/settings/reducer.js +++ b/app/features/settings/reducer.js @@ -2,37 +2,23 @@ import { SET_ALWAYS_ON_TOP_WINDOW_ENABLED, - SET_AUDIO_MUTED, SET_DISABLE_AGC, - SET_EMAIL, - SET_NAME, SET_SERVER_URL, - SET_SERVER_TIMEOUT, - SET_VIDEO_MUTED + SET_SERVER_TIMEOUT } from './actionTypes'; type State = { alwaysOnTopWindowEnabled: boolean, disableAGC: boolean, - email: string, - name: string, serverURL: ?string, - serverTimeout: ?number, - startWithAudioMuted: boolean, - startWithVideoMuted: boolean + serverTimeout: ?number }; -const username = window.jitsiNodeAPI.osUserInfo().username; - const DEFAULT_STATE = { alwaysOnTopWindowEnabled: true, disableAGC: false, - email: '', - name: username, serverURL: undefined, - serverTimeout: undefined, - startWithAudioMuted: false, - startWithVideoMuted: false + serverTimeout: undefined }; /** @@ -50,30 +36,12 @@ export default (state: State = DEFAULT_STATE, action: Object) => { alwaysOnTopWindowEnabled: action.alwaysOnTopWindowEnabled }; - case SET_AUDIO_MUTED: - return { - ...state, - startWithAudioMuted: action.startWithAudioMuted - }; - case SET_DISABLE_AGC: return { ...state, disableAGC: action.disableAGC }; - case SET_EMAIL: - return { - ...state, - email: action.email - }; - - case SET_NAME: - return { - ...state, - name: action.name - }; - case SET_SERVER_URL: return { ...state, @@ -86,12 +54,6 @@ export default (state: State = DEFAULT_STATE, action: Object) => { serverTimeout: action.serverTimeout }; - case SET_VIDEO_MUTED: - return { - ...state, - startWithVideoMuted: action.startWithVideoMuted - }; - default: return state; } diff --git a/app/i18n/lang/de.json b/app/i18n/lang/de.json index 8466d8a..4f453d9 100644 --- a/app/i18n/lang/de.json +++ b/app/i18n/lang/de.json @@ -17,21 +17,13 @@ "next": "Weiter", "conferenceUrl": "Bitte den Namen (oder die vollständige Adresse) des Raumes eingeben, dem beigetreten werden soll. Es kann ein Name ausgedacht werden, diesen bitte anderen mitteilen, damit sie denselben Namen eingeben.", "settingsDrawerButton": "Hier klicken, um zu den Einstellungen zu gelangen.", - "nameSetting": "Das ist der Anzeigename, andere werden Sie unter diesem Namen sehen.", - "emailSetting": "Die hier eingegebene E-Mail ist Teil des Benutzerprofils.", - "startMutedToggles": "Hier kann eingestellt werden, ob mit stummgeschaltetem Audio oder Video gestartet wird. Das wird auf alle Konferenzen angewendet.", "serverSetting": "Das ist der Server, auf dem die Konferenzen stattfinden werden. Es kann ein eigener verwendet werden, muss aber nicht!", "serverTimeout": "Zeitüberschreitung für den Beitritt zu einer Konferenz. Wenn nicht rechtzeitig beigetreten wurde, wird die Konferenz abgebrochen.", "alwaysOnTop": "Hier kann eingestellt werden, ob das Fenster »Immer im Vordergrund« aktiviert wird. Dieses wird angezeigt, wenn das Hauptfenster den Fokus verliert. Das wird bei allen Konferenzen angewendet." }, "settings": { "back": "Zurück", - "name": "Name", - "email": "E-Mail", - "advancedSettings": "Erweiterte Einstellungen", "alwaysOnTopWindow": "Immer im Vordergrund", - "startWithAudioMuted": "Ohne Audio starten", - "startWithVideoMuted": "Ohne Video starten", "invalidServer": "Falsche Server-Adresse", "invalidServerTimeout": "Ungültiger Wert für die Server-Wartezeit", "serverUrl": "Server-Adresse", diff --git a/app/i18n/lang/en.json b/app/i18n/lang/en.json index 7752e56..b41d2eb 100644 --- a/app/i18n/lang/en.json +++ b/app/i18n/lang/en.json @@ -17,21 +17,13 @@ "next": "Next", "conferenceUrl": "Enter the name (or full URL) of the room you want to join. You may make a name up, just let others know so they enter the same name.", "settingsDrawerButton": "Click here to open the settings drawer.", - "nameSetting": "This will be your display name, others will see you with this name.", - "emailSetting": "The email you enter here will be part of your user profile.", - "startMutedToggles": "You can toggle if you want to start with your audio or video muted here. This will be applied to all conferences.", "serverSetting": "This will be the server where your conferences will take place. You can use your own, but you don't need to!", "serverTimeout": "Timeout to join a meeting, if the meeting hasn't been joined before the timeout hits, it's cancelled.", "alwaysOnTop": "You can toggle whether you want to enable the \"always-on-top\" window, which is displayed when the main window loses focus. This will be applied to all conferences." }, "settings": { "back": "Back", - "name": "Name", - "email": "Email", - "advancedSettings": "Advanced Settings", "alwaysOnTopWindow": "Always on Top Window", - "startWithAudioMuted": "Start with Audio muted", - "startWithVideoMuted": "Start with Video muted", "invalidServer": "Invalid Server URL", "invalidServerTimeout": "Invalid value for Server Timeout", "serverUrl": "Server URL", diff --git a/app/i18n/lang/es.json b/app/i18n/lang/es.json index cea54bc..62df76d 100644 --- a/app/i18n/lang/es.json +++ b/app/i18n/lang/es.json @@ -16,21 +16,13 @@ "next": "Siguiente", "conferenceUrl": "Ingrese el nombre (o URL completo) de la sala a que se quiera unir. Puede inventar el nombre, solo informe a otros para que ellos usen el mismo nombre.", "settingsDrawerButton": "Click aquí para abrir la opción de configuración.", - "nameSetting": "Este será su nombre mostrado, otros lo verán con este nombre.", - "emailSetting": "El correo electrónico que ingrese será parte de su perfil.", - "startMutedToggles": "Puede seleccionar aquí si desea iniciar con audio o video desactivado. Esto será aplicado a todas las conferencias.", "serverSetting": "Este será el servidor donde sus conferencias tomarán lugar. Puede usar el suyo, ¡pero no necesita!", "serverTimeout": "Tiempo de desconexión, si nadie se une a la reunión antes del tiempo de desconexión termina, esta se cancela.", "alwaysOnTop": "Puede seleccionar si desea activar la ventana \"siempre-encima\", la que se muestra cuando la ventana principal pierde enfoque. Esto será aplicado a todas las conferencias." }, "settings": { "back": "Atrás", - "name": "Nombre", - "email": "Correo", - "advancedSettings": "Configuración avanzada", "alwaysOnTopWindow": "Ventana siempre encima", - "startWithAudioMuted": "Iniciar con audio desactivado", - "startWithVideoMuted": "Iniciar con video desactivado", "invalidServer": "URL del servidor inválida", "serverUrl": "URL del servidor", "serverTimeout": "Tiempo de desconexión del servidor (en segundos)" diff --git a/app/i18n/lang/fr.json b/app/i18n/lang/fr.json index e1c91ca..538a8dc 100644 --- a/app/i18n/lang/fr.json +++ b/app/i18n/lang/fr.json @@ -16,21 +16,13 @@ "next": "Suivant", "conferenceUrl": "Entrez le nom (ou l'URL complète) de la conférence que vous souhaitez rejoindre. Vous pouvez choisir ce que vous voulez, dites simplement à vos contacts d'utiliser le même nom.", "settingsDrawerButton": "Cliquez içi pour ouvrir le panneau de configuration.", - "nameSetting": "Ceçi est votre nom, les participants vous verrons avec celui çi.", - "emailSetting": "L'email que vous entrez içi fera partie de votre profil utilisateur.", - "startMutedToggles": "Vous pouvez choisir de démarrer vos conférences avec l'audio et la vidéo désactivés. Ceci sera appliqué à toutes les conférences.", "serverSetting": "Ceçi est le serveur utilisé pour vos conférences. Vous pouvez utiliser le votre, mais vous n'êtes pas obligés!", "serverTimeout": "Delai pour rejoindre la conférence. Si la conférence ne s'est pas ouverte avant ce delai, elle sera abandonnée.", "alwaysOnTop": "Vous pouvez activer la fenêtre \"Toujours au Dessus\", qui sera affichée quand la fenêtre principale n'est plus en premier plan. Ceci sera appliqué à toutes les conférences.." }, "settings": { "back": "Retour", - "name": "Nom", - "email": "Email", - "advancedSettings": "Paramètres avancés", "alwaysOnTopWindow": "Fenêtre Toujours au Dessus", - "startWithAudioMuted": "Démarrer avec le micro coupé", - "startWithVideoMuted": "Démarrer avec la caméra coupée", "invalidServer": "URL invalide", "serverUrl": "URL du serveur", "serverTimeout": "Délai de connexion au server (en secondes)" diff --git a/app/i18n/lang/gl.json b/app/i18n/lang/gl.json index b0b64a5..ba1d669 100644 --- a/app/i18n/lang/gl.json +++ b/app/i18n/lang/gl.json @@ -16,21 +16,13 @@ "next": "Seguinte", "conferenceUrl": "Introduza o nome (ou URL completo) da sala á que desexa sumarse. Pode dar de alta un nome e permitir que a xente coa que se reúne o saiba para que introduzan o mesmo nome.", "settingsDrawerButton": "Prema aquí para abrir a gabeta de configuración.", - "nameSetting": "Este será o seu nome e será con el que apareza diante das demais persoas.", - "emailSetting": "O correo electrónico que apareza aquí será parte do seu perfil de usuario.", - "startMutedToggles": "Aquí pode alternar entre comezar co son ou co vídeo desactivados. Isto será aplicábel a todas as conferencias.", "serverSetting": "Este será o servidor no que se leven a cabo as súas conferencias. Pode usar unha propia, mais non ten por que o facer!", "serverTimeout": "Tempo de agarda para se sumar a unha reunión; se non se sumou antes de que remate, cancélase.", "alwaysOnTop": "Pode alternar entre activar e desactivar a xanela «sempre por riba», que se mostra cando a xanela principal perde o foco. Isto é aplicábel a todas as conferencias." }, "settings": { "back": "Atrás", - "name": "Nome", - "email": "Correo electrónico", - "advancedSettings": "Configuración avanzada", "alwaysOnTopWindow": "Xanela sempre por riba", - "startWithAudioMuted": "Comezar co son desactivado", - "startWithVideoMuted": "Comezar co vídeo desactivado", "invalidServer": "O URL do servidor é incorrecto", "invalidServerTimeout": "O tempo de agarda do servidor é incorrecto", "serverUrl": "URL do servidor", diff --git a/app/i18n/lang/hu.json b/app/i18n/lang/hu.json index 355648b..bb0d20e 100644 --- a/app/i18n/lang/hu.json +++ b/app/i18n/lang/hu.json @@ -17,21 +17,13 @@ "next": "Következő", "conferenceUrl": "Írja be a csatlakozni kívánt szoba nevét (vagy teljes URL-címét). Megadhat egy nevet, csak tudassa másokkal, hogy ugyanazt a nevet írják be.", "settingsDrawerButton": "Kattintson ide a beállítások fiókjának megnyitásához.", - "nameSetting": "Ez lesz a megjelenítendő neve, mások ezzel a névvel fognak látni.", - "emailSetting": "Az itt megadott e-mail része lesz a felhasználói profilnak.", - "startMutedToggles": "Hang elnémítva és videó nélkül kezd be-/kikapcsolással. Minden konferenciára vonatkozik.", "serverSetting": "Kiszolgáló, ahol a konferenciákat tartják. Használja saját kiszolgálóját; ez azonban nem szükséges.", "serverTimeout": "Ha a résztvevők nem csatlakoztak az időkorlát bekövetkezése előtt, akkor a találkozót visszavonják.", "alwaysOnTop": "A „Mindig látható” ablak lehetővé teszi a be-/kikapcsolást. Akkor jelenik meg, amikor a főablak elveszíti a fókuszt. Ezt minden konferenciára alkalmazni kell." }, "settings": { "back": "Vissza", - "name": "Név", - "email": "E-mail-cím", - "advancedSettings": "Haladó beállítások", "alwaysOnTopWindow": "Mindig látható", - "startWithAudioMuted": "Elnémítva kezd", - "startWithVideoMuted": "Videó nélkül kezd", "invalidServer": "Érvénytelen kiszolgáló URL-címe", "invalidServerTimeout": "A kiszolgáló időkorlátja érvénytelen", "serverUrl": "Kiszolgáló URL-címe", diff --git a/app/i18n/lang/it.json b/app/i18n/lang/it.json index 8352454..f4fd59b 100644 --- a/app/i18n/lang/it.json +++ b/app/i18n/lang/it.json @@ -16,21 +16,13 @@ "next": "Avanti", "conferenceUrl": "Insecisci il nome (oppure l'url intero) della stanza in cui vuoi accedere.", "settingsDrawerButton": "Premi qua per arrivare alle impostazioni.", - "nameSetting": "Questo non è un username.", - "emailSetting": "Il campo E-Mail fa parte del tuo profile, questo campo può restare vuoto.", - "startMutedToggles": "Qua puoi impostare se vui accedere a tutte le conferenze con audio/video disabilitato al accesso..", "serverSetting": "Questo è il server dove si svolgeranno tutte le conferenze, qua si può anche inserire il proprio server!", "serverTimeout": "Questo è il tempo massimo che un server può metterci per rispondere ad una richiesta di accesso a un meeting.", "alwaysOnTop": "Qua puoi attivare una piccola finestra che ti farà vedere i partecipanti del meeting anche se hai minimizzato la finestra principale." }, "settings": { "back": "Indietro", - "name": "Nome", - "email": "Email", - "advancedSettings": "Impostazioni avanzate", "alwaysOnTopWindow": "Finestra sempre in primo piano", - "startWithAudioMuted": "Inizia senza audio", - "startWithVideoMuted": "Inizio senza video", "invalidServer": "URL del server errato", "serverUrl": "URL Server", "serverTimeout": "Timeout del server (in secondi)" diff --git a/app/i18n/lang/nl.json b/app/i18n/lang/nl.json index ef88101..4df8f2f 100644 --- a/app/i18n/lang/nl.json +++ b/app/i18n/lang/nl.json @@ -16,21 +16,13 @@ "next": "Volgende", "conferenceUrl": "Voer de naam of URL in van de ruimte die u wilt betreden. U kunt een naam verzinnen, maar laat deze wel weten aan de andere deelnemers, zodat zij dezelfde naam invoeren.", "settingsDrawerButton": "Klik hier om het instellingenscherm te tonen.", - "nameSetting": "Voer hier uw naam in, andere deelnemers zullen deze naam zien.", - "emailSetting": "Voer hier uw e-mailadres in, dit wordt onderdeel van uw gebruikersprofiel.", - "startMutedToggles": "Hier kunt u kiezen om te starten met microfoon gedempt en/of camera uitgeschakeld. Dit geldt voor alle vergaderingen.", "serverSetting": "Voer hier de naam van de server in waar de vergaderingen plaatsvinden. U kunt uw eigen server gebruiken, maar dat hoeft niet!", "serverTimeout": "Voer hier de tijdslimiet in om de ruimte te betreden. Als de ruimte niet voor deze limiet betreden wordt, wordt de vergadering geannuleerd.", "alwaysOnTop": "Hiermee kunt u het altijd zichtbare venster aan- of uitzetten. Dit venster wordt getoond wanneer een andere applicatie actief wordt. Dit geldt voor alle vergaderingen." }, "settings": { "back": "Terug", - "name": "Naam", - "email": "E-mail", - "advancedSettings": "Geavanceerde instellingen", "alwaysOnTopWindow": "Altijd zichtbare venster", - "startWithAudioMuted": "Met audio gedempt starten", - "startWithVideoMuted": "Met camera uitgeschakeld starten", "invalidServer": "Ongeldige server-URL", "invalidServerTimeout": "Ongeldige waarde voor server-tijdslimiet", "serverUrl": "Server-URL", diff --git a/app/i18n/lang/pt-br.json b/app/i18n/lang/pt-br.json index db5691e..10dab33 100644 --- a/app/i18n/lang/pt-br.json +++ b/app/i18n/lang/pt-br.json @@ -16,21 +16,13 @@ "next": "Avançar", "conferenceUrl": "Digite o nome (ou URL completo) da sala em que deseja entrar. Você pode inventar um nome, apenas avise os outros para que insiram o mesmo nome.", "settingsDrawerButton": "Clique aqui para abrir a barra de configurações.", - "nameSetting": "Este será o seu nome de exibição, outras pessoas verão você com este nome.", - "emailSetting": "O e-mail que você inserir aqui fará parte do seu perfil de usuário.", - "startMutedToggles": "Você pode alternar se quiser começar com o áudio ou vídeo sem som aqui. Isso será aplicado a todas as conferências.", "serverSetting": "Este será o servidor onde suas conferências acontecerão. Você pode usar o seu próprio, mas não precisa!", "serverTimeout": "Tempo limite para entrar em uma reunião, se a reunião não tiver começado antes de atingir o tempo limite, ela será cancelada.", "alwaysOnTop": "Você pode alternar se deseja habilitar a janela \"sempre visível \", que é exibida quando a janela principal perde o foco. Isso será aplicado a todas as conferências." }, "settings": { "back": "Voltar", - "name": "Nome", - "email": "Email", - "advancedSettings": "Configurações Avançadas", "alwaysOnTopWindow": "Janela Sempre Visível", - "startWithAudioMuted": "Iniciar sem áudio", - "startWithVideoMuted": "Iniciar sem vídeo", "invalidServer": "URL do Servidor Inválida", "invalidServerTimeout": "Valor inválido para tempo limite do servidor", "serverUrl": "URL do servidor", diff --git a/app/i18n/lang/ru.json b/app/i18n/lang/ru.json index 8af1f43..65cd516 100644 --- a/app/i18n/lang/ru.json +++ b/app/i18n/lang/ru.json @@ -16,21 +16,13 @@ "next": "Далее", "conferenceUrl": "Введите название (или полный URL-адрес) комнаты, к которой вы хотите присоединиться.", "settingsDrawerButton": "Нажмите здесь, чтобы перейти к настройкам.", - "nameSetting": "Это ваше имя, которое будут видеть другие.", - "emailSetting": "Эл. адрес, который вы введете здесь, будет частью вашего профиля пользователя.", - "startMutedToggles": "Здесь вы можете настроить, присоединяться ли вы ко всем конференциям без включенного аудио/видео.", "serverSetting": "Это сервер, на котором будут проходить все ваши конференции. Вы можете использовать свой собственный, но вам это не нужно!", "serverTimeout": "Timeout to join a meeting, if the meeting hasn't been joined before the timeout hits, it's cancelled.", "alwaysOnTop": "Здесь вы можете включить небольшое окно, которое показывает участников, даже если вы только что свернули основное приложение." }, "settings": { "back": "Назад", - "name": "Имя", - "email": "Эл. адрес", - "advancedSettings": "Расширенные настройки", "alwaysOnTopWindow": "Поверх всех окон", - "startWithAudioMuted": "Начать без звука", - "startWithVideoMuted": "Начать без видео", "invalidServer": "Неверный URL-адрес сервера", "serverUrl": "URL-адрес сервера", "serverTimeout": "Тайм-аут сервера (в секундах)" diff --git a/app/i18n/lang/sq.json b/app/i18n/lang/sq.json index a6677b1..052b66a 100644 --- a/app/i18n/lang/sq.json +++ b/app/i18n/lang/sq.json @@ -16,21 +16,13 @@ "next": "Pasuesi", "conferenceUrl": "Jepni emrin (ose URL-në) e plotë të dhomës ku doni të hyni. Një emër mund ta sajoni, thjesht bëjuani të ditur të tjerëve, që të japin të njëjtin emër.", "settingsDrawerButton": "Klikoni këtu që të hapet sirtari i rregullimeve.", - "nameSetting": "Ky do të jetë emri në ekran për ju, të tjerë do t’ju shohin me këtë emër.", - "emailSetting": "Email-i që jepni këtu do të jetë pjesë e profilit tuaj të përdoruesit.", - "startMutedToggles": "Mund ta klikoni, nëse doni të fillohet me audio ose videon tuaj të mbyllur. Kjo do të zbatohet për krejt konferencat.", "serverSetting": "Ky do të jetë shërbyesi ku do të zhvillohen konferencat tuaja. Mund të përdorni tuajën, por jo domosdoshmërisht!", "serverTimeout": "Mbarim kohe për provë hyrjeje në një takim, nëse te takimi s’hyhet para se të skadojë kjo kohë, hyrja anulohet.", "alwaysOnTop": "Me këtë mund të zgjidhni nëse doni apo jo aktivizimin e dritares \"përherë-sipër\", që shfaqet kur fokusi, nga dritarja kryesore, kalon gjetkë. Kjo do të zbatohet për krejt konferencat." }, "settings": { "back": "Mbrapsht", - "name": "Emër", - "email": "Email", - "advancedSettings": "Rregullime të Mëtejshme", "alwaysOnTopWindow": "Dritare Përherë Sipër", - "startWithAudioMuted": "Nise pa Audio", - "startWithVideoMuted": "Nis pa Video", "invalidServer": "URL e Pavlefshme Shërbyesi", "invalidServerTimeout": "Vlerë e pavlefshme për Mbarim Kohe Shërbyesi", "serverUrl": "URL Shërbyesi", diff --git a/app/preload/preload.js b/app/preload/preload.js index ceaa666..c566835 100644 --- a/app/preload/preload.js +++ b/app/preload/preload.js @@ -1,7 +1,6 @@ /* global process */ const { ipcRenderer } = require('electron'); -const os = require('os'); const jitsiMeetElectronUtils = require('@jitsi/electron-sdk'); const { openExternalLink } = require('../features/utils/openExternalLink'); @@ -9,7 +8,6 @@ const { openExternalLink } = require('../features/utils/openExternalLink'); const whitelistedIpcChannels = [ 'protocol-data-msg', 'renderer-ready' ]; window.jitsiNodeAPI = { - osUserInfo: os.userInfo, openExternalLink, platform: process.platform, jitsiMeetElectronUtils, |