Commit graph

3880 commits

Author SHA1 Message Date
Marcel Hibbe
62777e936d
add account switcher for "share to"
fix to avoid share to screen when coming back from conversation to conversation list

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-09-21 11:51:59 +02:00
Andy Scherzinger
e30df81a18
Added monochrome icon for Android 13 "Themed icons" support.
Resolves #2407

Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-09-20 16:51:28 +02:00
Tim Krüger
91bc2abfa9
Merge pull request #2405 from nextcloud/bugfix/2384/themeTextActivityToolbar
Theme toolbar for m3 for Text preview activity
2022-09-20 12:04:02 +02:00
Nextcloud bot
3fcc75d7bd
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-20 04:35:38 +00:00
Andy Scherzinger
f7035f5306
Theme toolbar for m3
Resolves #2384

Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-09-19 16:52:55 +02:00
Tim Krüger
b3a3277aa2
Merge pull request #2395 from nextcloud/show-message-in-call-state-when-the-publisher-failed
Show message in call state when the publisher failed
2022-09-19 15:43:06 +02:00
Tim Krüger
dc70a4c9e3
Merge pull request #2393 from nextcloud/fix-icon-not-visible-in-call-state-message
Fix icon not visible in call state message
2022-09-19 15:36:20 +02:00
Tim Krüger
5bbd26028f
Merge pull request #2392 from nextcloud/fix-disposing-local-stream-when-the-call-activity-is-not-being-left
Fix disposing local stream when the call activity is not being left
2022-09-19 15:17:59 +02:00
Tim Krüger
109124fb3b
Merge pull request #2391 from nextcloud/fix-checking-lobby-state-from-chat-controller-while-in-a-call
Fix checking lobby state from chat controller while in a call
2022-09-19 15:08:54 +02:00
Tim Krüger
e47de0afc9
Merge pull request #2390 from nextcloud/provide-visual-feeback-when-a-participant-is-not-connected
Provide visual feeback when a participant is not connected
2022-09-19 13:56:07 +02:00
Tim Krüger
eb18231e25
Merge pull request #2389 from nextcloud/fix-self-video-size-after-coming-back-from-pip-mode
Fix self video size after coming back from pip mode
2022-09-19 11:05:51 +02:00
Tim Krüger
9712d05843
Merge pull request #2394 from nextcloud/fix-call-not-joined-again-if-reconnecting-while-in-pip-mode
Fix call not joined again if reconnecting while in PiP mode
2022-09-19 10:48:57 +02:00
Tim Krüger
615e67296d
Merge pull request #2388 from nextcloud/fix-issues-when-leaving-calls
Fix issues when leaving calls
2022-09-19 10:25:38 +02:00
Andy Scherzinger
679b601844
Merge pull request #2387 from nextcloud/fix-crash-after-hangup-due-to-modifying-a-list-while-iterating-over-it
Fix crash after hangup due to modifying a list while iterating over it
2022-09-19 09:33:44 +02:00
Daniel Calviño Sánchez
8364877f38
Fix crash after hangup due to modifying a list while iterating over it
"endPeerConnection()" removes the item from the list, so neither a
for-each loop nor an iterator can be used to traverse the list (as a
"ConcurrentModificationException" would be thrown). To solve that now
the list of connections is first traversed to get all the sessions, and
then the list of sessions is traversed to end the connections.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-19 09:17:12 +02:00
Nextcloud bot
4f691930e4
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-19 04:34:14 +00:00
Daniel Calviño Sánchez
13a04808d9 Ignore signaling messages when the call activity is closing
The call activity unregisters from the event bus events when stopped.
However, when the call activity is being closed the new activity can
start before the call activity is stopped; if the new activity causes
new signaling messages to be sent those messages were handled by the
call activity too.

