Граф коммитов

3320 Коммитов

Автор SHA1 Сообщение Дата
marco d72d9fb60a Improve modal layout
Signed-off-by: marco <marcoambrosini@pm.me>
2022-04-05 12:17:34 +02:00
Nikola 7255540d30 6927: fixed padding style for room selector button
Signed-off-by: Nikola <nikola.gladovic@nextcloud.com>
2022-04-05 11:57:30 +02:00
Nikola 9a504ffe59 6927: fixed test for room selector
Signed-off-by: Nikola <nikola.gladovic@nextcloud.com>
2022-04-05 11:57:30 +02:00
Nikola 08379c696a 6927: updated button for room selector
Signed-off-by: Nikola <nikola.gladovic@nextcloud.com>
2022-04-05 11:57:30 +02:00
Marco 26d30d5b24
Merge pull request #7054 from CommanderRoot/refactor/rm-deprecated-substr
Replace deprecated String.prototype.substr()
2022-04-05 11:22:51 +02:00
Joas Schilling a6f26b2d63
Merge pull request #7034 from nextcloud/fix-reconnections-on-single-media-permission-changes
Fix reconnections on single media permission changes
2022-04-04 12:47:53 +02:00
Joas Schilling 46350aeaf6
Merge pull request #7083 from nextcloud/bugfix/noid/fix-messagebuttonsbar-error
Fix closing MessageButtonsBar on Firefox
2022-04-04 12:31:23 +02:00
Joas Schilling d131783760
Merge pull request #6980 from nextcloud/feat/6927/button-for-message-list
6927: updated button for message list
2022-04-04 12:18:27 +02:00
Daniel Calviño Sánchez 6d3df1431e Fix not joining call again due to call flags in forced reconnections
When the HPB is not used forcing a reconnection causes the call to be
left and then joined again. Although it was waited for the call to be
left first before joining again in some cases it could happen that,
after sending the join request but before receiving its response, the
"usersInRoom" event was received. In that case the call flags for the
participant will be "disconnected" (as at this point it is actually
disconnected), but as the join request was already sent it is seen as "a
moderator ended the call", and thus the call is left again. To prevent
that now it is explicitly waited for the "disconnected" flags to be
received and, then, the call is joined again.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-04-01 21:04:29 +02:00
marco 832e041ddc Fix closing MessageButtonsBar on Firefox
Signed-off-by: marco <marcoambrosini@pm.me>
2022-04-01 11:46:24 +02:00
Daniel Calviño Sánchez 0167394dd3 Fix joining call before leaving first in forced reconnections
When the HPB is not used forced reconnections just leave and then join
the call again. However, it was not waited for the call to be left first
before joining it again, so it could happen that the join request ended
being processed first and thus once the leave request was processed the
participant did not join again.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 20:32:05 +02:00
Daniel Calviño Sánchez b5112441b3 Remove no longer used "startedWithMedia" variable
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 17:09:57 +02:00
Daniel Calviño Sánchez 82236e61f8 Fix forced reconnections when replacing tracks
When tracks are replaced the forced reconnections were based on whether
the call was started with local media active or not. However, in some
cases a forced reconnection was needed even if the call was started with
local media active. For example, if after joining a call the user
removed the audio and video devices and then added them again, as if
another participant joined the call in the meantime that participant
would not try to establish a connection after the devices were selected
again, as currently the clients only establish a connection if another
participant has media when the list of participants in the call change.

