Commit Graph

4899 Commits

Author SHA1 Message Date
Daniel Calviño Sánchez
534bbddc88 Create and destroy ParticipantDisplayItems based on call participants
The ParticipantDisplayItems were created and destroyed based on the peer
connections. Now a ParticipantDisplayItem of "video" type is associated
to a call participant, while an additional item is created and destroyed
depending on the state of the screen peer connection of the call
participant.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:51 +00:00
Daniel Calviño Sánchez
e17a999812 Rename methods to add and remove ParticipantDisplayItems
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:51 +00:00
Daniel Calviño Sánchez
5681084a14 Create and destroy helper listeners based on call participants
The listeners for call participant messages and for the call participant
nick provided by offers / answers were created and destroyed based on
the peer connections, although they were implicitly associated to a call
participant. Now they are explicitly created and destroyed based on its
associated call participant.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:51 +00:00
Daniel Calviño Sánchez
175944e932 Move handling of call participants to its own class
CallParticipant provides a read-only CallParticipantModel and internally
handles the data channel and peer connection events that modify the
model. Nevertheless, the CallParticipant requires certain properties to
be externally set, like the userId or the peer connections.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:50 +00:00
Daniel Calviño Sánchez
4aef76e347 Keep track of the stream in the peer connection
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:50 +00:00
Daniel Calviño Sánchez
18f21c4f48 Update ParticipantDisplayItem from CallParticipantModel
Instead of explicitly setting the values on the ParticipantDisplayItems
now the values are set on the CallParticipantModels, and the items are
automatically updated from their model when they change.

Different items are still used for the audio/video and screen shares of
the same participant, so the type is used to select from which
properties of the model is the item updated.

As the model may be updated from background threads it is explicitly
observed by the items from the main thread using a Handler shared by all
the items.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:50 +00:00
Daniel Calviño Sánchez
d72648379e Add model for (remote) call participants
Clients that modify the model would define the variables using the
mutable subclass, while clients that only need to access the model are
expected to use the read-only base class.

The read-only class provides an observer; as it is expected that the
model will be modified from background threads but observed from the
main thread the observer can be registered along a handler to be
notified on its thread, independently of on which thread the values were
set.

Currently there does not seem to be a need to observe each value on its
own, so the observer is notified in a coarse way when any value changes.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:50 +00:00
Daniel Calviño Sánchez
8a316d94f5 Notify that data set changed automatically when display item changes
Instead of explicitly calling "notifyDataSetChanged" after setting
values on a ParticipantDisplayItem now the adapter observes all its
items and calls "notifyDataSetChanged" automatically when any of them
changes.