The chat controller joins the conversation again when it is attached,
and the call activity automatically joins the call when it receives a
"roomJoined" event. Due to all that, when the call activity was closed
and the chat controller was opened the call was joined again (and then
left once the call activity was finally destroyed).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-19 05:52:34 +02:00
Daniel Calviño Sánchez
fdbcc3b16d Close the call activity when leaving the call only if remotely triggered
If the local participant leaves the call the participant list will be
updated with the new call flags. However, that does not necessarily mean
that a moderator ended the call; the call could have been left too by
the Android app due to a forced reconnection or a time out when starting
the call. In those cases the call activity should be kept open, and only
when the local participant left the call due to a remote action the call
activity should be closed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-19 04:29:04 +02:00
Daniel Calviño Sánchez
f94db44b4d Enforce leaving state when shutting down the activity
When the view is shutting down the call is always left, so the status
should be accordingly set.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-19 04:27:03 +02:00
Daniel Calviño Sánchez
c21e1d7360 Show message in call state when the publisher failed
When the HPB is used and the publisher fails (which is a disconnection
that can not be automatically solved by itself) a forced reconnection is
triggered. This restarts the call, so some feedback should be provided
in the UI about it.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-19 01:57:25 +02:00
Daniel Calviño Sánchez
c3f1f6c3a8 Show participant as soon as found rather than once connected
As the participants that are not connected yet are clearly marked as
such now the participants are shown as soon as they are found rather
than waiting for a connection to be established.

There is a drawback, however; if a participant will never have a
connection (for example, if the HPB is used and that participant does
not have publishing permissions) the participant will be endlessly shown
with the progress bar. Nevertheless, before they were not shown at all,
which was probably even more puzzling.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-19 01:46:41 +02:00
Daniel Calviño Sánchez
2f44e6fd19 Show progress bar on local participant when not connected
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-18 23:26:26 +02:00
Daniel Calviño Sánchez
a76e519219 Show progress bar on remote participant when not connected
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-18 23:26:26 +02:00
Daniel Calviño Sánchez
c2ef651ce3 Store whether a participant is connected or not
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-18 23:26:26 +02:00
Daniel Calviño Sánchez
719797b1d1 Notify a data set change only if the properties are set
Note that this still notifies a data set change if the properties are
set to the same value that they had already, but at least it is not
notified when no data was actually changed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-18 23:26:26 +02:00
Daniel Calviño Sánchez
9f445efc1c Post event when a participant is connected and disconnected
RTCPeerConnections have several states but, for simplicity, for now the
events posted reflect only if the connection is fully established or
not (which includes both a broken connection or an established
connection that is unstable or being updated), which is enough for a
basic information about the connection state in the UI.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-18 23:25:57 +02:00
Daniel Calviño Sánchez
6481399293 Fix disposing local stream when the call activity is not being left
The local stream is set only when the activity is created. However, it
was disposed when hanging up, which happens not only when closing the
activity, but also in cases in which the call activity is kept open and
the participant reconnects to the call (for example, when starting the
call times out), which caused the local stream to freeze. Now the local
stream is disposed only when the call activity is destroyed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-18 14:26:58 +02:00
Daniel Calviño Sánchez
7bb84fcf02 Fix icon not visible in call state message
The call state uses a RelativeLayout with a wrap content height where
the state icons (including the progress bar) position was set as above
the message. However, this caused the call state to wrap only the text;
the icons were indeed above the message, but out of the view boundaries.

Now the icons are wrapped in a FrameLayout and the text position is set
below that frame layout instead, which causes the RelativeLayout height
to correctly wrap its content.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-18 14:25:56 +02:00
Daniel Calviño Sánchez
c01c052181 Fix call not joined again if reconnecting while in pip mode
When a publisher fails during a call a reconnection is triggered, which
first leaves the call and then initiates it again. Initiating a video
call first request the permissions, but it seems that the request hangs
when done while in PiP mode. Due to this if the publisher fails while in
PiP mode and the call is initiated again the call will be simply left,
without reconnecting to it.

The problem is specific to video calls, as in voice only calls
"onMicrophoneClick" is used instead, and it explicitly checks if the
permissions are already granted. Checking if the permissions are already
granted before requesting them is also recommended in the Android
developer guide, and as the permissions are requested during the
original call initialization it is expected that they will be already
granted if the call is changed to PiP mode, so the problem is work
arounded that way (but if the permissions are not granted when the
publisher fails in PiP mode the problem would still happen, although
that should be quite uncommon).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-18 14:25:23 +02:00
Daniel Calviño Sánchez
5513f9c88f Fix checking lobby state from chat controller while in a call
The chat controller gets the room information again and again to check
whether the lobby is enabled and update the UI as needed. This loop is
stopped when the chat controller is detached, but only if no call is
active; if a call is active the room information will still be got again
and again, even if the chat controller is detached.

To solve that now getting the room information is simply stopped when
the chat controller is detached, no matter if there is an active call or
not, and started again when joining the room, which is done when the
chat controller is attached.