Besides that, when the flags are updated now the flags are based only in
the current tracks rather than on the previous flags, as if the flags
were updated again before the previous request finished the second
update would be based on the original flags.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 17:09:57 +02:00
Daniel Calviño Sánchez 41c9186ac6 Update call flags if needed after joining a call
When the local participant joins a call in most cases the call flags
already reflect the current media being published. However, if the
active media changed since the request to join the call was sent (for
example, if a track started during a forced reconnection, which could
happen if audio was disallowed and video allowed at the same time) the
call flags would need to be updated.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 17:09:57 +02:00
Daniel Calviño Sánchez c39e3a0033 Disable media when disallowed
If publishing media is disallowed now the media is also disabled to
ensure that, if the media is then allowed again, it will not be
unexpectedly enabled.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 17:09:57 +02:00
Daniel Calviño Sánchez 0cc75c5b09 Fix reconnections on single media permission changes
Until now the audio and video publishing permissions were handled as a
whole; either the local participant was able to publish both audio and
video or not. However, the permissions API is actually finer grained,
and it is possible to have one without the other. Now the allowed state
of local media is updated based on the publishing permissions, which
automatically starts and stops the tracks as needed. Nevertheless, in
some cases forced reconnections need to be explicitly triggered to
remove tracks from the senders, as well as to start and stop the local
media.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 17:09:57 +02:00
Daniel Calviño Sánchez a7a9e8368a Add getters to check if media is allowed or disallowed
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 17:09:56 +02:00
Daniel Calviño Sánchez c91ebaae58 Expose methods to allow or disallow media
These methods will be used to allow or disallow media based on the
permission changes.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 17:09:56 +02:00
Daniel Calviño Sánchez 0c52760175 Update tracks based on changes in the allowed media
If media is allowed the track will be started (if a device is
available), and if media is disallowed the current track of its kind
will be stopped.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 17:09:56 +02:00
Daniel Calviño Sánchez ea71724c2b Replace constraints when starting the node with "setXXXAllowed" methods
The constraints given to "MediaDevicesSource.start()" were used to limit
the media to be got. However, this only applied in the initial start; if
a new device from a media kind initially disallowed was selected later
the node got a track from it. Now "setAudioAllowed(bool)" and
"setVideoAllowed(bool)" are introduced to restrict the media to be got
whenever the node is active.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 17:09:54 +02:00
Daniel Calviño Sánchez 8665c32abc Generate actual constraints from the available tracks
The constraints are used in the caller code for things like setting the
current call flags. The constraints were modified by the
MediaDevicesSource and the MediaDevicesManager depending on the
available devices, but they did not reflect things like a node further
in the pipeline failing to set the track (for example, if the
VirtualBackground failed hard) and causing the final track to be null.
Basing the constraints on the tracks instead should address those
(corner) cases while behaving the same in the general cases.

Besides that, this will make possible to remove the constraints from
"MediaDevicesSource.start()" in a following commit.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 17:09:00 +02:00
Daniel Calviño Sánchez ab5b6c9270 Add unit tests for MediaDevicesSource
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 17:08:56 +02:00
Daniel Calviño Sánchez 97c8703c04 Remove unused "constraints" parameters from events
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-31 09:46:43 +02:00
marco 2ecbd5a2c4 Close reactions menu after reacting
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-29 23:16:05 +02:00
marco 1ae1c99c13 Keep reactions menu open
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-29 16:50:19 +02:00
Marco 95001fd9a5
Merge pull request #7061 from nextcloud/bugfix/noid/fix-user-has-reacted
Fix detection if the user (not author) reacted already
2022-03-29 14:31:49 +02:00
Joas Schilling e6b811105c
Allow to react to file and object shares
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-28 17:00:02 +02:00
Joas Schilling 19a6916d0d
Fix detection if the user (not author) reacted already
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-28 16:59:02 +02:00
Joas Schilling 07b3010c34
Merge pull request #7062 from nextcloud/bugfix/noid/improve-reaction-summary
Improve reaction summary: make yourself "You" and sort to the beginning
2022-03-28 16:51:46 +02:00
Marco 363f2f6ba5
Merge pull request #7044 from nextcloud/bugfix/6665/cannot-copy-link-of-open-conversation-without-joining
Can not copy link of open conversation without joining
2022-03-28 14:18:08 +02:00
marco 5007c70c8a Fix tests
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-28 12:07:34 +02:00
Joas Schilling 17eadda25b
Improve reaction summary: make yourself "You" and sort to the beginning
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-25 16:05:18 +01:00
Nikola 11b060a248 7057: fixed success, error message style for call button
Signed-off-by: Nikola <nikola.gladovic@nextcloud.com>
2022-03-25 08:58:51 -06:00
marco 15687b4e3d Add line before rule
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-25 13:01:39 +01:00
marco 420a8227f3 Disable eslint for v-html
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-25 13:01:39 +01:00
Tobias Speicher 68b340fe23
Replace deprecated String.prototype.substr()
.substr() is deprecated so we replace it with .slice() which works similarily but isn't deprecated