Although this adds some boilerplate code it will make possible to update
the ParticipantDisplayItems and automatically propagate the changes to
the adapter when a model changes, rather than having to explicitly do it
from the CallActivity.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:50 +00:00
Daniel Calviño Sánchez
d67b04dff8 Reorder attributes
Generic final attributes first, followed by object specific final
attributes and then other object attributes.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:50 +00:00
Daniel Calviño Sánchez
5fe9154c9a Declare attributes set just once in constructor as "final"
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:50 +00:00
Daniel Calviño Sánchez
e887fde2a3 Remove unused getters and setters
Note that the session ID, user ID and the stream type attributes are
still kept, as they can be useful to identify the instance when
debugging.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:50 +00:00
Daniel Calviño Sánchez
339d65dff8 Handle the raw ICE connection state in the views
Rather than just providing a coarse "connected" or "not connected" value
now the views receive the raw ICE connection state. Combined with other
properties this will make possible to show a finer grained status (like
done in the WebUI), although for now just "connected" or "not connected"
is still shown as before.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2023-01-16 09:05:50 +00:00
Andy Scherzinger
2e2e96c91f
Merge pull request #2692 from nextcloud/dependabot/gradle/org.mockito-mockito-core-5.0.0
Build(deps): Bump mockito-core from 4.11.0 to 5.0.0
2023-01-16 09:21:48 +01:00
Nextcloud bot
ee0dadaf02
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-16 03:39:10 +00:00
Nextcloud bot
2efa5bb72e
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-16 03:38:52 +00:00
Nextcloud Android Bot
b2a23c3ccb Weekly 16.0.0 Alpha 02 2023-01-16 03:10:38 +00:00
dependabot[bot]
69bf849418
Build(deps): Bump mockito-core from 4.11.0 to 5.0.0
Bumps [mockito-core](https://github.com/mockito/mockito) from 4.11.0 to 5.0.0.
- [Release notes](https://github.com/mockito/mockito/releases)
- [Commits](https://github.com/mockito/mockito/compare/v4.11.0...v5.0.0)

---
updated-dependencies:
- dependency-name: org.mockito:mockito-core
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-16 02:26:48 +00:00
Nextcloud bot
a635078adb
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-15 03:35:52 +00:00
Nextcloud bot
4fb163aea0
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-15 03:35:33 +00:00
Nextcloud bot
bd3784c03c
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-14 03:37:48 +00:00
Nextcloud bot
95f6be8b6c
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-14 03:37:29 +00:00
Andy Scherzinger
2174dfc38d
Bump version to 16.0.0
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-01-13 12:10:11 +01:00
Nextcloud bot
94628b700e
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-13 03:52:28 +00:00
Nextcloud bot
66033adfa0
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-13 03:52:07 +00:00
Nextcloud bot
e81461ba80
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-12 03:38:17 +00:00
Nextcloud bot
2a247e50ea
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-12 03:37:57 +00:00
Andy Scherzinger
7d9996e6c1
Merge pull request #2676 from nextcloud/dependabot/gradle/com.github.nextcloud.android-common-ui-0.4.0
Build(deps): Bump ui from 0.3.0 to 0.4.0
2023-01-11 09:27:18 +01:00
Nextcloud bot
f0070f09e6
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-11 03:39:46 +00:00
Nextcloud bot
2317df8625
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-11 03:39:27 +00:00
dependabot[bot]
8d38c15a46
Build(deps): Bump ui from 0.3.0 to 0.4.0
Bumps ui from 0.3.0 to 0.4.0.

---
updated-dependencies:
- dependency-name: com.github.nextcloud.android-common:ui
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-11 02:04:17 +00:00
Nextcloud bot
2c9267be43
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-10 03:43:36 +00:00
Nextcloud bot
1df26c1b48
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-10 03:43:17 +00:00
Andy Scherzinger
09c5fae6bd
Merge pull request #2670 from nextcloud/dependabot/gradle/com.google.code.gson-gson-2.10.1
Bump gson from 2.10 to 2.10.1
2023-01-09 19:07:22 +01:00
Nextcloud bot
964bf17dac
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-09 03:40:45 +00:00
Nextcloud bot
0f11b50430
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-09 03:40:25 +00:00
Nextcloud Android Bot
fa23d02603 Weekly 15.2.0 Alpha 05 2023-01-09 03:12:06 +00:00
dependabot[bot]
6ace77aafd
Bump gson from 2.10 to 2.10.1
Bumps [gson](https://github.com/google/gson) from 2.10 to 2.10.1.
- [Release notes](https://github.com/google/gson/releases)
- [Changelog](https://github.com/google/gson/blob/master/CHANGELOG.md)
- [Commits](https://github.com/google/gson/compare/gson-parent-2.10...gson-parent-2.10.1)

---
updated-dependencies:
- dependency-name: com.google.code.gson:gson
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-09 02:04:10 +00:00
Nextcloud bot
be17f8a0ef
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-08 03:37:19 +00:00
Nextcloud bot
bec815ecad
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-08 03:36:59 +00:00
Nextcloud bot
4af5f7fa57
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-07 03:37:13 +00:00
Nextcloud bot
14017ae8e4
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-07 03:36:52 +00:00
Nextcloud bot
3f4c2eb3a8
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-06 03:39:04 +00:00
Nextcloud bot
a574f93112
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-06 03:38:44 +00:00
Marcel Hibbe
31a8eeb15b
Merge pull request #2667 from nextcloud/updateWebRtcTo108.5359.0
bump webrtc version to 108.5359.0
2023-01-05 11:06:43 +01:00
Nextcloud bot
a1b5209269
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-05 03:38:53 +00:00
Nextcloud bot
d99fb4674e
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-05 03:38:32 +00:00
Marcel Hibbe
c79199c1c3
bump webrtc version to 108.5359.0
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-01-04 16:31:29 +01:00
dependabot[bot]
dcc5cd0b43
Bump espressoVersion from 3.5.0 to 3.5.1
Bumps `espressoVersion` from 3.5.0 to 3.5.1.

Updates `espresso-core` from 3.5.0 to 3.5.1

Updates `espresso-contrib` from 3.5.0 to 3.5.1

Updates `espresso-web` from 3.5.0 to 3.5.1

Updates `espresso-accessibility` from 3.5.0 to 3.5.1

---
updated-dependencies:
- dependency-name: androidx.test.espresso:espresso-core
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: androidx.test.espresso:espresso-contrib
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: androidx.test.espresso:espresso-web
  dependency-type: direct:production
  update-type: version-update:semver-patch
- dependency-name: androidx.test.espresso:espresso-accessibility
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2023-01-04 02:01:35 +00:00
Nextcloud bot
d6e4c35b37
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-03 05:47:21 +00:00
Nextcloud bot
6c768158b5
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-01-03 05:46:38 +00:00