From 457d679382caffcd20f71232adff7897b8290377 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?H=C3=A5var=20Aamb=C3=B8=20Fosstveit?= Date: Wed, 6 May 2020 23:08:51 +0200 Subject: [PATCH] Setting to disable notifications, fixes #306 --- app/src/actions/settingsActions.js | 5 ++++ app/src/components/Room.js | 16 ++++++---- .../components/Settings/AppearenceSettings.js | 29 +++++++++++++------ app/src/reducers/settings.js | 8 +++++ app/src/translations/cn.json | 1 + app/src/translations/cs.json | 1 + app/src/translations/de.json | 1 + app/src/translations/dk.json | 1 + app/src/translations/el.json | 1 + app/src/translations/en.json | 1 + app/src/translations/es.json | 1 + app/src/translations/fr.json | 1 + app/src/translations/hr.json | 1 + app/src/translations/hu.json | 1 + app/src/translations/it.json | 1 + app/src/translations/lv.json | 1 + app/src/translations/nb.json | 1 + app/src/translations/pl.json | 1 + app/src/translations/pt.json | 1 + app/src/translations/ro.json | 1 + app/src/translations/tr.json | 1 + app/src/translations/uk.json | 1 + 22 files changed, 62 insertions(+), 14 deletions(-) diff --git a/app/src/actions/settingsActions.js b/app/src/actions/settingsActions.js index 5416b02..63c12bf 100644 --- a/app/src/actions/settingsActions.js +++ b/app/src/actions/settingsActions.js @@ -38,6 +38,11 @@ export const togglePermanentTopBar = () => type : 'TOGGLE_PERMANENT_TOPBAR' }); +export const toggleShowNotifications = () => + ({ + type : 'TOGGLE_SHOW_NOTIFICATIONS' + }); + export const setEchoCancellation = (echoCancellation) => ({ type : 'SET_ECHO_CANCELLATION', diff --git a/app/src/components/Room.js b/app/src/components/Room.js index cdda66f..7562ee4 100644 --- a/app/src/components/Room.js +++ b/app/src/components/Room.js @@ -142,6 +142,7 @@ class Room extends React.PureComponent room, browser, advancedMode, + showNotifications, toolAreaOpen, toggleToolArea, classes, @@ -178,7 +179,9 @@ class Room extends React.PureComponent - + { showNotifications && + + } @@ -232,6 +235,7 @@ Room.propTypes = room : appPropTypes.Room.isRequired, browser : PropTypes.object.isRequired, advancedMode : PropTypes.bool.isRequired, + showNotifications : PropTypes.bool.isRequired, toolAreaOpen : PropTypes.bool.isRequired, setToolbarsVisible : PropTypes.func.isRequired, toggleToolArea : PropTypes.func.isRequired, @@ -241,10 +245,11 @@ Room.propTypes = const mapStateToProps = (state) => ({ - room : state.room, - browser : state.me.browser, - advancedMode : state.settings.advancedMode, - toolAreaOpen : state.toolarea.toolAreaOpen + room : state.room, + browser : state.me.browser, + advancedMode : state.settings.advancedMode, + showNotifications : state.settings.showNotifications, + toolAreaOpen : state.toolarea.toolAreaOpen }); const mapDispatchToProps = (dispatch) => @@ -270,6 +275,7 @@ export default connect( prev.room === next.room && prev.me.browser === next.me.browser && prev.settings.advancedMode === next.settings.advancedMode && + prev.settings.showNotifications === next.settings.showNotifications && prev.toolarea.toolAreaOpen === next.toolarea.toolAreaOpen ); } diff --git a/app/src/components/Settings/AppearenceSettings.js b/app/src/components/Settings/AppearenceSettings.js index 705b2f6..a34a5e1 100644 --- a/app/src/components/Settings/AppearenceSettings.js +++ b/app/src/components/Settings/AppearenceSettings.js @@ -30,6 +30,7 @@ const AppearenceSettings = ({ settings, onTogglePermanentTopBar, onToggleHiddenControls, + onToggleShowNotifications, handleChangeMode, classes }) => @@ -101,18 +102,27 @@ const AppearenceSettings = ({ defaultMessage : 'Hidden media controls' })} /> + } + label={intl.formatMessage({ + id : 'settings.showNotifications', + defaultMessage : 'Show notifications' + })} + /> ); }; AppearenceSettings.propTypes = { - room : appPropTypes.Room.isRequired, - settings : PropTypes.object.isRequired, - onTogglePermanentTopBar : PropTypes.func.isRequired, - onToggleHiddenControls : PropTypes.func.isRequired, - handleChangeMode : PropTypes.func.isRequired, - classes : PropTypes.object.isRequired + room : appPropTypes.Room.isRequired, + settings : PropTypes.object.isRequired, + onTogglePermanentTopBar : PropTypes.func.isRequired, + onToggleHiddenControls : PropTypes.func.isRequired, + onToggleShowNotifications : PropTypes.func.isRequired, + handleChangeMode : PropTypes.func.isRequired, + classes : PropTypes.object.isRequired }; const mapStateToProps = (state) => @@ -122,9 +132,10 @@ const mapStateToProps = (state) => }); const mapDispatchToProps = { - onTogglePermanentTopBar : settingsActions.togglePermanentTopBar, - onToggleHiddenControls : settingsActions.toggleHiddenControls, - handleChangeMode : roomActions.setDisplayMode + onTogglePermanentTopBar : settingsActions.togglePermanentTopBar, + onToggleHiddenControls : settingsActions.toggleHiddenControls, + onToggleShowNotifications : settingsActions.toggleShowNotifications, + handleChangeMode : roomActions.setDisplayMode }; export default connect( diff --git a/app/src/reducers/settings.js b/app/src/reducers/settings.js index da96ecc..7186fdc 100644 --- a/app/src/reducers/settings.js +++ b/app/src/reducers/settings.js @@ -16,6 +16,7 @@ const initialState = lastN : 4, permanentTopBar : true, hiddenControls : false, + showNotifications : true, notificationSounds : true, ...window.config.defaultAudio }; @@ -158,6 +159,13 @@ const settings = (state = initialState, action) => return { ...state, notificationSounds }; } + case 'TOGGLE_SHOW_NOTIFICATIONS': + { + const showNotifications = !state.showNotifications; + + return { ...state, showNotifications }; + } + case 'SET_VIDEO_RESOLUTION': { const { resolution } = action.payload; diff --git a/app/src/translations/cn.json b/app/src/translations/cn.json index 097e9b7..26724a4 100644 --- a/app/src/translations/cn.json +++ b/app/src/translations/cn.json @@ -130,6 +130,7 @@ "settings.lastn": "可见视频数量", "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "无法保存文件", "filesharing.startingFileShare": "正在尝试共享文件", diff --git a/app/src/translations/cs.json b/app/src/translations/cs.json index 66e72b2..b80ab14 100644 --- a/app/src/translations/cs.json +++ b/app/src/translations/cs.json @@ -129,6 +129,7 @@ "settings.lastn": null, "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "Není možné uložit soubor", "filesharing.startingFileShare": "Pokouším se sdílet soubor", diff --git a/app/src/translations/de.json b/app/src/translations/de.json index 6d72d54..3eabb28 100644 --- a/app/src/translations/de.json +++ b/app/src/translations/de.json @@ -130,6 +130,7 @@ "settings.lastn": "Anzahl der sichtbaren Videos", "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "Fehler beim Speichern der Datei", "filesharing.startingFileShare": "Starte Teilen der Datei", diff --git a/app/src/translations/dk.json b/app/src/translations/dk.json index 351907c..cab3586 100644 --- a/app/src/translations/dk.json +++ b/app/src/translations/dk.json @@ -130,6 +130,7 @@ "settings.lastn": "Antal synlige videoer", "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "Kan ikke gemme fil", "filesharing.startingFileShare": "Forsøger at dele filen", diff --git a/app/src/translations/el.json b/app/src/translations/el.json index 8f34eb1..5a83427 100644 --- a/app/src/translations/el.json +++ b/app/src/translations/el.json @@ -130,6 +130,7 @@ "settings.lastn": "Αριθμός ορατών βίντεο", "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "Αδυναμία αποθήκευσης του αρχείου", "filesharing.startingFileShare": "Προσπάθεια διαμοιρασμού αρχείου", diff --git a/app/src/translations/en.json b/app/src/translations/en.json index 660585d..2b40a30 100644 --- a/app/src/translations/en.json +++ b/app/src/translations/en.json @@ -130,6 +130,7 @@ "settings.lastn": "Number of visible videos", "settings.hiddenControls": "Hidden media controls", "settings.notificationSounds": "Notification sounds", + "settings.showNotifications": "Show notifications", "filesharing.saveFileError": "Unable to save file", "filesharing.startingFileShare": "Attempting to share file", diff --git a/app/src/translations/es.json b/app/src/translations/es.json index f685b8f..63c2f7d 100644 --- a/app/src/translations/es.json +++ b/app/src/translations/es.json @@ -130,6 +130,7 @@ "settings.lastn": "Cantidad de videos visibles", "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "No ha sido posible guardar el fichero", "filesharing.startingFileShare": "Intentando compartir el fichero", diff --git a/app/src/translations/fr.json b/app/src/translations/fr.json index d1a67cf..4471861 100644 --- a/app/src/translations/fr.json +++ b/app/src/translations/fr.json @@ -130,6 +130,7 @@ "settings.lastn": "Nombre de vidéos visibles", "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "Impossible d'enregistrer le fichier", "filesharing.startingFileShare": "Début du transfert de fichier", diff --git a/app/src/translations/hr.json b/app/src/translations/hr.json index f08f516..682dfbe 100644 --- a/app/src/translations/hr.json +++ b/app/src/translations/hr.json @@ -130,6 +130,7 @@ "settings.lastn": "Broj vidljivih videozapisa", "settings.hiddenControls": "Skrivene kontrole medija", "settings.notificationSounds": "Zvuk obavijesti", + "settings.showNotifications": null, "filesharing.saveFileError": "Nije moguće spremiti datoteku", "filesharing.startingFileShare": "Pokušaj dijeljenja datoteke", diff --git a/app/src/translations/hu.json b/app/src/translations/hu.json index c3dd780..262f117 100644 --- a/app/src/translations/hu.json +++ b/app/src/translations/hu.json @@ -130,6 +130,7 @@ "settings.lastn": "A látható videók száma", "settings.hiddenControls": "Média Gombok automatikus elrejtése", "settings.notificationSounds": "Értesítések hangjelzéssel", + "settings.showNotifications": null, "filesharing.saveFileError": "A file-t nem sikerült elmenteni", "filesharing.startingFileShare": "Fájl megosztása", diff --git a/app/src/translations/it.json b/app/src/translations/it.json index 472ce91..27b3194 100644 --- a/app/src/translations/it.json +++ b/app/src/translations/it.json @@ -129,6 +129,7 @@ "settings.lastn": "Numero di video visibili", "settings.hiddenControls": "Controlli media nascosti", "settings.notificationSounds": "Suoni di notifica", + "settings.showNotifications": null, "filesharing.saveFileError": "Impossibile salvare file", "filesharing.startingFileShare": "Tentativo di condivisione file", diff --git a/app/src/translations/lv.json b/app/src/translations/lv.json index dd8fac4..d355c84 100644 --- a/app/src/translations/lv.json +++ b/app/src/translations/lv.json @@ -124,6 +124,7 @@ "settings.lastn": "Jums redzamo video/kameru skaits", "settings.hiddenControls": "Slēpto mediju vadība", "settings.notificationSounds": "Paziņojumu skaņas", + "settings.showNotifications": null, "filesharing.saveFileError": "Nav iespējams saglabāt failu", "filesharing.startingFileShare": "Tiek mēģināts kopīgot failu", diff --git a/app/src/translations/nb.json b/app/src/translations/nb.json index 58e3b08..59edd6c 100644 --- a/app/src/translations/nb.json +++ b/app/src/translations/nb.json @@ -130,6 +130,7 @@ "settings.lastn": "Antall videoer synlig", "settings.hiddenControls": "Skjul media knapper", "settings.notificationSounds": "Varslingslyder", + "settings.showNotifications": "Vis varslinger", "filesharing.saveFileError": "Klarte ikke å lagre fil", "filesharing.startingFileShare": "Starter fildeling", diff --git a/app/src/translations/pl.json b/app/src/translations/pl.json index 923de79..1413c73 100644 --- a/app/src/translations/pl.json +++ b/app/src/translations/pl.json @@ -130,6 +130,7 @@ "settings.lastn": "Liczba widocznych uczestników (zdalnych)", "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "Nie można zapisać pliku", "filesharing.startingFileShare": "Próba udostępnienia pliku", diff --git a/app/src/translations/pt.json b/app/src/translations/pt.json index b863098..3b0a078 100644 --- a/app/src/translations/pt.json +++ b/app/src/translations/pt.json @@ -130,6 +130,7 @@ "settings.lastn": "Número de vídeos visíveis", "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "Impossível de gravar o ficheiro", "filesharing.startingFileShare": "Tentando partilha de ficheiro", diff --git a/app/src/translations/ro.json b/app/src/translations/ro.json index 624c231..e666ddf 100644 --- a/app/src/translations/ro.json +++ b/app/src/translations/ro.json @@ -130,6 +130,7 @@ "settings.lastn": "Numărul de videoclipuri vizibile", "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "Încercarea de a salva fișierul a eșuat", "filesharing.startingFileShare": "Partajarea fișierului", diff --git a/app/src/translations/tr.json b/app/src/translations/tr.json index 8f9c29f..16aaae0 100644 --- a/app/src/translations/tr.json +++ b/app/src/translations/tr.json @@ -127,6 +127,7 @@ "settings.lastn": "İzlenebilir video sayısı", "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "Dosya kaydedilemiyor", "filesharing.startingFileShare": "Paylaşılan dosyaya erişiliyor", diff --git a/app/src/translations/uk.json b/app/src/translations/uk.json index db4a082..fe9dd52 100644 --- a/app/src/translations/uk.json +++ b/app/src/translations/uk.json @@ -130,6 +130,7 @@ "settings.lastn": "Кількість видимих ​​відео", "settings.hiddenControls": null, "settings.notificationSounds": null, + "settings.showNotifications": null, "filesharing.saveFileError": "Неможливо зберегти файл", "filesharing.startingFileShare": "Спроба поділитися файлом",