Signed-off-by: Tobias Speicher <rootcommander@gmail.com>
2022-03-24 21:53:23 +01:00
Joas Schilling f400bc5a73
Can not copy link of open conversation without joining
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-24 21:51:04 +01:00
Joas Schilling 7c325c6936
Allow to delete shared files and objects from the web
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-24 21:50:31 +01:00
Joas Schilling ae62e05fdd
Merge pull request #7049 from nextcloud/feature/6995/button-position-in-chat-message
6995: updated button position in chat message
2022-03-24 17:10:30 +01:00
Joas Schilling 3b43e063fd
Merge pull request #7024 from nextcloud/feature/noid/reactions-part-two
👍 Reactions part two
2022-03-24 17:00:32 +01:00
Joas Schilling ceb11c67a8
Merge pull request #6813 from nextcloud/feature/buttonsupgrade/setguestusername
Upgrade buttons for setGuestUsername
2022-03-24 16:17:19 +01:00
marco 55923f471c Use findComponent instead of find
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-24 16:12:37 +01:00
marco 67b200422c Remove unneeded logging
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-24 15:58:58 +01:00
marco fdb7cbab19 Disallow reactions for file shares
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-24 14:01:45 +01:00
marco d1b8e3ea3c Use conditional rendering only to show and hide the MessageButtonsBar component
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-24 14:01:45 +01:00
marco cdfe363f2e Do not show reaction button for changelog messages
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-24 14:01:45 +01:00
marco 090263a105 Do not close messageButtonsBar if emojipicker is open
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-24 14:01:45 +01:00
marco 462d0653c9 Always remove reaction when re-clicking same emoji
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-24 14:01:45 +01:00
marco 2af63e18f8 Properly wrap reactions
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-24 14:01:45 +01:00
marco afe581a243 Fix menus and tooltips
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-24 14:01:45 +01:00
marco 65d4ee154a Add tests for reactions in the message component
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-24 14:01:45 +01:00
Joas Schilling 72e1a2084e
Sort guests behind online logged in users
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-24 13:04:41 +01:00
Nikola d07aefc9b0 6995: updated button position in chat message
Signed-off-by: Nikola <nikola.gladovic@nextcloud.com>
2022-03-23 14:15:23 -06:00
Joas Schilling 15bfeed023
Fix handling of the translation string
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-23 17:11:07 +01:00
marco 325f29ffb6
Upgrade buttons for setGuestUsername
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-23 17:10:42 +01:00
Joas Schilling 9094628f32
Don't use the avatar for the callview background, to save O(n^2) requests
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-22 14:10:15 +01:00
Joas Schilling 9b6104cb7d
Merge pull request #7033 from nextcloud/bugfix/noid/fix-broken-avatars-in-conversation-creation
Fix broken avatars in conversation creation
2022-03-22 12:47:55 +01:00
Marco 48cd5a2a1d
Merge pull request #7007 from nextcloud/feat/6927/button-for-upload-editor
6927: updated button for upload editor
2022-03-22 12:17:52 +01:00
marco a02fde5797
Fix some eslint warnings
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:28 +01:00
marco 1dc85e5b3e
Fix duplicate with same reaction for multiple users
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:28 +01:00
marco 1b1e3f4ac9
Allow adding more reactions from the MessageButtonsBar
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:28 +01:00
marco cb3d53aa11
Fix delete message tests
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:28 +01:00
marco e62766fa70
Move delete method to the message component
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:28 +01:00
marco a32ee92620
Fix more tests
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:28 +01:00
marco 68f41bdb64
Fix custom action test
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:28 +01:00
Joas Schilling 022be5a31e
Fix MessageButtonsBar test
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-21 12:08:28 +01:00
marco 28693f2e92
Fix some tests
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:27 +01:00
marco ae36a5a501
Fix reply functionality
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:27 +01:00
marco 8a2f128e74
Use the API response to update reactions details
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:27 +01:00
marco fe47a6b1f7
Filter out reactions from the messagesList getter
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:27 +01:00
marco 073456c3e9
Fetch reactions only when hovering reactions bar
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:27 +01:00
marco dff5d31602
temp
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:27 +01:00
marco d3d8f124dc
Add reaction store and move some logic there
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:27 +01:00
marco 8ca032b1b8
Do not show deleted reaction messages
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:27 +01:00
marco 12ae6572e1
Show popover with reaction details on the reactions
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:27 +01:00
marco 380c193396
Create a dedicated getter to know whether a message has detailed reaction or not
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:26 +01:00
marco d2f05c1485
Add store methods
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:26 +01:00
marco aca33f5de2
Create simplified reactions getter for messages
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:26 +01:00
marco 7f1d2e1e06
Get reaction details on hover
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:26 +01:00
marco a76229ca5c
add services for removing reactions from messages
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:26 +01:00
marco 207b935e77
Add emoji-picker in reactions bar
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:26 +01:00
marco eefa6c8b22
Style reactions buttons
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:26 +01:00
marco c5a86c55af
Do not display reaction system messages
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:26 +01:00
marco b11ac3dacd
Add ability to add reactions to messages
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:26 +01:00
marco 42b321ee61
Create emoji sub-menu
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:26 +01:00
marco 1f6bf9c384
Fix forwarder
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:25 +01:00
marco 83900e1cf0
Add some required props to the tests
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:25 +01:00
marco b3ea65f6d1
create MessageButtonsBar component
Signed-off-by: marco <marcoambrosini@pm.me>
2022-03-21 12:08:25 +01:00
Joas Schilling e52254b2c2
Fix broken avatars in conversation creation
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-21 11:59:40 +01:00
Marco c983d907cc
Merge pull request #6987 from nextcloud/feat/6927/button-for-description
6927: updated button for description
2022-03-21 10:28:08 +01:00
Joas Schilling 307af23404
Fix position of primary action in action
Signed-off-by: Joas Schilling <coding@schilljs.com>
2022-03-19 21:57:21 +01:00
Daniel Calviño Sánchez f6a8f00cd9 Revert "Fix participant permissions not reloaded when general permissions change"
This reverts commit 99def03db2.

