Commit Graph

685 Commits

Author SHA1 Message Date
virtuacoplenny 244de8096f feat(local-video): convert to react (#1705)
* feat(local-video): convert to react

- Create a VideoTrack component for displaying a video element.
  This mirrors native also having a VideoTrack component.
- The VideoTrack component does not let React update it to prevent
  the video element from re-rendering, which could cause flickers
  and would not work with temasys's overriding of the video element.
- VideoTrack extends AbstractVideoTrack to mirror native
  implementation and to get the dispatch of the onplaying event.
- Remove the onclick handler on the video element. Honestly, I
  didn't get it to work, and did not try, but it is also unnecessary
  because another handler already exists on the video wrapper.

* ref(device-selection): VideoInputPreview uses VideoTrack to show video

* squash into conversion: change css selectors

* squash into conversion: mix in abstract props

* squash into conversion: change shouldComponentUpdate check

* squash: update comment about why triggerOnPlayingUpdate is used
2017-07-14 14:22:27 -05:00
virtuacoplenny 37328b3995 Merge pull request #1757 from jitsi/rc_dialog_to_notification
fix(remotecontrol): Replace info dialogs with notifications.
2017-07-14 11:32:54 -07:00
hristoterezov b8d3e82ae7 fix(remotecontrol): Replace info dialogs with notifications. 2017-07-14 12:58:37 -05:00
yanas 2e2b1d47c0 Changes video thumbnail menu icon 2017-07-12 17:22:07 -05:00
paweldomas de2eee2e61 ref(VideoLayout): reduce 'forceUpdate' usage 2017-07-12 10:29:18 -07:00
paweldomas badbedf0f5 ref(LargeVideoManager): getCurrentContainer
Remove duplication and direct access to kind of private 'state' field by
introducing 'getCurrentContainer' method.
2017-07-12 10:29:18 -07:00
paweldomas 751f27644f fix(VideoLayout): store userID in container
The container needs to store user's ID in order for the 'isOnLargeVideo'
logic to work correctly when user has no stream (previously it was
obtained from stream which can be null/undefined).
2017-07-12 10:29:18 -07:00
virtuacoplenny 0481e4cf00 feat(indicators): move the "top toolbar" indicators to react (#1699)
* feat(indicators): move the "top toolbar" indicators to react

* wrap baseindicator
2017-07-10 17:29:44 -05:00
Leonard Kim 152427e01b feat(small-video): convert the "toolbar" to react
Move display of audio muted, video muted, and moderator icons,
which make up the elements of the small video toolbar, into React
Components.
2017-06-30 14:21:44 -05:00
virtuacoplenny 0de032ebd7 feat(avatar): SmallVideo uses the existing Avatar component. (#1712)
* feat(avatar): SmallVideo uses the existing Avatar component.
2017-06-29 13:21:03 -05:00
virtuacoplenny 928181cd7a feat(display-name): convert to React (#1672)
* feat(display-name): convert to React

- Create a new React Component for displaying and updating display
  names on small videos
- The updating of the Component is defined in the parent class
  SmallVideo, which children will get access to through prototype
  copying
- Create a new actionType and middleware so name changes that occur
  in DisplayName can be propogated to outside redux
- Update the local video's DisplayName when a conference is joined
  or else the component may keep an undefined user id

* squash: query for the container, not the el owned by react
2017-06-28 22:35:43 -05:00
Leonard Kim 4ce5888b4c feat(connection-indicator): convert to react
- Create a new ConnectionIndicator component for displaying an
  icon for connection quality and for triggering a popover. The
  popover handling has been left in ConnectionIndicator for now,
  which follows the existing implementation.
- Remove the unused method "connectionIndicatorShowMore"
- Change the implementation of existing methods that update the
  connection indicator to call the same method which will rerender
  the indicator completely.
2017-06-27 15:58:00 -05:00
Leonard Kim 4a1efed4a8 feat(audio-level): convert SmallVideo AudioLevelIndicator to React 2017-06-22 11:14:41 -05:00
hristoterezov 486d0802a8 fix(largevideo): show the background video only for video container type 2017-06-21 16:19:30 -05:00
hristoterezov c250da59d5 fix(videolayout): Resize calculations 2017-06-21 16:19:30 -05:00
Ilya Daynatovich 0aee5e5b48 Add blurring effect 2017-06-21 16:19:30 -05:00
Ilya Daynatovich 292c1689ba Add maximum zooming coefficient 2017-06-21 16:19:30 -05:00
Leonard Kim 0a1bd5a0c7 feat(popover): do not remove the popover on every update
With popover usage now only passing in React Components, the
logic of removing the popover and recreating its html with
every update is not necessary. Instead allow React to update
the popover contents.

Because of this change, mouse event handlers are not recreated
on each update, so it is possible for mouseleave to fire after
the size of the popover shrinks when collapsing to hide more stats,
forcing the mouse out of the popover. To prevent this, padding has
been added to the top of the popover so on resize the mouse will
still be over the popover. The padding has the added bonus of
fixing an issue where the popover would not close until mouseenter
was triggered after size collapse, but it adds the drawback of
requiring more upward mouse travel to close the popover.
2017-06-20 13:49:02 -05:00
Leonard Kim e0d641a787 feat(connection-stats): convert connection stats display to react
Move all logic related to displaying a table of connection stats to a React
Component. The actual parsing logic was modified as little as possible as the
focus is moving display to React.
2017-06-20 13:49:02 -05:00
Leonard Kim 5d1087e464 fix(vertical-filmstrip): prevent scaling based on video count
Vertical filmstrip has a scrollbar to scroll through all remote
video thumbnails instead of scaling width and height to force all
thumbnails to display on screen. The scaling is not necessary in
vertical filmstrip mode and instead causes some UI spacing issues
with the video status label.

Also addressed a typo in "removeVideoWidth" near the area of the
changed logic.
2017-06-13 15:17:55 -05:00
Leonard Kim da99f3b939 feat(remote-video): convert remote video menu to react
- Create new React Components for RemoteVideoMenu and its
  buttons
- Remove existing menu creation from RemoteVideo
- Refactor RemoteVideo so all function binding happens once in
  the constructor, removing the need to rebind when updating
  the RemoteVideoMenu
- Allow popover to append and remove React Components from itself
- Refactor popover so post-popover creation calls are broken out and
  popover removal behavior is all done in one function.
2017-06-13 14:54:19 -05:00
Leonard Kim 73dd7440d0 fix(remote-video): update remote video menu if it exists
In RemoteVideo, creation of the RemoteVideoMenu (popover) is
skipped if in filmstrip only mode. However, updateRemoteVideoMenu
is called by other components, and that tries to access popover
and will error.

Add a defensive check for now as filmstrip is being rewritten
for react.
2017-06-13 14:54:03 -05:00
Leonard Kim 2e08815644 fix(video): use onplaying to ensure video height and width are set
When using onplay in firefox, the event fires before data is flowing,
which can cause videoHeight and videoWidth to be 0 during resizing.
By using onplaying, there is some assurance data is being received,
so videoHeight and videoWidth should be set.
2017-06-07 10:44:05 -05:00
paweldomas 2c002c875d fix(SmallVideo): remove invalid character
Removes ' character which should not be there.
2017-06-06 11:15:39 -05:00
paweldomas e38dd0e9d3 ref(LargeVideoManager): remove unused method
'_isConnectionActive' is not used anymore
2017-06-06 11:13:02 -05:00
paweldomas a2a2a583de doc(LargeVideoManager): invalid default
The default for 'show' argument of 'showRemoteConnectionMessage' is
undefined (unspecified).
2017-06-06 11:13:02 -05:00
paweldomas a3ba28f507 ref(LargeVideoManager): simplify
Simplify 'updateParticipantConnStatusIndication' by getting rid of
'showMessage' argument.
2017-06-06 11:13:02 -05:00
paweldomas 6865b03338 fix(RemoteVideo): broken grey avatar
Also moves the logic about participant connection status from SmallVideo
to RemoteVideo, because it doesn't make sense for local videos.
2017-06-06 11:13:02 -05:00
paweldomas 12d7e61362 feat(VideoLayout): add ninja icon
Add ninja icon which wil be displayed when user's connection status is
inactive.

Apply grey filter only for interrupted state.

Do not use isLastN directly, but check ParticipantConnectionStatus.
2017-06-06 11:13:02 -05:00
virtuacoplenny d1ea29beeb fix(large-video): ensure switch to local video when all others leave (#1607)
* fix(large-video): ensure switch to local video when all others leave

This handles the case where User A and B are in a call and B has
no audio or video. Then B leaves. User A would see User B left
on large video. Instead, User A should see self view on large.

* squash: always update large video if it is empty

* squash: add largeVideo check for filmstrip only mode
2017-06-05 18:47:26 -05:00
Leonard Kim 538da92eae fix(large-video): attempt to update large video on all connection updates
It is possible for a connection update to come during a large video update,
between its promises, which would result in the update NOT triggering another
large video update because an update is in progress. This can cause a state
where a connection status overlay is displayed over a video in a state that
does not match the actual video state, like the restoring overlay displaying
on active video.
2017-05-26 15:31:34 -05:00
Leonard Kim 42b51e3c5c fix(1-on-1): remove torture test workaround, add new tests 2017-05-25 15:15:52 -05:00
virtuacoplenny 1da95d2e37 fix(large-video): trigger update after timeout for 1-on-1 calls (#1599)
* fix(large-video): trigger update after timeout for 1-on-1 calls

Currently no video switch happens if a user joins audio and video
muted. For example, User A is in a call and User B joins with no
mic and camera. User A will keep seeing local video on large video.
The fix is to set a timeout, of a somewhat arbitrary 3 seconds, to
show User B on large video.

* SQUASH: wrap videoElement access in if

* SQUASH: split out remoteVideoActive logic
2017-05-25 11:50:52 -05:00
virtuacoplenny d5b40280ab fix(vertical-filmstrip): different label animations for filmstrip states (#1596)
* fix(vertical-filmstrip): different label animations for filmstrip states

Instead of one timing for sliding the video status label left and right,
have different timings depending on the filmstrip state. To facilitate
triggering the different animations, add more classes to the labels
that need to move that specify the filmstrip state.

- Faster transition if focusing on self-view with videos present so
  the label does not overlap videos transitioning from 0 opacity.
- Transition delay when de-focusing on self-view with videos present
  so videos have time to go away before the label moves over them.
- Maintain no movement if there are no videos, regardless of
  filmstrip toggle state.
- Different delays for when the filmstrip is being toggled visible
  and hidden if there are remote videos visible.

* SQUASH: remove remote videos count

* SQUASH: add docs to scss
2017-05-24 20:57:55 -05:00
Leonard Kim 56b12bd969 fix(vertical-filmstrip): move video status labels back to top right
The video status labels, which include recording and hd status,
have been moved back to the top left while in vertical filmstrip
mode. The following had to be done:
- Remove styling to move the labels to the bottom left
- For VideoStatusLabel, move filmstrip remote video count, toggle
  state, and 1:1 state into redux.
- Use middleware to emit out to the Recording label when the
  filmstrip changes.
- Create an empty Filmstrip file for web and identify the existing
  Filmstrip component as native.
2017-05-23 13:28:27 -07:00
Leonard Kim 2333249b05 feat(1-on-1): Initial implementation
- Expose an api on Filmstrip to hide the remote videos container, which does so
  by adding a class
- Modify listeners for user join, leave, share video to call the api
- Hide the container when there is 1 or fewer remote participants
- Always show the container if self view is in focus
- Show the container if the number of remote thumbnails does not match the count
  of remote participants, such as the case of sharing a video
2017-05-23 13:28:27 -07:00
Leonard Kim aabe641047 feat(vertical-filmstrip): Initial implementation
- Add a class to the body when in vertical filmstrip mode
- Override styles as necessary to support the mode
- Add an option to make tooltips display from the left
- Move the HD Label to the bottom left
- Move the remote video menu to the bottom left, move the mute
  icons to the bottom right
- Scale the local video's height and width to fit the filmstrip
2017-05-23 13:28:27 -07:00
Leonard Kim 82ecfac4ee fix(filmstrip): Separate remote videos and local video
The 1:1 call UI and vertical filmstrip act on remote videos
while leaving local video alone. To facilitate acting only on
remote videos, place remote videos into their own container element.
2017-05-23 09:07:41 -07:00
Leonard Kim 258dc594dd fix(volume-slider): modify positioning so slider fits popup width 2017-05-22 14:16:06 -07:00
Leonard Kim 0f0ff6788c fix(config): Bring back minHDHeight 2017-05-17 16:13:16 -05:00
Leonard Kim 896dcde2b2 fix(video-label): Listen to resize events on video elements when possible 2017-05-17 11:54:22 -05:00
Leonard Kim a88409bbfa fix(video-label): Display based on video dimensions in LargeVideoManager
In its current implementation, the VideoStatusLabel shows HD based on peer
connection stats. These stats will be available on temasys browsers soon but
will remain unavailable on Firefox, which does not collect height/width stats.
To support VideoStatusLabel showing cross-browser, move the high-definition
detection out of stat sniffing and instead check the video element itself using
an interval in LargeVideoManager. (An interval was used because the temasys
video object does not support the onresize event.) Also, add a cleanup path from
conference.web to LargeVideoManager to remove the interval.
2017-05-17 11:54:22 -05:00
Leonard Kim 92eeba5392 fix(filmstrip): Disable keyboard shortcut for hiding videos 2017-05-10 14:04:09 -07:00
Leonard Kim ef9f145cb5 fix(video-layout): always honor local video changes
During the implementation of starting as video muted, a check
was put in place to update the local thumbnail view container's
known local track only if the track was not muted. This can
cause the container to become desynced with the current local
track.(Ideally in the future all state would be in redux so this
manual syncing would not be needed.) Removing the if-muted
check seems to cause no side-effects and makes implementation of
device-switch-while-audio-only a lot simpler because new tracks
can be muted and used immediately.
2017-05-05 09:27:59 -07:00
Leonard Kim d24d5d95dd fix(audio-only): combine video status labels
Move the HD label into the newly renamed VideoStatusLabel
component. That way it cannot be possible for the audio only
label and the HD label to display simultaneously.
2017-05-05 09:27:59 -07:00
Saúl Ibarra Corretgé 9ba3a1c4ff feat(conference): add audio only mode
Audio only mode can be used to save bandwidth. In this mode local video is muted
and last N is set to 0, thus disabling all remote video.

When this mode is enabled avatars are shown.
2017-05-05 09:27:59 -07:00
Lyubo Marinov a9bdde193d Approach consistent filmstrip naming
We seemed to be using the names "film strip" and "filmstrip" (and,
consequently, their source code-conscious forms such as film-strip,
FilmStrip, etc.) In order to comply with our coding style which requires
a consistent one name for a given abstraction, choose one name and
rename the uses of the other name.

Wikipedia has a definition of a "filmstrip", I couldn't find a "film
strip". I guess our abstraction can be seen as what's described there.
When I google "film strip", I get results about "filmstrip" at the top.
That's why I chose "filmstrip".

Certain uses of "film strip" such as interfaceConfig.filmStripOnly and
in the external API I left untouched in an attempt to preserve
compatibility.

I wasn't sure whether CSS was tangled in compatibility so I made a
choice and renamed there was well.
2017-04-10 12:59:44 -05:00
yanas 031f2dfeb8 Fixes showToolbar in filmstrip-only mode and renames some funcs 2017-04-10 09:31:35 -05:00
Дамян Минков 0d7cb63978 Merge pull request #1459 from jitsi/move_p2p
fix: P2P address indication
2017-04-03 11:55:21 -05:00
Дамян Минков 2248560699 Uses new peer connection statuses to check and show different user msgs. (#1441)
* Uses new peer connection statuses to check and show different user msgs.

Checks for interrupted state of peer connection and shows appropriate messages. In case of inactive or restoring state a message is show to user that video was stopped on purpose. Removes some unused parameters from the event handlers about peer connection status change.

* Removes isParticipantConnectionActive.
2017-04-03 11:53:04 -05:00
paweldomas 7299b76faf fix: P2P address indication
Moves the P2P indication next to the remote IP address
and rewords it to "(p2p)".
2017-04-03 10:04:53 -05:00
damencho e29120a9c1 Changes lastN event params to leaving and entering endpoint IDs.
Uses leavingIDs to more efficiently iterate over remote videos.
2017-03-23 09:32:27 -05:00
bbaldino 9a46896600 Merge pull request #1402 from jitsi/p2p_ver2
P2P ver2
2017-03-22 16:10:13 -07:00
paweldomas 2973364c02 feat(stats - show more): local p2p transport indication
Will show (direct) next to the UPD or TCP transport type if we're
running on P2P connection.
2017-03-22 11:23:30 -05:00
paweldomas 542bb7caed doc: add FIXME 2017-03-22 11:23:29 -05:00
yanas 704e14f008 Handle last n in the client (#1389)
* Handle last n in the client

* fix(LargeVideoManager.js): Fixes check for low bandwidth. Needs more work

* fix(LargeVideoManager.js): Fixes the Shared Video test.

* fix(LargeVideoManager): Fix shared video view and remove last n checks.

* fix(LargeVideoManager): Fixes jsdoc comment

* fix(RemoteVideo): Fix connection status check

* fix(LargeVideoManager,RemoteVideo): Syntax errors
2017-03-21 12:14:13 -05:00
damencho 54d891afa7 Updates framerate using local statistics. 2017-03-17 16:10:45 -05:00
damencho d01a65f73d Fixes stats, using wrong object members in latest update. 2017-03-15 15:48:13 -05:00
damencho 65239f9ffe Adds frame rate to statistics bubble. 2017-03-15 13:31:42 -05:00
damencho e5cefcce70 Updates transport type.
Updates transport type to show multiple values as we do for addresses and ports.
2017-03-14 15:51:11 -05:00
Lyubo Marinov d371a3d5fd Fix TypeError: undefined is not an object 2017-02-28 00:18:52 -06:00
Ilya Daynatovich 631e853b40 Update register/unregister listeners logic of some components in the old app 2017-02-28 00:18:50 -06:00
Leonard Kim 02b26a65bb Volume slider for remote participant audio elements 2017-02-23 09:01:40 -08:00
hristoterezov 0e92e48376 fix(ss): resize for remote videos 2017-02-08 14:58:42 -06:00
damencho 39a8681e8e Improves safe checks for missing stats. 2017-01-30 17:01:25 -06:00
yanas 09ba14eb04 Fixes video thumbnail border and large video background color 2017-01-25 16:53:58 -06:00
hristoterezov 1f7c5529e9 fix(remotecontrol): Pin the controlled participant only on remote control permissions granted 2017-01-23 15:29:25 -06:00
hristoterezov 0453346cf4 ref(remotecontrol): Pass the largeVideoWrapper as parameter to remote control module 2017-01-23 15:29:25 -06:00
hristoterezov 5d22061c0a fix(remotecontrol): Handle on-stage participant changes 2017-01-23 15:29:25 -06:00
hristoterezov a4d5c41b3a feat(remotecontrol): UI for requesting permissions 2017-01-23 15:29:25 -06:00
Lyubomir Marinov 6efad1348a Fix the display of watermarks in film strip-only mode
Recently, we reimplemented the watermarks in React. Unfortunately, we
didn't take into account film strip-only mode.

Additionally, we duplicated watermark-related source code on the Welcome
and Conference pages.
2017-01-17 16:20:13 -06:00
hristoterezov 61f4b52a15 fix(filmstrip_only): Remove unrelated UI elements 2017-01-12 14:51:53 -06:00
hristoterezov 0f9bc766db fix(filmstrip_only): JS errors 2017-01-11 17:16:43 -06:00
yanas a5387b054a Fix(RemoteVideo): Fixes remote video menu icon 2017-01-04 10:14:53 -06:00
Lyubomir Marinov 137aace970 Merge branch 'fix_ring_overlay' 2016-12-04 13:29:31 -06:00
hristoterezov 23efa7827c fix(filmstrip): JS error when the ringoverlay is shown 2016-12-02 16:23:12 -06:00
hristoterezov 8745efb81f Merge pull request #1158 from jitsi/log_collector
Log collector
2016-11-30 13:07:18 -06:00
yanas e56f1a9ded Merge pull request #1167 from jitsi/fix_anonymous_domain
Fix the UI when anonymous domain auth is in use
2016-11-30 10:51:24 -06:00
yanas 0f2ba1cefe refactor(UIUtils): merges show and hide functions and cleans visibility setting 2016-11-29 15:07:18 -06:00
hristoterezov f32438b219 Merge pull request #1161 from jitsi/pinning-local-not-signal-unpin
Sending unpin after clicking local video and unpinning remote.
2016-11-28 12:06:56 -06:00
paweldomas 51da40e90c ref(UIUtil): add showOrHideElement 2016-11-28 11:05:18 -06:00
damencho 6211566c0c Sending unpin after clicking local video and unpinning remote.
If we:
 - pin a remote and click it, unpin is signalled.
 - pin a remote and the click another remote, the new one is pinned and signalled.
 - pin a remote and then click local. UI pins local, but unpinning remote is not signaled, fix addressed with this commit.
 - pin/unpin local, nothing is signalled.
2016-11-23 17:02:24 -06:00
damencho 8e6fd0ca95 Fixes unpinning local user which is dominant speaker.
It was not switching and staying on local video on unpinning, after change the last shown video will be used to switch to it.
2016-11-23 15:35:03 -06:00
paweldomas b58f1cdd16 use logger instead of console 2016-11-23 11:32:55 -06:00
damencho a079914603 Removes click handlers when popup is hidden. 2016-11-22 17:06:19 -06:00
hristoterezov 7f315ef105 fix(VideoLayout): Issue with not resizing properly if SS is on and the filmstrip is hidden 2016-11-18 11:26:33 -06:00
yanas 6d1f42bf30 Merge pull request #1115 from jitsi/remove_css_classes
Removes unused css classes
2016-11-16 13:00:26 -06:00
Ilya Daynatovich 9bc24e1caa Fix aligning of indicator icon; Update logic for dynamically change of thumb indicators via font-size 2016-11-14 12:45:28 +02:00
Ilya Daynatovich 3bd4f1d5d8 Updated layout 2016-11-14 11:09:07 +02:00
Ilya Daynatovich f3dbeea091 Make filmstrip indicators to resize dynamically 2016-11-14 11:09:07 +02:00
yanas 5545c0d905 fix: desktop streming screen size 2016-11-11 13:26:07 -06:00
yanas 8caae4bfde Merge pull request #1111 from BeatC/FIX-clean-js-from-styles-1
Fix clean js from styles 1
2016-11-10 15:40:07 -06:00
yanas 95fcf5bae5 Change method name to fit better its purpose 2016-11-10 11:14:31 -06:00
Ilya Daynatovich 34acadc3b5 Rename method 2016-11-10 11:14:31 -06:00
Ilya Daynatovich d3df082e3d Fix thumbnail overflow 2016-11-10 11:13:31 -06:00
Ilya Daynatovich 128b301a39 Fix the tests 2016-11-10 14:45:42 +02:00
Ilya Daynatovich 1b1b9475a4 Clean up js from styles 2016-11-10 13:32:12 +02:00
Ilya Daynatovich 5aff96e3b7 Updated in videolayout 2016-11-10 13:32:12 +02:00
Maxim Voloshin 68ab87cc0d Hide DOM elements using css class 2016-11-10 13:32:12 +02:00
Ilya Daynatovich 986c29ca5d updated filmstrip handler 2016-11-10 12:18:33 +02:00
Ilya Daynatovich 20c6dba599 Moved keyboard initialization to filmstrip toolbar; Replaced toggle filmstrip button from extended toolbar 2016-11-09 12:41:23 +02:00
yanas 084929f875 Merge pull request #1122 from jitsi/thumbnail-calculations
Thumbnail calculations
2016-11-08 17:40:46 -06:00
yanas bb80bf4144 fix: Use a separate css class for thumbnail menu 2016-11-08 11:47:22 -06:00
Boris Grozev c0c198098b style: Renames variables, adds a FIXME. 2016-11-07 20:47:43 -06:00
Boris Grozev ac0ee771ed docs: Adds a FIXME. 2016-11-07 20:45:52 -06:00
Boris Grozev 0ca9389e4b cleanup: Simplify code. 2016-11-07 20:39:28 -06:00
Boris Grozev 9910caf29f docs: Fix some documentation. 2016-11-07 20:38:14 -06:00
yanas 78dbaa9b21 Revert wrongly removed comment 2016-11-07 17:00:50 -06:00
yanas 5c956de99e Merges changes with latest master. 2016-11-07 16:50:08 -06:00
damencho 510c650b7b Adds a property to hide display name and disable update view.
Adds a property to hide display name and disable update view in SmallVideo. Localvideo hides displayName and disabled update view while users is editing its name and resumes normal behaviour when editing finishes.
2016-11-04 17:02:30 -05:00
hristoterezov c41c219206 fix(Thumbnails): removes unused css classes 2016-11-04 15:24:05 -05:00
yanas c3e0d7ff56 Fix conflicts. 2016-11-03 14:42:23 -05:00
Ilya Daynatovich 8ba7a354e5 Remove duplicate event handler 2016-11-03 20:02:44 +02:00
Konstantyn Pahsura e7d089c815 Merge branch 'jit/master' into task/video-thumbnail-menu-should-appear-on-hover 2016-11-03 17:30:19 +02:00
Ilya Daynatovich 24169743e7 Clean up filmstrip styles 2016-11-03 17:07:48 +02:00
Ilya Daynatovich 02ae3b3053 Add wrapper 2016-11-03 16:26:56 +02:00
Ilya Daynatovich 69e4f49e74 Add bunch of JSDocs 2016-11-03 16:21:14 +02:00
Ilya Daynatovich 1328870a2b fix bug with F shortcut 2016-11-03 16:21:14 +02:00
Ilya Daynatovich 51d48e18c6 Refactor filmstrip module 2016-11-03 16:21:14 +02:00
Konstantyn Pahsura 9633919e32 css class for remote video specified 2016-11-03 15:40:43 +02:00
Konstantyn Pahsura 76e55f1132 show/hide menu if elem hovered 2016-11-03 15:40:43 +02:00
Ilya Daynatovich 30e717bd20 Rename classname; Refactor click on video method 2016-11-03 12:13:03 +02:00
Ilya Daynatovich d703271c96 Fix bug with resizing when using shortcut for switching btw videos 2016-11-03 11:48:48 +02:00
yanas c4d0340956 Merge pull request #1034 from m-voloshin/FEATURE-hide-filmstrip
Filmstrip is extended with "Hide" button
2016-11-02 14:24:45 -05:00
paweldomas ede4808ec4 fix(LargeVideoManager): frozen displayname in a msg
The "data-i18n-options" attribute value is stored in jQuery cache and
at the time when i18-next tries to access it to do the translation
it gets the old value from the cache and the message is not updated
correctly. Passing the "msgOptions" explicitly to "translateElement"
fixes the problem by avoiding jQuery cache.
2016-11-02 11:32:40 -05:00
Boris Grozev c815b1f25b feat: Updates the GSM bars' thresholds.
Adapts to changes in lib-jitsi-meet. Uses an Array which guarantees the
order of its elements, and avoids setting a css property multiple times.
2016-10-31 16:08:24 -05:00
hristoterezov a8b69d5cd8 feat(MessageHandler): Implement dont show again utility 2016-10-31 13:02:41 -05:00
Maxim Voloshin dc93940bbd Filmstrip is extended with "Hide" button 2016-10-31 19:59:45 +02:00
hristoterezov 7e2fe30472 feat(JitsiLocalStorage): Implement localStorage wrapper 2016-10-31 12:11:03 -05:00
yanas ae9819a45c Merge pull request #1075 from BeatC/menu-restyling-editions
Adjust alignment of remote video menu
2016-10-28 12:43:12 -05:00
hristoterezov 634a18e847 fix(Thubmnail_PopupMenu): the thumbnail should be considered hovered when the popup menu is hovered 2016-10-28 11:16:40 -05:00
Ilya Daynatovich 138ed6a487 Fixed interface 2016-10-28 13:52:08 +03:00
Ilya Daynatovich d84d0b65ca Adjust alignment of remote video menu 2016-10-28 13:52:08 +03:00
damencho 9764fe52de Removed not needed setting of the quality to 0.
We now just hide the icon with values and show the interrupted one. Calling this one was causing troubles like flickering and stats popover not able to hide, once shown. On hover we are calling updateView which ends to this call which destroy and create the popover, which maybe is leading to this problems.
2016-10-27 16:56:32 -05:00
damencho e3edef2999 Renames videocontainer overlay to hoverOverlay. 2016-10-27 14:32:22 -05:00
damencho 328ff54423 Fixes undefined error and shared video. 2016-10-27 14:08:06 -05:00
damencho 2807346bdf Makes decision what to show in avatar consistent (in updateView). 2016-10-27 13:17:17 -05:00
damencho fec8f4e005 Fixes an issue with mixing visibility functions for elements.
In small video we use UIUtil.setVisibility, so we should not use jquery show/hide for the same element.
2016-10-26 17:36:07 -05:00
damencho 3ae299cf2b Fixes comments. 2016-10-26 17:18:36 -05:00
damencho 7acda03024 Adds an overlay to dim videos when showing displayname. 2016-10-26 15:51:09 -05:00
damencho 5cead57723 Reverts hover over small video to show display name. 2016-10-26 15:51:09 -05:00
Ilya Daynatovich 1e24be6dd4 Fix editing the name 2016-10-26 15:51:09 -05:00
Ilya Daynatovich 8d80e13e31 Fix connection indicator bars 2016-10-26 15:51:09 -05:00
Ilya Daynatovich 69b79b7687 Fix icon styles 2016-10-26 15:51:09 -05:00
Ilya Daynatovich 698b3caeb8 fix styles in connection indicators 2016-10-26 15:51:09 -05:00
Ilya Daynatovich 323684c5fe fix conflicts after rebase 2016-10-26 15:51:09 -05:00
yanas a17a98991c Ongoing work on video thumbnail layout 2016-10-26 15:51:09 -05:00
yanas 3fe43abdea Move the display name to the center 2016-10-26 15:51:09 -05:00
hristoterezov 09c8e14465 feat(Mute_Participant): Implement warning dialog for muting remote participant 2016-10-26 14:57:09 -05:00
hristoterezov 221f6d1d68 Merge pull request #1056 from jitsi/translations-update
Translations update
2016-10-25 18:11:15 -05:00
hristoterezov ea0f0da8a4 feat(JitsiPopover): Add onBeforePosition option 2016-10-25 17:57:29 -05:00
hristoterezov 8762aae111 fix(SmallVideo): Add translateElement call removed by previous commit 2016-10-25 16:52:11 -05:00
Maxim Voloshin 86f1d287d7 Fix comments 2016-10-25 20:40:43 +03:00
Maxim Voloshin 6820ec8d23 Show and hide indicators using pure js 2016-10-25 20:40:00 +03:00
Maxim Voloshin 1c218191b0 Apply tooltip for indicator once 2016-10-25 17:50:28 +03:00
damencho efed4bf13c Merge branch 'master' into translations-update 2016-10-21 13:19:23 -05:00
damencho 5217bf0bb8 Removes translateString and use translateElement.
Removing translateString forces using data-i18n attributes, to make sure we do not forget to set them. Missing data-i18n attributes is a problem with late loading where we can end up without translation, without text. Missing data-i18n attributes is also problem that strings will not be translated when changing language.
Fixes a bug in invite dialog, where remove password button was shown for non moderators.
2016-10-21 12:11:22 -05:00
Ilya Daynatovich 8f57179aa4 return default value 2016-10-20 19:41:04 +03:00
hristoterezov a65fca851c refactor(FilmStrip): calculateThumbnailSizeFromAvailable 2016-10-20 11:34:14 -05:00
Ilya Daynatovich 62af73ea09 Add new option to jitsi-popover 2016-10-20 19:28:19 +03:00
Ilya Daynatovich 70861465e1 Editions in jitsi popover styles 2016-10-20 19:28:19 +03:00
yanas 3bf8b7fbe2 Merge pull request #1007 from BeatC/connection-indicator-restyle
Connection indicator restyle
2016-10-20 11:08:51 -05:00
hristoterezov 4acfb033c8 style(LargeVideo): Rename LARGE_VIDEO_AVATAR_DISPLAYED event 2016-10-19 15:57:02 -05:00
Ilya Daynatovich c09e10a584 updates in connection indicator styles 2016-10-19 17:57:16 +03:00
Ilya Daynatovich 26792625f2 BEMificated classes and add title 2016-10-18 17:57:19 +03:00
Ilya Daynatovich 83e7f23d0f Update Connection indicator and popover js 2016-10-18 17:57:19 +03:00
Lyubomir Marinov 6202935a27 Merge branch 'm-voloshin-FIX-audio-level' 2016-10-13 13:29:54 -05:00
Maxim Voloshin 4ae0d1b882 Clean up audio level after previous speaker 2016-10-13 16:43:21 +03:00
hristoterezov 8fafd2b4ea feat(SmallVideo.js): New interface.config property for dominant speaker icon disable 2016-10-10 17:37:21 -05:00
Lyubomir Marinov a2b076985a ESLint
Enable ESLint on jitsi-meet with the same configuration and the same
goals as in lib-jitsi-meet.
2016-10-03 11:12:27 -05:00
damencho 6320ef1caa Updates raised hand to overwrite dominant speaker. 2016-09-30 11:47:43 -05:00
Maxim Voloshin 664d7a4f67 Allow user to edit initial username 2016-09-29 17:40:26 +03:00
yanas 3bb877cc3a Audio levels redesign. 2016-09-28 16:41:13 -05:00
Paweł Domas b4a191e27a Merge pull request #946 from jitsi/fix-moderator-notifications
Fixes moderator notifications on moderator indicator disabled
2016-09-28 14:26:00 -05:00
damencho 15f4288e4a Fixes some jshint errors. 2016-09-28 11:29:47 -05:00
hristoterezov 2a8700bca3 Merge pull request #938 from jitsi/participant_conn_status
Adds participant connection status notifications
2016-09-27 17:54:22 -05:00
yanas f10177a352 Fixes moderator notifications on moderator indicator disabled 2016-09-27 14:32:54 -05:00
Emil Ivov cbd15f45a4 Merge pull request #944 from jitsi/pin-hover-improvements
Pin hover improvements
2016-09-26 22:42:37 -05:00
yanas 1c8535a2d5 Improves the pin and hover borders 2016-09-26 15:40:56 -05:00
paweldomas 7585413e7d fix(VideoLayout): from avatar to video transition
When user reconnected and the avatar is displayed we need to perform
full large video update in order to transition correctly.
2016-09-26 14:40:00 -05:00
paweldomas 6e0ba1de33 ref(VideoLayout): rename 'videoConnectionMessage'
Renames 'videoConnectionMessage' to 'localConnectionMessage', because
it is displayed when we're having problems with our local connection
and a different one will be shown for the remote connectivity issues.
2016-09-26 14:40:00 -05:00
paweldomas 661ea2cf45 feat(VideoLayout): add remote connection problems UI
Grey filter will be applied to the remote video/avatar displayed on
"large" and a message indicating remote connectivity issues will be
shown on top of that.
2016-09-26 14:39:58 -05:00
paweldomas 42fd3097de feat(VideoContainer): add 'wasVideoRendered' flag
The 'wasVideoRendered' flag will tell whether or not we have any video
image rendered(even if stalled) on the large video element.
2016-09-26 13:01:35 -05:00
paweldomas 5952261e87 ref(LargeVideoManager): introduce 'setVideoConnectionMessage' 2016-09-26 13:01:35 -05:00
paweldomas 5843c6c569 ref(LargeVideoManager): rename 'enableVideoProblemFilter' 2016-09-26 13:01:35 -05:00
paweldomas 352e784cad fix(VideoLayout): show video when the connection is back 2016-09-26 13:01:35 -05:00
paweldomas b8937e0349 fix(LargeVideoManager): hide video when avatar is displayed 2016-09-26 13:01:35 -05:00
paweldomas 0aea799b50 doc(LargeVideoManager): fills missing JS doc 2016-09-26 13:01:35 -05:00
paweldomas 46766ec239 fix(RemoteVideo): avoid black thumbnail
When the user is having connectivity issues we use the image cached in
the video element to show the preview in greyscale. It looks like this
cached image gets invalided after prolonged periods of time the video
element being hidden(and it is hidden when the video is muted). So we
never show this image if the user gets muted during connectivity
disruption in order to avoid blackness.
2016-09-26 13:01:35 -05:00
paweldomas 66bbc4d9fd fix(RemoteVideo): change hasVideoStarted logic
We used to rely on 'currentTime' of the video element, but we execute
'updateView' from the 'onplay' callback and on fast machines it may
happen that the value is 0 even though the video has just started.
2016-09-26 13:01:35 -05:00
paweldomas 40f2c593a2 ref(SmallVideo): figure out what is to be displayed
At any point of time we display one of the three: video, avatar or
blackness. The purpose of this commit is to make that fact more clear
in the code.
2016-09-26 13:01:35 -05:00
paweldomas 30cb948dcf feat(SmallVideo): make thumbnail grey
The video or the avatar on a thumbnail will be displayed in greyscale
when the user is having connectivity issues.
2016-09-26 13:01:35 -05:00
paweldomas fceb512a03 ref(SmallVideo): add 'isCurrentlyOnLargeVideo' 2016-09-26 13:01:35 -05:00
paweldomas 4722054c3e ref(SmallVideo): adds avatar selector 2016-09-26 13:01:34 -05:00
paweldomas 9d1364b6fb feat(RemoteVideo): show disconnected GSM bars for remotes 2016-09-26 13:01:34 -05:00
paweldomas 8a43699a89 feat(ConnectionIndicator): show disconnected GSM bars on local thumbnail 2016-09-26 13:01:34 -05:00
paweldomas 3ef5dd20ef ref(RemoteVideo): store JitsiParticipant instead of id 2016-09-26 13:01:34 -05:00
paweldomas e9445866a5 ref(ConnectionIndicator.js): make CQ 'object' optional 2016-09-26 13:01:34 -05:00
paweldomas cf931f8a9f ref(ConnectionIndicator.js) pass icon class as an argument 2016-09-26 13:01:34 -05:00
Дамян Минков b3d6e5876e Merge pull request #922 from jitsi/fix_filter_not_applied
Fix notification about network issues not displayed when expected
2016-09-26 10:04:14 -05:00
Дамян Минков c437f64f35 Merge pull request #933 from jitsi/fix-everyone-moderator
Fixes moderator related elements when everyone is moderator
2016-09-23 18:04:53 -05:00
yanas af91fb50b2 Fixes moderator related elements when everyone is moderator 2016-09-23 17:42:29 -05:00
hristoterezov 42d9d0393d fix(FilmStrip): Add check for thumbnails 2016-09-23 16:44:32 -05:00
paweldomas 419950ca49 fix(VideoLayout): "connection interrupted" shown only on video
The message about having connectivity issues should be displayed only
on top of the video like the "video problems filter" is.
2016-09-22 12:43:23 -05:00
paweldomas ecfc05bcc8 fix(LargeVideoManager): enable video problems filter on VideoContainer
Only the VideoContainer is interested in showing the video problems
filter which is meant to be displayed when ICE is disconnected.
2016-09-22 12:43:03 -05:00
Дамян Минков fbd2879aa3 Merge pull request #918 from kkrisstoff/make-the-star-configurable
disable_star_indicator added
2016-09-22 10:19:16 -05:00
paweldomas e39648ce21 ref(LargeVideo): rename to LargeVideoManager
It is confusing when the name of the main class exported from the file
is not the same as the filename.
2016-09-22 08:57:14 -05:00
paweldomas e0a05c5908 ref(LargeVideo): move VideoContainer to separate file
VideoContainer is a separate being which implements the LargeContainer
and it's confusing to have it in the same file. This was encouraging to
access private parts of the VideoContainer directly(not through
the interface).
2016-09-22 08:57:14 -05:00
paweldomas 2c01fde713 ref(SmallVideo): rename 'isMuted' to avoid confusion 2016-09-22 08:57:01 -05:00
Kostiantyn Pashura 82ebfd9945 disable_star_indicator added 2016-09-22 12:52:53 +03:00
yanas 4ca9349de7 Removes missing and unused method. 2016-09-20 10:16:15 -05:00
Kostiantyn Pashura 4572e1d344 feedback dialog changes 2016-09-19 22:27:41 -05:00
Paweł Domas a07858cc72 Merge pull request #891 from jitsi/video-thumbnail-toolbar-fixes
Video thumbnail toolbar fixes
2016-09-19 19:31:08 -05:00
yanas d1d4674136 Fixes some jsdocs. 2016-09-19 18:04:55 -05:00
yanas 1486eac752 Applies fixes to thumbnail video toolbar from m-voloshin 2016-09-18 16:58:34 -05:00
damencho e4c4236386 Updates handling links on watermarks.
When link is missing disable clicking.
2016-09-16 15:17:34 -05:00
yanas bc222c60e0 Fixes dominant speaker and raised hand tooltips 2016-09-16 00:37:29 -05:00
yanas 96bbf0419c Adds tooltips 2016-09-16 00:04:19 -05:00
hristoterezov 9b25467080 Merge pull request #878 from jitsi/video-thumbnail-redesign
Video thumbnails redesign
2016-09-15 13:48:07 -05:00
yanas 0013745783 Video thumbnails redesign 2016-09-14 21:20:54 -05:00
hristoterezov dab5252746 feat(ringoverlay): Change the background when the avatar is displayed 2016-09-14 16:26:17 -05:00
damencho a5bc9625ef Fixes parameters for VideoLayout.resizeThumbnails. 2016-09-14 10:48:38 -05:00
yanas c6ec96aca5 Adds avatar on stage specific background 2016-09-12 23:24:23 -05:00
yanas 09f7615a35 Changes icon set. 2016-09-11 23:36:15 -05:00
yanas 8562d3d55d Remove bottom toolbar and change side panel position and behavior 2016-09-08 13:16:23 -05:00
damencho 83546a899f Revert "Temprorary disable kicks hack."
This reverts commit 76a7c7b426.
2016-09-07 10:48:13 -05:00
yanas 76a7c7b426 Temprorary disable kicks hack. 2016-09-02 11:19:17 -05:00
damencho bb705e32d9 Moves local video thumb initializations where they belong.
Moves local video thumb initializations where they belong in the local video constructor. Fixes a problem when there is no video device, then audio levels and gsm bars are missing. We were doing this initializations every time a video device is changed.
2016-08-31 14:18:09 -05:00
damencho 246ab88a3e Fixes muting particular remote participant.
There was a bug that the handlers for menuItem for mute and kick are added for all remote participants. When clicked multiple handlers are executed and the action will be executed for all remote participants.
2016-08-23 18:37:41 -05:00
yanas f824f78db9 Fix video thumbnails for Qt on Linux. 2016-08-22 16:31:20 -05:00
damencho 536ffb31e0 Moves loading of analytics in the library. 2016-08-09 15:04:40 -05:00
yanas da0898a066 Isolate object-fit fix for Windows Qt browser only 2016-08-08 17:03:13 -05:00
George Politis 541f83cf71 Merge pull request #774 from jitsi/analytics-move
Analytics move
2016-08-05 13:49:05 -05:00
damencho 6651168dd3 Moves render and ttfm connection times to the library. 2016-08-05 09:52:09 -05:00
yanas 5654d34ee8 Fix remote participant menu for moderator 2016-08-04 15:24:36 -05:00
damencho 6302e42229 Uses analytics from lib-jitsi-meet and adds new events.
Adds more analytics events for shortcuts, recording and shared video. Changes the way we calculate ttfm.
2016-08-04 14:19:09 -05:00
damencho df01358fb8 Adds comment. 2016-08-03 12:49:19 -05:00
damencho 06c636311d Adds analytics event and console log for TTFM (time to first media). 2016-08-03 11:19:09 -05:00
damencho 562c2e38db Adds analytics event for rendering audio and video. 2016-08-02 13:19:03 -05:00
damencho 74ece3a775 Uses videoType from the video track for the initial value.
Handles the case where the remote track is with initial value of camera and no further events are received for video type changed.
2016-07-20 22:13:26 -05:00
hristoterezov 1963972f75 Fixes the issue with missing audio element for remote participants 2016-07-15 13:12:14 -05:00
hristoterezov 2f202deedf Merge branch 'master' into reloads 2016-07-08 16:03:10 -05:00
Дамян Минков 08bd40bb26 Merge pull request #722 from bgrozev/logging
Logs resolution changes to callstats.
2016-07-08 15:50:14 -05:00
Boris Grozev 66a46fc580 Adds documentation. 2016-07-08 15:17:28 -05:00
Boris Grozev de41977c77 Logs resolution changes to callstats. 2016-07-08 15:16:27 -05:00
hristoterezov 7bf9a82f0b Implements conference reload support 2016-07-07 20:44:04 -05:00
Boris Grozev 2d2e27b8d0 Implements "raised hand". 2016-06-20 16:58:54 -05:00
Boris Grozev 4b6ac38058 Fixes a failure to show the dominant speaker indicator for the local participant. 2016-06-20 15:58:08 -05:00
hristoterezov 1eb915d312 Adds config option for enabling the flip menu for the local video 2016-05-09 12:39:42 -05:00
hristoterezov c3338d3bf2 Implements custom context menu to flip the local video 2016-05-06 20:50:37 -05:00