42 Commits

Author SHA1 Message Date
paweldomas
14855f3255 fix(features/notifications): crash on undefined participant 2020-03-20 05:43:44 -05:00
Saúl Ibarra Corretgé
cdbc5976a0 notifications: hdie all (visual) notifications for SIP gateways 2020-02-25 15:45:41 +01:00
Hristo Terezov
bbf1927c70
fix(thumbnail): Optimize status bar moderator icon (#5076)
* fix(thumbnail): Optimize status bar moderator icon

Moved all moderator functionality to react to optimize the number of
status bar updates.

* fix(RemoteVideoMenuTriggerButton): Use nullish coalescing

Co-Authored-By: Saúl Ibarra Corretgé <saghul@jitsi.org>

* ref(StatusBar): rename to StatusIndicators

* fix(RemoteVideoMenu): isModerator value.

* fix(notification): mobile.

Co-authored-by: Saúl Ibarra Corretgé <s@saghul.net>
2020-02-18 16:31:04 +00:00
Saúl Ibarra Corretgé
bd5901d59c notifications,presence-status: check if interfaceConfig is declared
Protectt ourselves against interfaceConfig being undeclared. typeof
interfaceConfig will return "undefined", but that's different than having some
window.interfaceConfig = undefined, even though the valus is the same. The
former will give a ReferenceError.
2020-02-04 15:51:59 +01:00
Vlad Piersec
ad68a87dba Add config options for presence & join/leave message visibility 2020-01-22 11:08:31 +01:00
Bettenbuk Zoltan
8a3ddd8596 feat: SVG icons 2019-09-13 14:07:53 +02:00
Bettenbuk Zoltan
a2cbd9229a fix: render notification description on mobile 2019-08-02 21:14:19 +02:00
Leonard Kim
c0376d238a ref(notifications): do not notify of local participant left
Join notifications are already supressed for the local
participant, so hide the left notification. For now
the notification is not being shown on mobile to keep
the same existing behavior and because a copy change
will be needed, but will be added once batching is
implemented.
2019-06-28 09:18:18 -07:00
Leonard Kim
979b773c3c ref(notifications): move join notification firing to notifications feature 2019-06-27 17:29:02 -07:00
Дамян Минков
768cff48a4
Notify for new device (#4165)
* Fix detecting preferred audio output.

Fixes detecting when a new output device is found and we have stored user preference of using that device.

* Does not store which is the currently open device on save.

Does not save the currently opened device when saving settings dialog, this will be done once we successfully replace the tracks to use the new devices.

* Saves opened audio device after successfully changing it.

If we do it earlier _updateAudioDeviceId is using localAudio and can store wrong value.

* Adds notification for new non preferred devices.

A notification is shown which gives an option to the user to select and use the newly plugged devices.
Adding custom button and handler for the action to the notifications.

* Changes logic to search and handle all newly added devices from array.

* Moves some utility methods to features/base/devices.
2019-05-03 18:25:33 +01:00
Bettenbuk Zoltan
5d9762b429 Extract notification timeout to a constant 2019-04-01 21:03:36 +02:00
Bettenbuk Zoltan
10e951c17c Reorg notifications feature files 2019-03-29 18:52:44 +01:00
Bettenbuk Zoltan
2a5adfc601 Remove some Flow annotations 2019-03-25 13:53:08 +01:00
virtuacoplenny
ac02a17943
feat(notifications): provide a way to turn off sticky notifications (#4010) 2019-03-21 14:06:33 -07:00
paweldomas
043d4db314 fix(NotificationsContainer.native): flow error 2019-03-21 17:09:56 +01:00
paweldomas
0175690a2b ref(mobile): display only the topmost notification
Only one notification will be displayed at a time on mobile.
2019-03-21 15:47:14 +01:00
paweldomas
c7979a3944 feat(mobile): add 1 liner notifications
Adds 1 liner notifications to mobile. Only the title is displayed. In
case the title is missing there's a fallback to the description.
2019-03-21 15:47:14 +01:00
paweldomas
64f8a8d700 fix(AbstractNotificationsContainer): broken timeouts chain
If user dismisses the not topmost notification the timeout will be
cleared and a new one will not be set, because the top notification
remained the same (see the if at line 90).
2019-03-21 15:47:14 +01:00
paweldomas
95f684da2f fix(AbstractNotificationsContainer): dismiss timeout not always set
The docs of 'componentDidUpdate' say that it's not called for the
initial render. If the component is added to the DOM with 1 notification
already, then the update will not happen and timeout will never be set
which will effectively break the timeouts chain.
2019-03-21 15:47:14 +01:00
Saúl Ibarra Corretgé
c025c7e132 flow: tame the beast
🔥🔥🔥
2019-03-21 14:47:55 +01:00
Saúl Ibarra Corretgé
0e92e73789 chore: use strings as action types
Using anything non-serializable for action types is discouraged:
https://redux.js.org/faq/actions#actions

In fact, this is the Flow definition for dispatching actions:

declare export type DispatchAPI<A> = (action: A) => A;
declare export type Dispatch<A: { type: $Subtype<string> }> = DispatchAPI<A>;

Note how the `type` field is defined as a subtype of string, which Symbol isn’t.
2019-03-21 14:47:55 +01:00
Bettenbuk Zoltan
60f7ba7301 [RN] Remove mobile notifications 2018-10-02 20:47:41 +02:00
paweldomas
95785a9585 ref(Notification.native): remove unnecessary View
The styles.actionColumn does not exist. It looks the same without the
extra View.
2018-09-05 18:43:49 -05:00
paweldomas
eac069c930 ref(Conference.native): move notifications container
Moves NotificationContainer to the toolbox and filmstrip container, so
that there's no need to manually calculate the positions.
2018-09-05 18:43:49 -05:00
paweldomas
5119f41af6 ref(NotificationsContainer.native): simplify
The outer container is not necessary if 'justifyContent: flex-end' is
used with the absolute fill on the main container.
2018-09-05 18:43:49 -05:00
Ritwik Heda
1d99abc4a4 removes need for eslint-disable-next-line react/jsx-wrap-multilines and eslint-diable-line no extra-parens 2018-08-12 17:06:35 -05:00
hristoterezov
769e782c6f feat(callee-info): Redesign. 2018-07-09 20:22:43 -05:00
Bettenbuk Zoltan
ffd0827354 [RN] Implement Notifications on mobile 2018-06-28 12:47:50 +02:00
Leonard Kim
7341c7bf84 ref(notifications): stop passing around Notifications component
Passing around of the component was used when there were two
independent Notification components. Now that there is only
one Notification component, it is not necessary to pass
around the component.
2018-02-12 17:53:29 -06:00
hristoterezov
a357b0cf14 feat(notification): Add suboptimal browser exp notification. 2018-01-04 15:57:17 -06:00
Saúl Ibarra Corretgé
0f6243ee88 feat(overlays): CallOverlay is not really an overlay
It's not supposed to go on top of everything, like an error would. It's tied to
a conference, so render it outside of the OverlayContainer.
2017-12-12 20:52:29 -06:00
virtuacoplenny
4ead402388 spike: feat(notifications): prioritize based on type (appearance) (#2188)
* feat(notifications): prioritize based on type (appearance)

* squash: add return description to doc
2017-11-27 10:47:01 -06:00
Дамян Минков
7b1b873b6e VideoSIPGW updates (#2201)
* Adds initial documentation for sipgw jibri.

Also explains enabling the people search service and the request/response that are made around sipgw jibri service.

* Fixes add people dialog to invite users and rooms.

No invitation is sent when there is nobody to invite.

* Reuse some recording strings, by using arguments.

* Make sure web also dispatches CONFERENCE_WILL_JOIN.

* Introduces new feature videosipgw.

* Fixes lint errors.

* Renames methods to use people, chatRooms and videoRooms.

* Updates to latest lib-jitsi-meet (dc3397b18b).
2017-11-21 14:45:14 -08:00
Leonard Kim
ef813fbf71 ref(notifications): replace NotificationWithToggle with Notification
It was decided along with the mute participant dialog reactification
that these types of warning messages should not be toggleable--that
they should simply always display because there is no undo action.
As such, the component NotificationWithToggle is no longer needed.
2017-11-21 11:55:45 -06:00
virtuacoplenny
fe411398e3 fix(notifications): throttle and batch join notifications (#2182)
* fix(notifications): throttle and batch join notifications

Instead of directly calling to show a join notification,
go through a specific method. This method will queue
names for display while a throttled function pulls
the names and shows a notification.

* squash: remove unused translation key

* squash: use default display name

* squash: move into participant actions
2017-11-21 11:38:40 -06:00
Lyubo Marinov
8fd91573fc Fix eslint & flow errors
Prepares for the latest eslint & flow-related npm packages which cause
these errors.
2017-11-16 12:27:54 -06:00
virtuacoplenny
510334fa7f ref(notifications): convert some dialogs to error or warning notifica… (#1991)
* ref(notifications): convert some dialogs to error or warning notifications

- Expand the configurability of the Notification component so warnings
  and errors can be displayed.
- Allow Notification to take in arbitrary text for the body.
- Rename defaultTitleKey to titleKey for consistency with descriptionKey.

* ref(notifications): remove openReportDialog method

openReportDialog is a wrapper around showError that adds
a logger statement. It is being called in one place only
so remove the method and have that one place call logger.

* ref(notifications): UI.showTrackNotWorkingDialog takes a boolean

Change UI.showTrackNotWorkingDialog so it takes a boolean
arguments instead of the entire track. A small refactor so
the method needs to know less.

* [squash] Fixes eslint errors

* WiP: Fixes desktop sharing error strings and adds support button

* [squash] Fix icons appearances

* [squash] Fix translate titles and messages

* [squash] fix(translation): Fixes incorrect password string

* [squash] fix(recording): Fixes recording message

* [squash] fix(warning): Turns some warnings to errors and makes support link optional.

* [squash] fix(translation): Addressing language comments

* [squash] Fixes jsdoc and formatting

* [squash] fix(noopener): Fixes window.open noopener

* [squash] fix(constants): Extract constants and refactor NotificationWithToggle

* [squash] fix(lang): Fixes camera and mic error titles

* [squash] fix(supportLink): Renames addSupportLink to hideErrorSupportLink
2017-11-03 14:05:03 -05:00
paweldomas
122be9e0e0 ref: move 'jwt' feature to 'base' 2017-10-12 14:43:09 -05:00
Lyubo Marinov
2e2129fa44 Import PropTypes from prop-types
Prepare for React 16.
2017-09-27 16:24:53 -05:00
Leonard Kim
cd66a7fcb7 ref(notifications): bring hiding of notifications into redux 2017-08-02 11:19:38 -07:00
Leonard Kim
74ddae4a6a feat(device-errors): move device error dialogs to notifications
- Create a notification component for displaying a toggle.
- Create an action for showing the component if allowed by
  the local storage setting and for saving the setting to
  local storage.
- Remove all notifications having a timeout by default so the
  device error notification must be dismissed manually.
- Split the camera and mic error dialog into two separate
  notifications.
2017-08-01 16:33:00 -07:00
virtuacoplenny
da1c760abf feat(notifications): implement a react/redux notification system (#1786)
* feat(notifications): implement a react/redux notification system

* squash into impl explicit timeout, style

* ref(notifications): convert toastr notifications to use react

* ref(toastr): remove library

* squash into conversion: pass timeout

* squash into clean remove from debian patch
2017-07-28 12:56:49 -05:00