The previous fix was flawed, as the participant permissions were
reloaded only for the participant who changed the general permissions.
Moreover, now all the participants reload the participant list both with
and without HPB when the general permissions change, so the previous fix
is no longer needed even for the participant who made the change.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-17 14:04:10 +01:00
Joas Schilling 7d46646904
Merge pull request #7014 from nextcloud/fix-media-automatically-enabled-after-selecting-a-device-during-a-call
Fix media automatically enabled after selecting a device during a call
2022-03-17 09:53:45 +01:00
Joas Schilling 35e35f42da
Merge pull request #7013 from nextcloud/fix-call-flags-update-when-track-is-disabled
Fix call flags update when track is disabled
2022-03-17 08:41:08 +01:00
Daniel Calviño Sánchez 8c7461590e Fix call flags update when track is disabled
When the call flags were updated after a renegotiation the senders were
checked to decide the flags to set. However, only the track attribute
was checked; when a track is disabled the track is nullified in the
sender and stored in "trackDisabled" instead, so the call flags were not
properly set if any of the tracks was disabled when a new one was added.

Note that when a local track is replaced the call flags are updated and,
in that case, the right flags are used, so sometimes this issue could be
masked by that.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-17 05:56:58 +01:00
Daniel Calviño Sánchez caf6e2131c Fix initial state not set when joining a call without media
The saved state was restored only when joining a call with media. This
was not a problem for audio or video, as in that case they were
automatically disabled due not having media available, but it caused the
virtual background state to be the default one or the one set in a
previous call.

Rather than also restoring the state after failing to start media the
state is now restored even before the media is tried to be initialized.
This ensures that the state will be the expected one once the media is
initialized, and with that prevent some unneeded changes back and forth
of the tracks caused by adjusting the audio, video and virtual
background once the tracks were already started.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-17 03:23:01 +01:00
Daniel Calviño Sánchez 69dffa6eda Replace code block with call to identical method
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-17 03:22:31 +01:00
Daniel Calviño Sánchez 0915b5cd9a Rename method to better match its behaviour
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-17 03:20:43 +01:00
Daniel Calviño Sánchez 3af8e1a9d1 Fix state not saved to local storage if call started without media
The enabled state of media is saved per conversation using the
conversation token. However, the token was not initialized when joining
a call without media, so either an empty token or a token from a
previous call was used. To solve this now the token is set not only if
media was started, but also if it failed to start.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-03-17 03:16:16 +01:00
Joas Schilling 907a1c8b6f
Merge pull request #6986 from nextcloud/feat/6927/button-for-danger-zone
6927: updated button for danger zone
2022-03-16 17:24:25 +01:00