However, this is just a quick fix that does not solve the issue in all
cases; the loop can still continue during calls, for example if the
request to get the information is sent before detaching the controller
and the response is received once the controller was detached, as that
would start the timer again.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-18 14:24:26 +02:00
Nextcloud bot
bc5b6f9022
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-18 04:27:15 +00:00
Nextcloud bot
6ef52a5c32
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-17 04:33:25 +00:00
Nextcloud bot
5bd7e964eb
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-16 17:06:32 +00:00
Andy Scherzinger
713fc1f10d
Merge pull request #2371 from nextcloud/dependabot/gradle/com.android.tools.build-gradle-7.3.0
Bump gradle from 7.2.2 to 7.3.0
2022-09-16 16:36:33 +02:00
Marcel Hibbe
5e7b882fba
Merge pull request #2379 from nextcloud/noid/fixToKeepNotificationChannels
fix to keep notification channels
2022-09-16 15:14:06 +02:00
Marcel Hibbe
93da361bf1
fix to keep notification channels
new notification channels must not be deleted. for this an enum was created, so that in removeOldNotificationChannels there is no manual work to do

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-09-16 15:10:15 +02:00
Andy Scherzinger
5a2b04740b
move streams to utilize "use"
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-09-16 14:48:23 +02:00
Andy Scherzinger
58436286c7
move to namespace
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-09-16 14:09:40 +02:00
Andy Scherzinger
928b9d5aa3
Remove unneeded nonNull annotations in kotlin
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-09-16 13:35:45 +02:00
Andy Scherzinger
8acb646383
close streams after use
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-09-16 13:35:10 +02:00
Nextcloud bot
fb6b4d7c96
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-16 08:17:37 +00:00
Marcel Hibbe
120219a711
Merge pull request #2351 from nextcloud/feature/1587/directVideoUpload2
direct video upload + chunked upload
2022-09-16 08:36:04 +02:00
Nextcloud bot
772eb5da72
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-16 04:27:16 +00:00
Daniel Calviño Sánchez
892ffe87dd Fix self video size after coming back from PiP mode
When coming back from PiP mode the self video occupied the full height
of the window. Now the height is set to the default value set in the
layout, so it matches the size used when starting the call activity.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-15 23:41:24 +02:00
Daniel Calviño Sánchez
85c644e5b3 Add named dimension for the long side of the self video
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-15 23:39:59 +02:00
Daniel Calviño Sánchez
a605c5df9f Rename dimension to better describe its purpose
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-09-15 23:34:49 +02:00
Marcel Hibbe
d230d0faf2
add chunked upload for files
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-09-15 16:22:59 +02:00
Marcel Hibbe
b064190d35
add direct video upload
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-09-15 16:22:57 +02:00
Nextcloud bot
53e3543839
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-15 04:34:50 +00:00
Andy Scherzinger
0f35e36047
Improve chat bubble sizes
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-09-13 10:58:44 +02:00
Nextcloud bot
c6cb85572c
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-10 04:36:35 +00:00
Nextcloud bot
e62940db01
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-09 04:31:05 +00:00
Nextcloud bot
ab3e7036a2
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-08 04:31:30 +00:00
Tim Krüger
7deb8bef8d
Merge pull request #2355 from nextcloud/chrore/fix-warnings-in-chatController
Fix warnings in ChatController
2022-09-07 15:41:14 +02:00
Tim Krüger
0c06c8b2eb
Rename and reduce complexity of function 'processMessages'
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-07 12:31:03 +02:00
Tim Krüger
ae0a9d6aae
Reduce complexity for 'ChatController#processMessagesFromTheFuture'
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-07 12:19:06 +02:00
Tim Krüger
d0df4039c6
Fix to deeply nested function processHeaderChatLastGiven
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-07 11:34:59 +02:00
Tim Krüger
5bb63fd58d
Reduce nested block depth for updateReadStatusOfAllMessages
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-07 10:51:09 +02:00
Tim Krüger
57ddf9af60
Extract duplicated code to function
The newly created function 'ChatController#determinePreviousMessageIds'
contains now the duplicated code from functions
'ChatCtonroller#processMessagesFromTheFuture' and
'ChatController#processMessagesNotFromTheFuture'.

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-07 10:34:45 +02:00
Tim Krüger
4cab75f6ed
Reduce complexity for function 'ChatController#processMessages'
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-07 08:56:35 +02:00
Nextcloud bot
44da22d3d8
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-07 04:32:13 +00:00
Tim Krüger
f762d0c9e5
Remove unused parameter 'timeout' from 'ChatController#processMessages'
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-06 18:04:03 +02:00
Tim Krüger
2d5969964d
Make properties private if possible
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-06 17:58:11 +02:00
Tim Krüger
69eea8f568
Use indexing insteat of 'Map#get'
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-06 17:52:51 +02:00
Tim Krüger
7b1eda1b85
Replace 'Integer#toString' with Kotlin functions
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-06 17:52:07 +02:00
Tim Krüger
7dec6dd4dd
Fix some spelling issues
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-06 17:50:18 +02:00
Tim Krüger
bb4bccbd08
Simplify boolean expressions
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-06 17:44:37 +02:00
Tim Krüger
7c8722bfe4
Convert string concatination to template
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-06 17:39:23 +02:00
Tim Krüger
a543bdc7a7
Remove assingments from 'if' clauses
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-06 17:35:13 +02:00
Tim Krüger
f347fe1255
Remove unnecessary elvis operator (?:)
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-06 17:31:27 +02:00
Tim Krüger
8f6e759d48
Remove unnecessary safe calls and non-null assertions
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-09-06 17:26:09 +02:00
Nextcloud bot
d976351a05
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-06 04:28:02 +00:00
Nextcloud bot
153449c0df
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-05 04:27:03 +00:00
Nextcloud bot
3d4cb0f4d2
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-04 04:23:29 +00:00
Nextcloud bot
819162bc5e
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-03 04:31:08 +00:00
Nextcloud bot
c5db933296
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-02 04:25:10 +00:00
Andy Scherzinger
990c1d5b66
remove unused resource
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-09-01 09:34:18 +02:00
Andy Scherzinger
5a8a33f39e
end-align timestamps of messages
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-09-01 09:29:15 +02:00
Andy Scherzinger
ffdbead0f7
make system message items smaller in size and end-align the timestamp
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-09-01 09:29:10 +02:00
Nextcloud bot
6f969f46ba
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-09-01 04:32:48 +00:00
Andy Scherzinger
d60bc4322e
remove unused resource
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-08-31 19:58:33 +02:00
Álvaro Brey
e5879eb4be
Minor fixes after rebase
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-08-31 19:54:06 +02:00
Álvaro Brey
704df25a6d
Refactor and extract ViewThemeUtils to common library
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-08-31 19:54:05 +02:00
Álvaro Brey
009634da53
Extract MaterialSchemesImpl and ColorUtil to commons lib
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-08-31 19:54:05 +02:00
Álvaro Brey
d18fc7c9f8
Use common library for theming
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-08-31 19:54:02 +02:00
Nextcloud bot
5a8eee8814
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-08-31 04:18:11 +00:00
Nextcloud bot
db2403c946
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-08-30 12:11:04 +00:00
Valdnet
96a79b0195
i18n: Correct text string
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2022-08-30 09:10:25 +02:00
Nextcloud bot
6c6d991603
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-08-30 04:20:48 +00:00
Tim Krüger
cd25a7e14d
Merge pull request #2326 from nextcloud/feature/2134/allow-guests
Move allow guests preferences to conversation info
2022-08-29 20:19:37 +02:00
Tim Krüger
f10d74f0ed
Replace 'List.get(i)' with iterator to loop over list
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-08-29 19:30:01 +02:00
Andy Scherzinger
62fa8c9645
Improve dialog theming for M3
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-08-29 19:04:27 +02:00
Tim Krüger
1d0ff0bade
Change to not deprecated 'WorkManager.getInstance'
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-08-29 18:58:06 +02:00
Tim Krüger
d8f37bec42
Replace unused lambda parameters by '_'
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-08-29 18:57:59 +02:00
Tim Krüger
84116e4cb2
Add guests access preferences to conversation info
Currently a conversation can be made public via the bottom sheet menu in
the conversation list.

With this commit this is added to the conversation info to align with Talk web
and iOS. The functionality is removed from the bottom sheet menu in the
conversation list.

Resolves: #2134

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-08-29 18:42:56 +02:00
Nextcloud bot
74741b3c2b
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-08-29 04:21:16 +00:00
Nextcloud bot
abbc1d4e1e
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-08-28 04:17:48 +00:00
Nextcloud bot
4ac1ec9522
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-08-27 04:17:44 +00:00
Nextcloud bot
68eaa311b1
[tx-robot] updated from transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2022-08-26 04:18:37 +00:00
Valdnet
c01b02ff18
i18n: Changing verb
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2022-08-25 14:12:19 +02:00