Commit Graph

8419 Commits

Author SHA1 Message Date
Marcel Hibbe
69ddeaa06a
use lifecycleScope from chatActivity in OutcomingTextMessageViewHolder
defining an own scope and clearing it via onViewRecycled did not work out somehow (offline icon was wrong)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-16 14:29:12 +01:00
renovate[bot]
0eabff6176
Update dependency androidx.datastore:datastore-preferences to v1.1.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-16 13:20:27 +00:00
renovate[bot]
ed13698c8f
Update dependency androidx.datastore:datastore-core to v1.1.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-16 12:55:06 +00:00
Marcel Hibbe
6e1114d4d8
fix TooManyRequestsException
By using
networkMonitor.isOnline.first()
the function
unregisterNetworkCallback
was triggered, which sometimes causes the ConnectivityManager$TooManyRequestsException.

So each time isOnline.first() was called, the callbackFlow would:
- Register a new NetworkCallback.
- Emit a value and cancel the flow.
- Unregister the NetworkCallback.

The exception was:
Exception android.net.ConnectivityManager$TooManyRequestsException:
  at android.net.ConnectivityManager.convertServiceException (ConnectivityManager.java:3771)
  at android.net.ConnectivityManager.sendRequestForNetwork (ConnectivityManager.java:3960)
  at android.net.ConnectivityManager.sendRequestForNetwork (ConnectivityManager.java:3967)
  at android.net.ConnectivityManager.registerNetworkCallback (ConnectivityManager.java:4349)
  at android.net.ConnectivityManager.registerNetworkCallback (ConnectivityManager.java:4319)
  at com.nextcloud.talk.data.network.NetworkMonitorImpl$isOnline$1.invokeSuspend (NetworkMonitorImpl.kt:61)

To fix this, the cold flow from callbackFlow is converted to a StateFlow.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-16 13:50:51 +01:00
Marcel Hibbe
ce7ed877ca
Merge pull request #4611 from nextcloud/bugfix/4610/fixNpeCurrentUserInConvList
hopefully fix NPE for currentUser in addToConversationItems
2025-01-16 12:48:53 +00:00
Nextcloud bot
44c84dd1c5
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-16 03:02:48 +00:00
Marcel Hibbe
13e5626159
hopefully fix NPE for currentUser
It seems there could have been a race condition because currentUser was initialized too late.
 I was not able to reproduce but hopefully this fixes it:
 - initialize currentUser earlier (moved from onResume to onCreate)
 - use currentUserProvider instead userManager

NPEs were reported via gplay:

1)
Exception java.lang.NullPointerException:
  at com.nextcloud.talk.conversationlist.ConversationsListActivity.addToConversationItems (ConversationsListActivity.kt:851)
  at com.nextcloud.talk.conversationlist.ConversationsListActivity.access$addToConversationItems (ConversationsListActivity.kt:151)
  at com.nextcloud.talk.conversationlist.ConversationsListActivity$initObservers$5$1.invokeSuspend (ConversationsListActivity.kt:394)
  at com.nextcloud.talk.conversationlist.ConversationsListActivity$initObservers$5$1.invoke (Unknown Source:8)
  at com.nextcloud.talk.conversationlist.ConversationsListActivity$initObservers$5$1.invoke (Unknown Source:4)

2)
Exception java.lang.RuntimeException:
  at android.app.ActivityThread.performResumeActivity (ActivityThread.java:5427)
  at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:5508)
  ...
Caused by java.lang.NullPointerException:
  at com.nextcloud.talk.conversationlist.ConversationsListActivity.shouldShowNotificationWarning (ConversationsListActivity.kt:1557)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-15 19:11:24 +01:00
parneet-guraya
6c67bf7b96
timeout option immediate
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-15 11:28:32 +01:00
Marcel Hibbe
db8c4de028
fix to not cut off unread mentions bubble
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-15 10:33:52 +01:00
Nextcloud bot
172eddb217
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-15 03:03:33 +00:00
rapterjet2004
19aec5460a
figured it out - was an error with offline conversations not syncing. Chat permissions were updated on server, but not on device.
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-14 16:35:55 +01:00
Nextcloud bot
f0d7ff53c6
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-14 01:43:51 +00:00
Nextcloud Android Bot
36716fa788 Weekly 21.0.0 Alpha 09 2025-01-13 03:12:47 +00:00
Nextcloud bot
6638f449a6
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-13 03:01:44 +00:00
Nextcloud bot
d3b3052436
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-12 03:13:26 +00:00
Nextcloud bot
7851de68e9
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-11 03:01:45 +00:00
github-actions[bot]
60bae8784e
Merge pull request #4587 from nextcloud/renovate/daggerversion
Update daggerVersion to v2.55
2025-01-10 13:00:09 +00:00
renovate[bot]
6ed20f4b13 Update daggerVersion to v2.55
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-10 13:42:47 +01:00
Marcel Hibbe
cd096366c5
change icons for message sending and messages sending failed
remove shadowed var

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 13:18:47 +01:00
Marcel Hibbe
68065d7e21
fix lint warning
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:32 +01:00
Marcel Hibbe
aa5b4d028a
remove click listener for failed messages (use default longclick)
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:32 +01:00
Marcel Hibbe
3094054b73
change visibility of temp message actions
during sending: edit and delete should not be shown..

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:32 +01:00
Marcel Hibbe
1504e51499
add strings for message status icons
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:32 +01:00
Marcel Hibbe
1731ca0985
remove flickering of status icons
by moving networkMonitor.isOnline to separate check and by setting
binding.checkMark.visibility = View.INVISIBLE
binding.sendingProgress.visibility = View.GONE
before setting the status icons
to to handle recyclerview behavior

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:32 +01:00
Marcel Hibbe
f665b1c116
save "silent" in chat messages (incl DB)
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:32 +01:00
Marcel Hibbe
3fdaa4bdcd
fix parent message for temp messages
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:31 +01:00
Marcel Hibbe
4c795139ac
add DB migration
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:31 +01:00
Marcel Hibbe
a58607b547
resolve detekt warnings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:31 +01:00
Marcel Hibbe
560f955002
comment in opHelperFactory
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:31 +01:00
Marcel Hibbe
3dca00bac0
resolve warnings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:31 +01:00
Marcel Hibbe
ab007fc444
resolve codacy/ktlint warnings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:30 +01:00
Marcel Hibbe
8f1f22fd54
Fix duplicate "Today"-bug
If user sent a message as a first message in today's chat, the temp message will be deleted when messages are retrieved from server, but also the date has to be deleted as it will be added again when the chat messages are added from server. Otherwise date "Today" would be shown twice.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:30 +01:00
Marcel Hibbe
0356f5ac3c
fix to not accidentally show unread messages popup
reason was that the UI was not yet loaded but isScrolledToBottom was already called, so findFirstVisibleItemPosition returned -1.

Fix for now is to return true for isScrolledToBottom when position is -1

They does not solve the root cause for now. It should be made sure the code is not executed until UI is ready.
A quick try with
repeatOnLifecycle(Lifecycle.State.STARTED)
when collecting getMessageFlow did not help.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:30 +01:00
Marcel Hibbe
29362fab4b
add logging for unread messages popup bug
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:30 +01:00
Marcel Hibbe
b529d1328a
delete roomId comments
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:30 +01:00
Marcel Hibbe
a5049fbb1f
adjust some pixels to avoid jump of message list
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:29 +01:00
Marcel Hibbe
7d9c2fdd30
simplify to refresh message
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:29 +01:00
Marcel Hibbe
cca4e69cea
Skip to send message when device is offline
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:29 +01:00
Marcel Hibbe
f62941f6aa
simplify "sent messages are queued" hint
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:29 +01:00
Marcel Hibbe
656be3ffce
revert ReadStatus SENDING and FAILED
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:29 +01:00
Marcel Hibbe
06c8509587
add retry logic for sending messages, hide resend button when offline
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:28 +01:00
Marcel Hibbe
2c397ad517
add manual resend button
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:28 +01:00
Marcel Hibbe
e9f3863375
delete temp messages
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:28 +01:00
Marcel Hibbe
5ac130a020
resend queued messages when connection gained
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:28 +01:00
Marcel Hibbe
f88b1f17f2
fix after merge conflicts
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:28 +01:00
Marcel Hibbe
1bfb3ba027
WIP add options to temp messages
TODO:
check id type --> see TODO "currentTimeMillies fails as id because later on in the model it's not Long but Int!!!!" in OfflineFirstChatRepository.kt

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:27 +01:00
Marcel Hibbe
ec466e58f0
replace CharSequence with String for sendChatMessage
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:27 +01:00
Marcel Hibbe
0f53244652
prepare to replace no-internet-connection message handling (sorry Julius!!)
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:27 +01:00
Marcel Hibbe
3f5f2f024a
works okay (no resend logic yet, offline message mode not reworked)
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:27 +01:00
Marcel Hibbe
e1c1574d6c
show x when sending failed
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:27 +01:00
Marcel Hibbe
a78c9e1c08
update temp messages also for initial pull of messages
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:26 +01:00
Marcel Hibbe
0e682ed894
WIP temp messages are replaced when same refId received from sever
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:26 +01:00
Marcel Hibbe
048551e9fb
temp message is added (values are still wrong)
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:26 +01:00
Marcel Hibbe
80d2e75b60
WIP add temporary message
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:26 +01:00
Marcel Hibbe
c33bd997a4
fixes after some wrong merge after merge conflict
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:26 +01:00
Marcel Hibbe
3597cf2085
use repository in MessageInputViewModel instead datasource
(as datasources should be only used in repositories)

use coroutines instead RxJava for api calls triggered by MessageInputViewModel

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:26 +01:00
Marcel Hibbe
9cb40d4eb6
add referenceId for "normal" sending of chat message
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 12:32:25 +01:00
Marcel Hibbe
5053c0ea90
fix SPDX header, remove comments
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 11:37:08 +01:00
rapterjet2004
490cd32c25
Impl changes, unable to replicate 1.)
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2025-01-10 11:37:07 +01:00
rapterjet2004
a8f1d37236
oops
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2025-01-10 11:37:07 +01:00
rapterjet2004
73ed4cbf8f
linter
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2025-01-10 11:37:07 +01:00
rapterjet2004
63cb98ece7
Deleted old fragment + xml
Added string res
Fixed bug with embedded date picker boundaries, animated size change

Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2025-01-10 11:14:35 +01:00
rapterjet2004
eae4e43ab2
Small fixes - new theming
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2025-01-10 11:14:35 +01:00
rapterjet2004
d114142d09
Migrating away from java.util.Date to java.time
- Also converted dialog fragment to compose

Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2025-01-10 11:14:34 +01:00
Nextcloud bot
6d1ffbdb14
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-10 09:53:29 +00:00
Marcel Hibbe
8218616b99
fix translation for polls_option_delete
$s -> $d

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-10 10:33:15 +01:00
Nextcloud bot
5887835169
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-10 03:01:46 +00:00
Nextcloud bot
d89393c66e
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-09 16:44:09 +00:00
Marcel Hibbe
45477170ab
Merge pull request #4584 from nextcloud/correctTranslation
$s -> $d
2025-01-09 16:55:35 +01:00
Nextcloud bot
744280af41
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-09 14:33:32 +00:00
tobiasKaminsky
5fd966fc57
$s -> $d
Signed-off-by: tobiasKaminsky <tobias@kaminsky.me>
2025-01-09 15:28:33 +01:00
Nextcloud bot
e5c443c787
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-09 14:09:30 +00:00
Marcel Hibbe
8d0c94834a
add animation to "unread mentions" button + change design
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-08 17:22:04 +01:00
sowjanyakch
4c7d105d2f
remove popup bubble dependency
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-08 17:22:04 +01:00
sowjanyakch
d5968100dc
hide button when scrolling to unread mention
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-08 17:22:03 +01:00
sowjanyakch
b6320287d5
Changes to ConversationsListActivity
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-08 17:22:03 +01:00
sowjanyakch
4d6726d9cd
replace popup button with material button
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-08 17:22:03 +01:00
sowjanyakch
d36f3c92c6
show send button when there is text in input message field
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-08 16:38:32 +01:00
sowjanyakch
006cfae6f1
sort conversations only if text is present
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-08 16:02:28 +01:00
sowjanyakch
298cf3a249
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-08 16:02:28 +01:00
sowjanyakch
9068a42f10
configured editText to occupy single line
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-08 16:02:28 +01:00
sowjanyakch
0035e03cd2
remove unused code
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-08 16:02:28 +01:00
sowjanyakch
e2dc525bf1
implement search in open conversations
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-08 16:02:27 +01:00
sowjanyakch
38135f845e
use field parameter "searchTerm"
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-08 16:02:26 +01:00
Daniel Calviño Sánchez
512b320015
Send state also through signaling messages
The speaking state is still sent only through data channels, as it is
not currently handled by other clients when sent through signaling
messages.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-08 12:35:17 +01:00
Daniel Calviño Sánchez
73105515bd
Rename variable
This will be used to have separate counts for data channel and signaling
messages.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-08 12:35:16 +01:00
Daniel Calviño Sánchez
ea2bebe3b0
Add support for sending signaling messages in the MessageSender
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-08 12:35:16 +01:00
Daniel Calviño Sánchez
8644d05636
Move attributes to local variables
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-08 12:35:16 +01:00
Daniel Calviño Sánchez
0ec5175c61
Send current state to remote participants when they join
Note that this implicitly send the current state to remote participants
when the local participant joins, as in that case all the remote
participants already in the call join from the point of view of the
local participant

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-08 12:35:16 +01:00
Daniel Calviño Sánchez
ea4bccdaf7
Add support for sending data channel messages to a single participant
This is not possible when Janus is used, as Janus only allows
broadcasting data channel messages to all the subscribers of the
publisher connection.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-08 12:35:16 +01:00
Daniel Calviño Sánchez
fe32bc1628
Add helper class to broadcast the local participant state
The LocalStateBroadcaster observes changes in the
LocalCallParticipantModel and notifies other participants in the call as
needed. Although it is created right before joining the call there is a
slim chance of the state changing before the local participant is
actually in the call, but even in that case other participants would not
be notified about the state due to the MessageSender depending on the
list of call participants / peer connections passed to it, which should
not be initialized before the local participant is actually in the call.

There is, however, a race condition that could cause participants to not
be added to the participant list if they join at the same time as the
local participant and a signaling message listing them but not the local
participant as in the call is received once the CallParticipantList was
created, but that is unrelated to the broadcaster and will be fixed
in another commit.

Currently only changes in the audio, speaking and video state are
notified, although in the future it should also notify about the nick,
the raised hand or any other state (but not one-time events, like
reactions). The notifications right now are sent only through data
channels, but at a later point they will be sent also through signaling
messages as needed.

Similarly, although right now it only notifies of changes in the state
it will also take care of notifying other participants about the current
state when they join the call (or the local participant joins).

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-08 12:35:15 +01:00
Daniel Calviño Sánchez
cb52fb349f
Add data model for local call participants
This is the counterpart of CallParticipantModel for the local
participant. For now it just stores whether audio and video are enabled
or not, and whether the local participant is speaking or not, but it
will be eventually extended with further properties.

It is also expected that the views, like the button with the microphone
state, will update themselves based on the model. Similarly the model
should be moved from the CallActivity to a class similar to
CallParticipant but for the local participant. In any case, all that is
something for the future; the immediate use of the model will be to know
when the local state changes to notify other participants.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-08 12:35:15 +01:00
Daniel Calviño Sánchez
36a29ed36e
Send data channel messages only to "video" peer connections
Data channel messages are expected to be sent only to peer connections
with "video" type, which provide the audio and video tracks of the
participant (and, in fact, peer connections for screen shares do not
even have data channels enabled in the WebUI).

Note that this could change if at some point several audio/video tracks
are sent in the same peer connection, or if "speaking" messages are
added to screen shares, but that will be addressed if/when that happens.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-08 12:35:15 +01:00
Daniel Calviño Sánchez
3e36c85015
Add helper class to send messages to call participants
For now it just provides support for sending a data channel message to
all participants, so notifying all participants when the media is
toggled or the speaking status change can be directly refactored to use
it.

While it would have been fine to use a single class for both MCU and no
MCU they were split for easier and cleaner unit testing in future
stages.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-08 12:35:15 +01:00
Daniel Calviño Sánchez
8fa3224879
Set "hasMCU" once its value is known
"hasMCU" (which has always been the wrong name, because it is an SFU
rather than an MCU, but it is wrong even in the signaling server so for
now the legacy name is kept) was set again and again whenever the call
participant list changed. Now it is set instead once its value is known,
that is, when it is known that the internal signaling server is used (as
no "MCU" is used in that case), or when the connection with the external
signaling server is established, as its supported features are not known
until then.

This change should have no effect in the usages of "hasMCU", as it is
used when the call participant list change, which will happen only after
joining the call in the signaling server, or when sending "isSpeaking"
and toggling media, in both cases guarded by "isConnectionEstablished",
which will be true only once "performCall" was called or if the call is
active with other participants.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-08 12:35:14 +01:00
renovate[bot]
c3b0358acf
fix(deps): update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.8.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-08 09:57:44 +00:00
sowjanyakch
9d76a1e7ed
open .webm video files with internal player
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-01-07 19:42:55 +01:00
Nextcloud Android Bot
1d0ce26dcc Weekly 21.0.0 Alpha 08 2025-01-06 03:10:30 +00:00
Nextcloud bot
214623a7af
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-04 03:03:24 +00:00
Daniel Calviño Sánchez
f112e26d25
Fix SDP constraints used by PeerConnectionWrapper
The SDP constraints for publisher connections when the MCU is used were
set for all connections. Those constraints set "OfferToReceiveAudio" and
"OfferToReceiveVideo" to false, which disables receiving audio and video
when the local participant is the one sending the offer. Therefore,
audio and video was not received when the MCU was not used and the local
participant was the one initiating the connection.

The "OfferToReceiveXXX" configurations have no effect when set on an
answer (and thus are not even set, an empty MediaConstraints is used in
that case). However, when "OfferToReceiveVideo = false" is set the video
transceiver is explicitly stopped (which is used to avoid receiving
video when joining a call with audio only). Therefore, as
"OfferToReceiveVideo = false" was always set, video was never received
in subscriber connections when the MCU is used, or connections initiated
by the other peer when the MCU is not used.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 13:26:43 +01:00
Daniel Calviño Sánchez
94257da123
Rename attribute to a more accurate name
The SDP constraints should be set when the MCU is used, but only for
publisher connections; receiver connections should use the general SDP
constraints.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 13:26:42 +01:00
Marcel Hibbe
22efcd7e83
Merge pull request #4574 from nextcloud/convertLogClassToKotlin
Convert log class to kotlin
2025-01-03 13:14:00 +01:00
Marcel Hibbe
3874751fcb
convert Log class to kotlin
@JvmStatic is necessary to keep the static behavior of the method calls

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-03 12:44:56 +01:00
Marcel Hibbe
7680d51b09
Rename .java to .kt
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-01-03 12:44:53 +01:00
renovate[bot]
f21fe475a9
Update mockito monorepo to v5.15.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2025-01-03 11:37:28 +00:00
Daniel Calviño Sánchez
d63bb31595
Fix "send" not respecting order of pending messages
When the data channel is not open yet data channel messages are queued
and then sent once opened. "onStateChange" is called from the WebRTC
signaling thread, while "send" can be called potentially from any
thread, so to send the data channel messages in the same order that they
were added new messages need to be enqueued until all the pending
messages have been sent. Otherwise, even if there is synchronization
already, it could happen that "onStateChange" was called but, before
getting the lock, "send" gets it and sends the new message before the
pending messages were sent.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:43 +01:00
Daniel Calviño Sánchez
b6d6986b62
Fix "removePeerConnection" not being thread-safe
Adding and disposing remote data channels is done from different
threads; they are added from the WebRTC signaling thread when
"onDataChannel" is called, while they can be disposed potentially from
any thread when "removePeerConnection" is called. To prevent race
conditions between them now both operations are synchronized.

However, as "onDataChannel" belongs to an inner class it needs to use a
synchronized statement with the outer class lock. This could still cause
a race condition if the same data channel was added again; this should
not happen, but it is handled just in case.

Moreover, once a data channel is disposed it can be no longer used, and
trying to call any of its methods throws an "IllegalStateException". Due
to this, as sending can be also done potentially from any thread, it
needs to be synchronized too with removing the peer connection.

State changes on data channels as well as receiving messages are also
done in the WebRTC signaling thread. State changes needs synchronization
as well, although receiving messages should not, as it does not directly
use the data channel (and it is assumed that using the buffers of a
disposed data channel is safe). Nevertheless a little check (which in
this case requires synchronization) was added to ignore the received
messages if the peer connection was removed already.

Finally, the synchronization added to "send" and "onStateChange" had the
nice side effect of making the pending data channel messages thread-safe
too, as before it could happen that a message was enqueued when the
pending messages were being sent, which caused a
"ConcurrentModificationException".

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:43 +01:00
Daniel Calviño Sánchez
a301bdeb76
Store data channel label
Getting the label is no longer possible once the data channel has been
disposed. This will help to make the observer thread-safe.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:43 +01:00
Daniel Calviño Sánchez
fae86910b8
Add logs for sending data channel messages
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:42 +01:00
Daniel Calviño Sánchez
ddd451dadb
Queue data channel messages sent when data channel is not open
Data channel messages can be sent only when the data channel is open.
Otherwise the message is simply lost. Clients of the
PeerConnectionWrapper do not need to be aware of that detail or keep
track of whether the data channel was open already or not, so now data
channel messages sent before the data channel is open are queued and
sent once the data channel is opened.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:42 +01:00
Daniel Calviño Sánchez
7cfee8f848
Split condition
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:42 +01:00
Daniel Calviño Sánchez
bcd3893e7d
Rewrite method to return early
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:42 +01:00
Daniel Calviño Sánchez
c222e01095
Move variable declaration into try block
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:41 +01:00
Daniel Calviño Sánchez
4d4b8832aa
Fix remote data channels not disposed when removing peer connection
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:41 +01:00
Daniel Calviño Sánchez
c940175453
Send data channel messages using "status" data channel
Data channel messages are expected to be sent using the "status" data
channel that is locally created. However, if another data channel was
opened by the remote peer the reference to the "status" data channel was
overwritten with the new data channel, and messages were sent instead on
the remote data channel.

In current Talk versions that was not a problem, and the change makes no
difference either, because since the support for Janus 1.x was added
data channel messages are listened on all data channels, independently
of their label or whether they were created by the local or remote peer.

However, in older Talk versions this fixes a regression introduced with
the support for Janus 1.x. In those versions only messages coming from
the "status" or "JanusDataChannel" data channels were taken into
account. When Janus is not used the WebUI opens the legacy
"simplewebrtc" data channel, so that data channel may be the one used to
send data channel messages (if it is open after the "status" data
channel), but the messages received on that data channel were ignored by
the WebUI. Nevertheless, at this point this is more an academic problem
than a real world problem, as it is unlikely that there are many
Nextcloud servers with Talk < 16 and without HPB being used.

Independently of all that, when the peer connection is removed only the
"status" data channel is disposed, but none of the remote data channels
are. This is just a variation of an already existing bug (the last open
data channel was the one disposed due to being the last saved reference,
but the rest were not) and it will be fixed in another commit.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:41 +01:00
Daniel Calviño Sánchez
a4cce0581c
Rename "sendChannelData" to "send"
The legacy name was a bit strange, so now it is renamed to just "send"
as the parameter type ("DataChannelMessage") gives enough context.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:41 +01:00
Daniel Calviño Sánchez
1f872553b9
Include data channel label in log message
This implicitly fixes trying to send the initial state on the latest
remote data channel found (which is the one stored in the "dataChannel"
attribute of the "PeerConnectionWrapper") when any other existing data
channel changes its status to open. Nevertheless, as all this will be
reworked, no unit test was added for it.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:40 +01:00
Daniel Calviño Sánchez
4daadc508c
Unify log messages for received data channel messages
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:40 +01:00
Daniel Calviño Sánchez
08630790b7
Add unit tests for receiving data channel messages
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:40 +01:00
Daniel Calviño Sánchez
ed69d96a43
Add dummy Log implementation to be used in tests
Log methods are static, so they can not be mocked using Mockito.
Although it might be possible to use PowerMockito a dummy implementation
was added instead, as Log uses are widespread and it is not something
worth mocking anyway.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:40 +01:00
Daniel Calviño Sánchez
d34fdfb1c5
Remove Dagger related code from PeerConnectionWrapper
The PeerConnectionWrapper does not need to be injected in the
application, nor the Context needs to be injected in the
PeerConnectionWrapper. This all seems to be leftovers from the past, and
removing them would ease adding unit tests for the
PeerConnectionWrapper.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2025-01-03 10:52:39 +01:00
Nextcloud bot
a65b52b0e5
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2025-01-03 03:03:50 +00:00
Nextcloud Android Bot
e5d946d973 Weekly 21.0.0 Alpha 07 2024-12-30 03:10:49 +00:00
Nextcloud bot
b0658caea2
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-28 03:04:16 +00:00
Nextcloud bot
9630fc130d
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-27 03:04:12 +00:00
Nextcloud bot
d092f03c96
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-26 03:04:24 +00:00
Nextcloud bot
bc5a289ee5
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-25 03:03:55 +00:00
Nextcloud bot
97e4e3aa90
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-24 03:02:01 +00:00
Nextcloud Android Bot
3a85f146b1 Weekly 21.0.0 Alpha 06 2024-12-23 03:12:34 +00:00
Nextcloud bot
e7e6e421b0
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-23 03:01:48 +00:00
Nextcloud bot
127034fe33
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-22 03:18:49 +00:00
Andy Scherzinger
62d1eeafce
fix(ktlint): correct code formatting
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-21 16:50:40 +01:00
Nextcloud bot
144ccc4106
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-21 03:03:23 +00:00
renovate[bot]
85efdd5a7b
Update daggerVersion to v2.54
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-20 20:03:07 +00:00
github-actions[bot]
7e5755325d
Merge pull request #4561 from nextcloud/renovate/kotlinx-coroutines-monorepo
Update dependency org.jetbrains.kotlinx:kotlinx-coroutines-test to v1.10.1
2024-12-20 16:46:48 +00:00
renovate[bot]
153e2dcfb5
Update dependency org.jetbrains.kotlinx:kotlinx-coroutines-test to v1.10.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-20 16:31:35 +00:00
Marcel Hibbe
c86769d0e3
Merge branch 'master' into master
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-12-20 17:14:33 +01:00
Marcel Hibbe
74da67210d
resolve detekt warnings 2024-12-20 15:44:24 +01:00
Marcel Hibbe
cd50115e06
fix detekt warnings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-12-20 14:59:25 +01:00
sowjanyakch
74bf9f2e91
hide replacement view when there is no replacement set
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:53 +01:00
sowjanyakch
f7078990d9
use constants
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:53 +01:00
sowjanyakch
65cb31b1e7
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:53 +01:00
sowjanyakch
8ca769832d
use theming from server
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:53 +01:00
sowjanyakch
3eab18472f
format code and remove unused colors
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:53 +01:00
sowjanyakch
cadb12cd0f
join 1:1 conversation with replacement user
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:52 +01:00
sowjanyakch
9a481aefc8
create chip for avatar icon and name
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:52 +01:00
sowjanyakch
ca4ace687c
use proper color for out of office view
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:52 +01:00
sowjanyakch
a9168b3f9d
format code
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:52 +01:00
sowjanyakch
27538a77ff
remove unused namespace declaration
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:52 +01:00
sowjanyakch
e7c540870b
ui changes to out_of_office_view
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:52 +01:00
sowjanyakch
4bdedfbc0d
show userAbsence period
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:51 +01:00
sowjanyakch
ecd5bfdf41
apply styling
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:51 +01:00
sowjanyakch
c9d5bc68a2
show replacement only if the user set a replacement
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:51 +01:00
sowjanyakch
083f0de063
use proper naming
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:51 +01:00
sowjanyakch
f7f73136d8
modify data class UserAbsenceData
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:51 +01:00
sowjanyakch
07accbb2b9
Use conversation name as userId in API call
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:51 +01:00
sowjanyakch
e6e294096b
call API only when status is in DND mode
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:50 +01:00
sowjanyakch
10e88f1e17
display out of office message in ChatActivity
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:50 +01:00
sowjanyakch
6bcd24bf56
add out_of_office_view.xml
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:50 +01:00
sowjanyakch
24ca0d6def
Modify ViewModel and Repository
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:50 +01:00
sowjanyakch
8fdd1478bf
add model
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:49 +01:00
renovate[bot]
f540510aaf
fix(deps): update dependency org.jetbrains.kotlinx:kotlinx-coroutines-test to v1.10.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-19 21:00:33 +00:00
Giacomo Pacini
c3aef0286a
run ./gradlew ktlintFormat
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 15:26:11 +01:00
Giacomo Pacini
fce785c734
spacing
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:21 +01:00
Giacomo Pacini
20a94f0ef3
spacing
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:20 +01:00
Giacomo Pacini
4fa06520ea
actually allows to play in background consecutive voice messages
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:20 +01:00
Giacomo Pacini
169dac4045
spacing
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:20 +01:00
Giacomo Pacini
09925699b7
added a boolean backgroundPlayAllowed, so that startPlayback continues only when that parameter is true. It is set to true only when it is called to play a consecutive voice message.
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:20 +01:00
Giacomo Pacini
7542b310e0
use Log.error instead of e.printstacktrace()
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:20 +01:00
Giacomo Pacini
d4b02a4a89
minor fixes
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:19 +01:00
Giacomo Pacini
deab1d10e1
fetches both previous and next voice messages
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:19 +01:00
Giacomo Pacini
6a598357fc
when a voice message is played, starts the download of the next ones if any, computes their durations and starts playing the next one at the end of the current. Plays a doodle between them
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:19 +01:00
Giacomo Pacini
410b27b72c
when the voice message duration is known, always shows it when not playing
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:18 +01:00
Giacomo Pacini
053407f900
fixed a bug that cut the last part of every voice messages. i.e. An audio message whose duration is 5.9 seconds was played for 5 seconds
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:18 +01:00
Giacomo Pacini
c0948ba478
voice messages that are played for at least a threshold are coloured differently
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-12-19 14:18:04 +01:00
Nextcloud bot
c754ce48d4
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-19 03:03:52 +00:00
Nextcloud bot
a627beec1a
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-18 03:37:41 +00:00
renovate[bot]
2d8aa2dbe1
fix(deps): update dependency org.junit.vintage:junit-vintage-engine to v5.11.4
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-16 16:21:00 +00:00
Nextcloud Android Bot
d512eed803 Weekly 21.0.0 Alpha 05 2024-12-16 03:12:01 +00:00
renovate[bot]
e902b6f58e
fix(deps): update dependency com.mebigfatguy.fb-contrib:fb-contrib to v7.6.9
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-15 01:20:22 +00:00
Nextcloud bot
7b43438539
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-14 03:01:31 +00:00
Andy Scherzinger
d2778b2ce1
style: Fix formatting
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-13 18:31:38 +01:00
Andy Scherzinger
8d0c6b0ce3
style(detekt): Restrict the number of return statements in methods
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-13 18:24:30 +01:00
Andy Scherzinger
f549870d3b
style(detekt): Shorten methods
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-13 16:21:42 +01:00
Andy Scherzinger
279bd8ade7
fix(lint): Move suppressions due to refactoring
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-13 15:35:18 +01:00
Andy Scherzinger
44badccad2
style(ktlint): Fix formatting
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-13 15:35:18 +01:00
Andy Scherzinger
383bf2a728
style(detekt): Shorten methods
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-13 15:35:17 +01:00
Andy Scherzinger
b0c86cac6c
style(detekt): Move magic number to constant
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-13 15:35:17 +01:00
sowjanyakch
49c717c020
show set remainder in federated conversation
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-13 13:44:02 +01:00
Marcel Hibbe
f41efd9303
Merge pull request #4497 from nextcloud/add_clear_icon
Add clear icon for search view in open conversations
2024-12-13 13:04:56 +01:00
Nextcloud bot
55dc98b26d
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-13 03:02:26 +00:00
github-actions[bot]
a2028d1f03
Merge pull request #4541 from nextcloud/renovate/androidx.compose-compose-bom-2024.x
fix(deps): update dependency androidx.compose:compose-bom to v2024.12.01
2024-12-11 23:29:56 +00:00
github-actions[bot]
fc5c3b1aba
Merge pull request #4540 from nextcloud/renovate/androidx.compose.ui-ui-test-junit4-1.x
fix(deps): update dependency androidx.compose.ui:ui-test-junit4 to v1.7.6
2024-12-11 23:25:35 +00:00
renovate[bot]
6f762f0636
fix(deps): update dependency androidx.compose:compose-bom to v2024.12.01
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-11 23:04:41 +00:00
renovate[bot]
b2ce3db09f
fix(deps): update dependency androidx.compose.ui:ui-test-junit4 to v1.7.6
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-11 23:03:56 +00:00
renovate[bot]
2dc1f38619
fix(deps): update androidxcameraversion to v1.4.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-11 23:02:41 +00:00
renovate[bot]
c9c983a10a
fix(deps): update dependency androidx.compose.runtime:runtime to v1.7.6
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-11 21:36:30 +00:00
sowjanyakch
bda0531362
use string resource
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-11 13:44:58 +01:00
sowjanyakch
a504f53b3a
use TextInputLayout
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-11 13:44:57 +01:00
rapterjet2004
1c108c94f7
Fixed overlay bug
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-12-10 10:05:56 +01:00
Marcel Hibbe
cbce4e9cd4
Merge pull request #4522 from nextcloud/remove_hilt_dependency
remove hilt dependency
2024-12-10 10:04:58 +01:00
sowjanyakch
46e8201ca2
remove hilt dependency
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-10 09:28:58 +01:00
sowjanyakch
c32d6a5bdf
remove unused models
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-10 09:22:26 +01:00
sowjanyakch
1d9f6e0e41
refactor code - remove comments
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-10 09:22:25 +01:00
sowjanyakch
3216318ccd
suppress lint warning for invalid string format
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-10 09:22:25 +01:00
sowjanyakch
0111e0f711
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-10 09:22:25 +01:00
sowjanyakch
5b8b3bb027
Modify Adapter and ListOpenConversationsActivity
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-10 09:22:25 +01:00
sowjanyakch
b769a024c4
Modify ViewModel
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-10 09:22:25 +01:00
sowjanyakch
5fd8541ddc
Use correct model
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-10 09:22:24 +01:00
Andy Scherzinger
12620a5c3e
style(detekt): shorten long methods
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-12-10 09:00:47 +01:00
Andy Scherzinger
751cd3f4ea
style(detekt): Shorten complex conditions
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-10 08:59:26 +01:00
Nextcloud bot
7e6b316df0
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-10 03:01:50 +00:00
renovate[bot]
06cbb3e5bd
fix(deps): update daggerversion to v2.53.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-09 19:32:56 +00:00
Nextcloud Android Bot
c07bf67fb9 Weekly 21.0.0 Alpha 04 2024-12-09 03:12:10 +00:00
Nextcloud bot
495bdd188d
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-08 03:31:48 +00:00
Nextcloud bot
4d8242a8ca
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-07 03:09:28 +00:00
Andy Scherzinger
abebe6fcad
style(detekt): Comment on all EmptyFunctionBlock cases
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-06 11:11:25 +01:00
Andy Scherzinger
f820277779
style(detekt): Accept current use of TooGenericExceptionCaught cases
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-06 11:11:24 +01:00
Andy Scherzinger
06f7597de0
style(detekt): Ignore TooGenericExceptionThrown on test stub implementation
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-06 11:11:23 +01:00
Andy Scherzinger
eb890cfbd3
style(detekt): Replace MagicNumbers with constants
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-06 11:11:02 +01:00
Nextcloud bot
7221d8cc56
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-06 03:18:02 +00:00
Nextcloud bot
f692e77c8f
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-05 03:37:18 +00:00
Nextcloud bot
813f3136df
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-04 03:35:48 +00:00
Marcel Hibbe
a0d6442205
fix Duplicate ids in xml
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-12-03 10:36:49 +01:00
rapterjet2004
cb01b1ffe6
Shows if no offline messages are saved
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-12-03 10:21:31 +01:00
github-actions[bot]
3bca62db3b
Merge pull request #4511 from nextcloud/renovate/daggerversion
fix(deps): update daggerversion to v2.53
2024-12-03 09:15:04 +00:00
Sowjanya Kota
97e2650392
Merge pull request #4506 from nextcloud/feat/noid/conversationPublicStatusBadge
Add public and federated room badge
2024-12-03 10:01:18 +01:00
renovate[bot]
95b331c858
fix(deps): update daggerversion to v2.53
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-12-03 08:58:01 +00:00
Nextcloud bot
a1a4ef0f16
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-03 03:00:54 +00:00
Andy Scherzinger
6771103869 feat(conversations): Add federation room badge
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-02 22:25:37 +01:00
Andy Scherzinger
b0c4f6d658 feat(conversations): Add public room badge
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-02 22:25:37 +01:00
Nextcloud bot
14cdca0a58
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-02 18:25:28 +00:00
Nextcloud bot
2566d19217
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-02 18:04:47 +00:00
Andy Scherzinger
5011649499
fix(detekt): shorten test method by extracting conversation object creation
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-02 18:12:35 +01:00
Andy Scherzinger
720fdda005
fix(detekt): naming convention of variables
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-02 18:12:34 +01:00
Christian Reiner
20d36c1eb9
playback speed control button for voice messages
Signed-off-by: Christian Reiner <foss@christian-reiner.info>

Themed the PlaybackSpeedControl + Work around onBind bug

Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-12-02 18:12:30 +01:00
Marcel Hibbe
366c2b5777
reformat code + fix lint warnings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-12-02 17:32:27 +01:00
Marcel Hibbe
22517c8ec9
new notification warner
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-12-02 17:32:27 +01:00
Andy Scherzinger
7eaf09844f
style(icon): Update Mail/Group avatar
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-02 16:15:03 +01:00
Andy Scherzinger
63e7134262
style(icon): Update Link avatar and general link icon
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-02 16:15:03 +01:00
Andy Scherzinger
6de05d8fa4
style(lint): make use of ResourceCompat
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-02 10:40:00 +01:00
Andy Scherzinger
77d2632513
style(detekt): Improve score
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-02 10:40:00 +01:00
Andy Scherzinger
26876c21d7
style(ktlint): Fix formatting
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-12-02 10:39:59 +01:00
Nextcloud Android Bot
68811b0ed3 Weekly 21.0.0 Alpha 03 2024-12-02 03:12:33 +00:00
Nextcloud bot
1e112b057b
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-12-02 03:01:37 +00:00
Nextcloud bot
12fec18bb2
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-30 03:00:51 +00:00
Andy Scherzinger
51fc617363
fix(kt): Update method call to kt 2.1
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-11-29 11:08:39 +01:00
renovate[bot]
2cbc217938
Update plugin com.google.devtools.ksp to v2.1.0-1.0.29
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-29 11:08:38 +01:00
Nextcloud bot
2d294e8bf5
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-29 02:57:25 +00:00
Marcel Hibbe
6932ddff4b
fix guests without name for Mention autocomplete
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-28 14:31:40 +01:00
Marcel Hibbe
1b6d620915
fix guests without name in lastMessage view in conversation list
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-28 14:31:40 +01:00
Marcel Hibbe
b5a84b4a3f
fix empty guest names for chat viewholders
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-28 14:31:40 +01:00
Marcel Hibbe
41927d2593
fix empty guest names in conversation info list
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-28 14:31:40 +01:00
Marcel Hibbe
b3b525bbc2
fix to handle whitespaces for guest avatars
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-28 14:31:39 +01:00
Nextcloud bot
8162a73f7d
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-28 11:14:29 +00:00
renovate[bot]
3ddcc62aa0
Update plugin org.jetbrains.kotlin.plugin.compose to v2.1.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-28 04:48:17 +00:00
Nextcloud bot
dc61ab49eb
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-28 03:04:15 +00:00
Nextcloud bot
1065f1343e
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-27 10:30:29 +00:00
Nextcloud Android Bot
7777a34d82 Weekly 21.0.0 Alpha 02 2024-11-27 10:24:18 +00:00
Marcel Hibbe
7cc857bdad
bump version to 21.0.0 Alpha 1
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-27 10:56:32 +01:00
Marcel Hibbe
8e08d9279d
remove unused method
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:51 +01:00
Marcel Hibbe
16d03a69ff
show guest "first letter" avatars in chat
also:
create ChatMessageUtils as helper for the ViewHolders in this case.
Could help to avoid duplicated code until there is a clear inheritance solution.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:51 +01:00
Marcel Hibbe
199ba4be34
add grey avatar with first letter of email-guest in call view
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:51 +01:00
Marcel Hibbe
c75cf2fe20
add grey avatar with first letter of email-guest
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:51 +01:00
Marcel Hibbe
cb3614da34
remove android version check
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:51 +01:00
Marcel Hibbe
b71218973e
show simple person icon when conversation-info when guest did not set any name
However this is only possible for the conversation info.
In other parts, the info if a guest changed the name or not is not available (like in the chat or in autocomplete)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:50 +01:00
Marcel Hibbe
d95c1c605f
set guest avatar for guests and emailguests in autocomplete
knowing if a guest did not change it's name is not possible at this point, so we also show the letter "G" if it's name is guest

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:50 +01:00
Marcel Hibbe
02d0a65909
enable to set mention chip for email guests 2
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:50 +01:00
Marcel Hibbe
ca9e2d4932
enable to set mention chip for email guests
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:50 +01:00
Marcel Hibbe
6ede78eb09
remove additional information from autocomplete
objectId would be some long random string for email guests. displaying them would not make sense. It's also not done on web.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:50 +01:00
Marcel Hibbe
8a3f779fdc
show initials avatar for email guests if displayname is set
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:49 +01:00
Marcel Hibbe
6e3188f1df
display email address of guest users for moderators
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 21:48:49 +01:00
Marcel Hibbe
47004b8f4b
Merge pull request #4471 from nextcloud/issue-4452-search-join-conversation
Added a search bar to the "Join Open Conversations" screen
2024-11-26 19:58:18 +01:00
Marcel Hibbe
6dc52fe27d
change strings in notification settings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 15:24:49 +01:00
Marcel Hibbe
c7fd94ba9b
reformat code
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 15:24:49 +01:00
Marcel Hibbe
8e6072bbc7
extract blink method, move server notification app hint to gplay block
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 15:24:49 +01:00
Marcel Hibbe
6f6c1896ed
add check if server notification app is installed for current user
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 15:24:49 +01:00
Marcel Hibbe
c559c6b0b4
blink notification channels
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 15:24:48 +01:00
Marcel Hibbe
fa70cffd83
blink items when opened by notification warning
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 15:24:48 +01:00
Marcel Hibbe
a9ec8c2eed
fix to hide notification setting for generic build variant
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 15:24:48 +01:00
Marcel Hibbe
c2b99c591f
disable sound notification settings when main notification permission is is not permitted.
Otherwise user can't enable them anyway

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 15:24:48 +01:00
Marcel Hibbe
b63325ae8d
open full notification settings from talk settings as fallback if dialog for asking direct permission was not shown by android
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 15:24:48 +01:00
Marcel Hibbe
b1e550b049
Show a warning if notifications are not allowed or battery optimization is enabled
Open notification settings when click on warning

Also, still offer to enable notifications and disable battery optimization on first install

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 15:24:47 +01:00
Marcel Hibbe
716dfa6577
Add permanent hint when battery optimization is not ignored
Also add an option to not show the hint, when user doesn't want to ignore battery optimization.

Only show these features when gplay services are available. Otherwise don't show them as it would pretend notifications would be possible without gplay.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-26 15:24:47 +01:00
sowjanyakch
fdbff4a8e6
use safe call operator
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-26 12:12:17 +01:00
sowjanyakch
2da78f69f2
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-26 12:12:17 +01:00
sowjanyakch
8bf7fd8553
show backup status when only when status message is previously set
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-26 12:12:17 +01:00
Nextcloud Android Bot
e47b5aa102 Weekly 20.1.0 Alpha 15 2024-11-25 03:12:23 +00:00
Nextcloud bot
2c90a1eaf1
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-24 03:05:03 +00:00
Nextcloud bot
b06a42288e
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-23 03:02:34 +00:00
Nextcloud bot
c5d3195aa1
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-22 02:58:27 +00:00
rapterjet2004
2bcdf0565e
theme search icon
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-11-21 08:30:17 -06:00
rapterjet2004
adea08c774
forgot to set ignoreCase to true
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-11-21 07:50:31 -06:00
Marcel Hibbe
be99e1a037
remove comment
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-21 11:53:32 +01:00
Marcel Hibbe
19a69e0abf
simplify check if file is outside cache dir
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-21 11:53:02 +01:00
sowjanyakch
f1d03e235a
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 11:34:24 +01:00
sowjanyakch
9b3a11569a
bump minSdkVersion to 26 and remove old checks
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 11:34:23 +01:00
Marcel Hibbe
e8cf3eed56
add setConversationReadOnly
must have been lost during resolving merge conflicts

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-21 11:18:36 +01:00
sowjanyakch
ebfb38b5b5
write logs for exceptions in viewModel
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 11:07:09 +01:00
sowjanyakch
fa3e8002bc
remove unused endpoint
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 11:07:08 +01:00
sowjanyakch
a95433c6bc
convert rxjava to coroutines - unban actor
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 11:07:06 +01:00
sowjanyakch
bdda04c21e
remove unused code
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 11:05:57 +01:00
sowjanyakch
121d7e6907
convert rxjava to coroutines - list bans
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 11:05:55 +01:00
sowjanyakch
3bc3a8e3ee
remove unused endpoint
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 11:05:31 +01:00
sowjanyakch
7ae39bfcd2
convert rxjava to coroutines - ban actor
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 11:05:29 +01:00
sowjanyakch
626994e68c
lint warnings
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:10 +01:00
sowjanyakch
33314cf0ca
use constants
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:10 +01:00
sowjanyakch
af7a395508
remove unused endpoints
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:10 +01:00
sowjanyakch
5094cf5719
convert rxjava to coroutines - set expiration and set notification levels for messages
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:10 +01:00
sowjanyakch
1d9f475768
remove unused endpoints
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:09 +01:00
sowjanyakch
f4f943ff5a
convert rxjava to coroutines - notification calls
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:09 +01:00
sowjanyakch
77b55dcd9b
convert java code to kotlin - DatabaseStorageModule
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:09 +01:00
sowjanyakch
9e8a5476f9
Rename .java to .kt
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:09 +01:00
sowjanyakch
75d1c548ab
remove unused endpoints
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:09 +01:00
sowjanyakch
9ba07f575f
convert rxjava to coroutine - unfavourite conversation
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:08 +01:00
sowjanyakch
e9d2a866a7
remove unused endpoint
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:08 +01:00
sowjanyakch
68366b3d09
convert rxjava to coroutine - favourite conversation
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-21 10:52:07 +01:00
Marcel Hibbe
6637e8c9d9
Merge pull request #4415 from nextcloud/issue-4376-hide-features-in-offline-mode
Disabling/Hiding features when offline
2024-11-21 10:32:42 +01:00
Marcel Hibbe
90c6eb0b24
Merge pull request #4423 from nextcloud/issue-4404-better-indicator-for-calls
Better call started indicator
2024-11-21 10:19:25 +01:00
rapterjet2004
68ce6fabf3
linter -_-
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-11-21 10:17:15 +01:00
rapterjet2004
814592da7f
Refactoring NetworkMonitor to be more Java friendly
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-11-21 10:17:14 +01:00
rapterjet2004
01006c29d7
linter
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-11-21 10:17:14 +01:00
rapterjet2004
8e7515238a
Disabling features when not connected to internet
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-11-21 10:17:13 +01:00
Nextcloud bot
73228bdad9
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-21 03:02:23 +00:00
rapterjet2004
6067f04b12
Should be working
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-11-20 10:54:46 -06:00
Nextcloud Android Bot
b6d28dfbbb Weekly 20.1.0 Alpha 14 2024-11-20 13:33:33 +00:00
Nextcloud Android Bot
89ba1183d8 Weekly 20.1.0 Alpha 13 2024-11-20 12:10:06 +00:00
Nextcloud bot
387ffd39df
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-20 03:09:02 +00:00
sowjanyakch
0db401de4a
remove unused code
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 11:07:35 +01:00
sowjanyakch
a133c2a3b9
refactor
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:56:35 +01:00
sowjanyakch
574791c1bc
remove unused imports
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:56:35 +01:00
sowjanyakch
452a4c72f4
convert rxjava to coroutines - set conversation read only
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:56:32 +01:00
sowjanyakch
ab313adfd5
remove unused endpoint
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:52:33 +01:00
sowjanyakch
66686d7602
get correct api version for chat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:52:33 +01:00
sowjanyakch
7a8eb3ca22
convert rxjava to coroutines - clearChatHistory
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:52:30 +01:00
sowjanyakch
6955995654
remove unused endpoints
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:45:17 +01:00
sowjanyakch
6cce2783b9
convert rxjava to coroutines - setConversationDescription
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:41:08 +01:00
sowjanyakch
1beffd9e22
remove unused endpoint
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:41:08 +01:00
sowjanyakch
9525986dde
convert rxjava to coroutines - renameRoom
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:41:07 +01:00
sowjanyakch
cedf1f09e9
Implement renameRoom in ConversationInfoEditRepository
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:41:07 +01:00
Nextcloud bot
9cc826abef
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-19 02:59:07 +00:00
sowjanyakch
e5802d70f3
remove unused code
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 21:08:15 +01:00
sowjanyakch
013195465c
refactoring
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 21:08:15 +01:00
sowjanyakch
3de36ebec3
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 21:08:15 +01:00
sowjanyakch
03c4402630
remove unused string
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 21:08:15 +01:00
sowjanyakch
e0b2174fc7
use one endpoint instead of two
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 21:08:12 +01:00
sowjanyakch
51330cbc76
remove unused imports
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 21:07:58 +01:00
sowjanyakch
228c73ce60
test coroutines
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 21:07:43 +01:00
sowjanyakch
79dfac6ac0
remove endpoints from NcApi
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 21:06:50 +01:00
sowjanyakch
c03c5a5d50
remove unused imports
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 21:06:50 +01:00
sowjanyakch
af9b2b29c7
convert rxjava to coroutines
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 21:06:50 +01:00
sowjanyakch
2d5facc905
remove setPassword from NcApi
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 21:06:49 +01:00
sowjanyakch
4439da9bd1
use lifecycleScope
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 20:51:07 +01:00
sowjanyakch
240bdd6771
handle errors
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 20:51:07 +01:00
sowjanyakch
dce609b831
remove unused used from NcApi
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 20:51:07 +01:00
sowjanyakch
9f3bbf6ebf
refactor code
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 20:51:07 +01:00
sowjanyakch
99d73e15e0
migration to coroutines
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 20:51:06 +01:00
sowjanyakch
91a18e27f9
implement API in NcApiCoroutines
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-18 20:51:06 +01:00
Marcel Hibbe
b96cd32108
fix NPE currentConversation!!.internalId
followup to PR #4439

Exception java.lang.NullPointerException:
  at com.nextcloud.talk.chat.MessageInputFragment.handleMessageQueue (MessageInputFragment.kt:251)
  at com.nextcloud.talk.chat.MessageInputFragment.access$handleMessageQueue (MessageInputFragment.kt:82)
  at com.nextcloud.talk.chat.MessageInputFragment$initObservers$4$1.invokeSuspend (MessageInputFragment.kt:192)
  at com.nextcloud.talk.chat.MessageInputFragment$initObservers$4$1.invoke (Unknown Source:12)
  at com.nextcloud.talk.chat.MessageInputFragment$initObservers$4$1.invoke (Unknown Source:8)
  at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit (Emitters.kt:219)
  at kotlinx.coroutines.flow.FlowKt__ChannelsKt.emitAllImpl$FlowKt__ChannelsKt (Channels.kt:33)
  at kotlinx.coroutines.flow.FlowKt__ChannelsKt.access$emitAllImpl$FlowKt__ChannelsKt (Channels.kt:1)
  at kotlinx.coroutines.flow.FlowKt__ChannelsKt$emitAllImpl$1.invokeSuspend (Unknown Source:14)
  at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith (ContinuationImpl.kt:33)
  at kotlinx.coroutines.DispatchedTask.run (DispatchedTask.kt:104)
  at android.os.Handler.handleCallback (Handler.java:938)
  at android.os.Handler.dispatchMessage (Handler.java:99)
  at android.os.Looper.loopOnce (Looper.java:241)
  at android.os.Looper.loop (Looper.java:342)
  at android.app.ActivityThread.main (ActivityThread.java:8128)
  at java.lang.reflect.Method.invoke
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:583)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1045)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-18 09:53:08 +01:00
Nextcloud Android Bot
62eb4cc64d Weekly 20.1.0 Alpha 12 2024-11-18 03:16:00 +00:00
Nextcloud bot
e77544b0b6
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-18 02:59:52 +00:00
Valdnet
2cbfb0f1e9
Change apostrophe
Signed-off-by: Valdnet <47037905+Valdnet@users.noreply.github.com>
2024-11-17 11:53:54 +01:00
Nextcloud bot
13335250ca
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-17 03:05:59 +00:00
renovate[bot]
3ccd8c8ec4
Update plugin com.google.devtools.ksp to v2.0.21-1.0.28
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-16 12:49:12 +00:00
Nextcloud bot
ba339adf1f
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-16 02:57:45 +00:00
Nextcloud bot
026bb92be5
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-15 02:58:46 +00:00
renovate[bot]
524f6f80f5
Update dependency com.google.firebase:firebase-messaging to v24.1.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-15 00:33:36 +00:00
sowjanyakch
b558a71ede
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:05:50 +01:00
sowjanyakch
92caa215b0
error handling
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:05:50 +01:00
sowjanyakch
2c6daedb2b
handle disposable properly
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:05:50 +01:00
sowjanyakch
dba30346dc
use const val HTTP_STATUS_CODE_OK
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:05:50 +01:00
sowjanyakch
05ca7f52a5
remove Snackbar
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:05:50 +01:00
sowjanyakch
fbecfaf95d
reset status and hide the dialog
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:05:50 +01:00
sowjanyakch
3f74a440d5
add hint - your status was set automatically
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:05:49 +01:00
sowjanyakch
13208e85f9
remove redundant null check
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:05:49 +01:00
sowjanyakch
c4f4c857d3
check for capability before reverting status
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:05:49 +01:00
sowjanyakch
7a63a645fe
format
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:05:49 +01:00
sowjanyakch
9fbb3886ab
handle reset status button
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:05:46 +01:00
sowjanyakch
ec01a049c8
add elements to predefinedStatusesList correctly
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:04:43 +01:00
sowjanyakch
974da71e52
get backup status only if restore capability is available
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:02:29 +01:00
sowjanyakch
d08b4f51b8
add backup message in the predefined status list
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:02:29 +01:00
sowjanyakch
27aafda59f
test backupStatus endpoint
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:02:29 +01:00
sowjanyakch
5fe5931bc4
add capability for restore
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:02:29 +01:00
sowjanyakch
6a9211e292
show reset button on first item of recycler view
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:02:29 +01:00
sowjanyakch
9f7c899368
add reset button
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:02:28 +01:00
sowjanyakch
2aac51d8bb
modify predefined_status.xml
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:02:28 +01:00
sowjanyakch
8cd8c5ca01
create url for backup status
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:02:28 +01:00
sowjanyakch
658988901c
add backupStatus endpoint
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-14 17:02:28 +01:00
Sowjanya Kota
5ff1003154
Merge pull request #4428 from nextcloud/lock_room
Lock room
2024-11-14 16:53:54 +01:00
Marcel Hibbe
f94a0cf95c
Merge pull request #4436 from nextcloud/bugfix/noid/fixCallEmojiListByScrolling
fix to provide all call emojis
2024-11-14 16:02:18 +01:00
Marcel Hibbe
89964c0725
Merge pull request #4448 from nextcloud/bugfix/noid/fixWebsocketConnectionForChat
Bugfix/noid/fix websocket connection for chat
2024-11-14 15:54:53 +01:00
Marcel Hibbe
cd5ee2f619
fix to support different screen densities
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-14 15:36:59 +01:00
Marcel Hibbe
59ee0b0cb1
fix to provide all call emojis
As the number of provided emojis grew, there was a bug that only one emoji was shown.

Putting all 12 emojis would have been too close, so it's implemented to scroll them horizontally

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-14 15:36:59 +01:00
Julius Linus
3908d0ce14
Merge pull request #4441 from nextcloud/issue-4405-fix-filter
Align filter behavior with web
2024-11-14 06:55:23 -06:00
Marcel Hibbe
acd964869d
add disposable
however i was not able to see onDestroy being executed.

anyway, disposables won't be necessary when coroutine is used.

also: remove a useless outdated log line

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-14 13:41:06 +01:00
Marcel Hibbe
8dd1b885f3
fix check if federated is still the same
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-14 13:41:06 +01:00
Marcel Hibbe
3bd1a533e3
fix ANR error (blockingSubscribe in setupWebsocket)
The request seems to cause problems so blockingSubscribe doesn't seem to be a good choice here. This commit will replace blockingSubscribe by subscribe and modify the related code in order to be executed when the request succeeds.
The root cause why the request seems to cause problems may have to be analyzed further.

I was not able to reproduce the ANR without this PR, however the following error was reported on gplay console very often!:

      at jdk.internal.misc.Unsafe.park (Native method)
      at java.util.concurrent.locks.LockSupport.park (LockSupport.java:341)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionNode.block (AbstractQueuedSynchronizer.java:506)
      at java.util.concurrent.ForkJoinPool.unmanagedBlock (ForkJoinPool.java:3466)
      at java.util.concurrent.ForkJoinPool.managedBlock (ForkJoinPool.java:3437)
      at java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.await (AbstractQueuedSynchronizer.java:1623)
      at java.util.concurrent.LinkedBlockingQueue.take (LinkedBlockingQueue.java:435)
      at io.reactivex.internal.operators.observable.ObservableBlockingSubscribe.subscribe (ObservableBlockingSubscribe.java:56)
      at io.reactivex.Observable.blockingSubscribe (Observable.java:5552)
      at com.nextcloud.talk.chat.ChatActivity.setupWebsocket (ChatActivity.kt:2445)
      at com.nextcloud.talk.chat.ChatActivity.joinRoomWithPassword (ChatActivity.kt:2402)
      at com.nextcloud.talk.chat.ChatActivity.initObservers$lambda$13 (ChatActivity.kt:594)
      at com.nextcloud.talk.chat.ChatActivity.$r8$lambda$QKH5JCFLmCzRMlSJ-EV-m4IW5ig (unavailable)
      at com.nextcloud.talk.chat.ChatActivity$$ExternalSyntheticLambda38.invoke (D8$$SyntheticClass)
      at com.nextcloud.talk.chat.ChatActivity$sam$androidx_lifecycle_Observer$0.onChanged (unavailable:2)
      at androidx.lifecycle.LiveData.considerNotify (LiveData.java:133)
      at androidx.lifecycle.LiveData.dispatchingValue (LiveData.java:151)
      at androidx.lifecycle.LiveData.setValue (LiveData.java:309)
      at androidx.lifecycle.MutableLiveData.setValue (MutableLiveData.java:50)
      at com.nextcloud.talk.chat.viewmodels.ChatViewModel.getCapabilities (ChatViewModel.kt:240)
      at com.nextcloud.talk.chat.ChatActivity$initObservers$1$1.invokeSuspend (ChatActivity.kt:553)
      at com.nextcloud.talk.chat.ChatActivity$initObservers$1$1.invoke (unavailable:8)
      at com.nextcloud.talk.chat.ChatActivity$initObservers$1$1.invoke (unavailable:4)
      at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit (Emitters.kt:219)
      at kotlinx.coroutines.flow.FlowKt__ErrorsKt$catchImpl$2.emit (Errors.kt:154)
      at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit (Emitters.kt:220)
      at kotlinx.coroutines.flow.SharedFlowImpl.collect$suspendImpl (SharedFlow.kt:392)
      at kotlinx.coroutines.flow.SharedFlowImpl$collect$1.invokeSuspend (unavailable:15)
      at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith (ContinuationImpl.kt:33)
      at kotlinx.coroutines.DispatchedTask.run (DispatchedTask.kt:104)
      at android.os.Handler.handleCallback (Handler.java:938)
      at android.os.Handler.dispatchMessage (Handler.java:99)
      at android.os.Looper.loopOnce (Looper.java:210)
      at android.os.Looper.loop (Looper.java:299)
      at android.app.ActivityThread.main (ActivityThread.java:8168)
      at java.lang.reflect.Method.invoke (Native method)
      at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:556)
      at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1037)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-14 13:41:06 +01:00
Marcel Hibbe
e51ab67c37
fix check for remote server
As remote server is empty instead null when not available, the check was also true when no remote server was in use.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-14 13:41:03 +01:00
Sowjanya Kota
9257d41197
Merge pull request #4439 from nextcloud/bugfix/noid/fixNpeInRestoreMessageQueue
fix NPE in restoreMessageQueue
2024-11-14 09:56:12 +01:00
renovate[bot]
55fe39c902
fix(deps): update dependency com.mebigfatguy.fb-contrib:fb-contrib to v7.6.8
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-14 03:56:47 +00:00
Nextcloud bot
3f2a67f67b
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-14 03:01:05 +00:00
renovate[bot]
3a4f8aac57
fix(deps): update dependency androidx.compose:compose-bom to v2024.11.00
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-13 22:37:53 +00:00
Marcel Hibbe
dcec7bd786
fix crash when getting previousChatMessage
when adapter has no items adapter!!.items[1].item will crash with IndexOutOfBoundsException

This could happen e.g. when chat history is cleared.

error was:

Exception java.lang.IndexOutOfBoundsException: Index 1 out of bounds for length 0
  at jdk.internal.util.Preconditions.outOfBounds (Preconditions.java:64)
  at jdk.internal.util.Preconditions.outOfBoundsCheckIndex (Preconditions.java:70)
  at jdk.internal.util.Preconditions.checkIndex (Preconditions.java:266)
  at java.util.Objects.checkIndex (Objects.java:359)
  at java.util.ArrayList.get (ArrayList.java:434)
  at com.nextcloud.talk.chat.ChatActivity.processMessagesFromTheFuture (ChatActivity.kt:2666)
  at com.nextcloud.talk.chat.ChatActivity.access$processMessagesFromTheFuture (ChatActivity.kt:209)
  at com.nextcloud.talk.chat.ChatActivity$initObservers$12$1.invokeSuspend (ChatActivity.kt:875)
  at com.nextcloud.talk.chat.ChatActivity$initObservers$12$1.invoke (Unknown Source:8)
  at com.nextcloud.talk.chat.ChatActivity$initObservers$12$1.invoke (Unknown Source:4)
  at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit (Emitters.kt:219)
  at kotlinx.coroutines.flow.FlowKt__ErrorsKt$catchImpl$2.emit (Errors.kt:154)
  at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit (Emitters.kt:220)
  at kotlinx.coroutines.flow.SharedFlowImpl.collect$suspendImpl (SharedFlow.kt:392)
  at kotlinx.coroutines.flow.SharedFlowImpl$collect$1.invokeSuspend (Unknown Source:15)
  at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith (ContinuationImpl.kt:33)
  at kotlinx.coroutines.DispatchedTask.run (DispatchedTask.kt:104)
  at android.os.Handler.handleCallback (Handler.java:942)
  at android.os.Handler.dispatchMessage (Handler.java:99)
  at android.os.Looper.loopOnce (Looper.java:201)
  at android.os.Looper.loop (Looper.java:288)
  at android.app.ActivityThread.main (ActivityThread.java:7932)
  at java.lang.reflect.Method.invoke
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:548)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:942)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-13 15:20:39 +01:00
rapterjet2004
ab4b3d633c
Fix behavior
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-11-13 07:54:01 -06:00
Marcel Hibbe
b766abea5e
fix crash for unreadMarker
When messages were sorted out in handleSystemMessages it can happen that the chatMessageList is empty. Because setUnreadMessageMarker accessed chatMessageList[0] this crashed.

This can happen e.g. when only a reaction to a chat message was made before opening the chat.

Exception java.lang.IndexOutOfBoundsException: Empty list doesn't contain element at index 0.
  at kotlin.collections.EmptyList.get (Collections.kt:37)
  at kotlin.collections.EmptyList.get (Collections.kt:25)
  at com.nextcloud.talk.chat.ChatActivity.setUnreadMessageMarker (ChatActivity.kt:2691)
  at com.nextcloud.talk.chat.ChatActivity.processMessagesFromTheFuture (ChatActivity.kt:2651)
  at com.nextcloud.talk.chat.ChatActivity.access$processMessagesFromTheFuture (ChatActivity.kt:209)
  at com.nextcloud.talk.chat.ChatActivity$initObservers$12$1.invokeSuspend (ChatActivity.kt:875)
  at com.nextcloud.talk.chat.ChatActivity$initObservers$12$1.invoke (Unknown Source:8)
  at com.nextcloud.talk.chat.ChatActivity$initObservers$12$1.invoke (Unknown Source:4)
  at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit (Emitters.kt:219)
  at kotlinx.coroutines.flow.FlowKt__ErrorsKt$catchImpl$2.emit (Errors.kt:154)
  at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit (Emitters.kt:220)
  at kotlinx.coroutines.flow.SharedFlowImpl.collect$suspendImpl (SharedFlow.kt:392)
  at kotlinx.coroutines.flow.SharedFlowImpl$collect$1.invokeSuspend (Unknown Source:15)
  at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith (ContinuationImpl.kt:33)
  at kotlinx.coroutines.DispatchedTask.run (DispatchedTask.kt:104)
  at android.os.Handler.handleCallback (Handler.java:942)
  at android.os.Handler.dispatchMessage (Handler.java:99)
  at android.os.Looper.loopOnce (Looper.java:226)
  at android.os.Looper.loop (Looper.java:313)
  at android.app.ActivityThread.main (ActivityThread.java:8762)
  at java.lang.reflect.Method.invoke
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:604)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1067)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-13 14:42:31 +01:00
Marcel Hibbe
f144b64365
fix NPE in restoreMessageQueue
currentConversation was not yet initialized in ChatActivity.
In the future this may be better handled via StateFlows. For now it's solved via arguments.

Without the fix, this NPE appeared:

Exception java.lang.RuntimeException:
  at android.app.ActivityThread.performResumeActivity (ActivityThread.java:4768)
  at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:4801)
  at android.app.servertransaction.ResumeActivityItem.execute (ResumeActivityItem.java:54)
  at android.app.servertransaction.ActivityTransactionItem.execute (ActivityTransactionItem.java:45)
  at android.app.servertransaction.TransactionExecutor.executeLifecycleState (TransactionExecutor.java:176)
  at android.app.servertransaction.TransactionExecutor.execute (TransactionExecutor.java:97)
  at android.app.ActivityThread$H.handleMessage (ActivityThread.java:2215)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loopOnce (Looper.java:346)
  at android.os.Looper.loop (Looper.java:475)
  at android.app.ActivityThread.main (ActivityThread.java:7889)
  at java.lang.reflect.Method.invoke
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:548)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:1009)
Caused by java.lang.NullPointerException:
  at com.nextcloud.talk.chat.MessageInputFragment.onResume (MessageInputFragment.kt:146)
  at androidx.fragment.app.Fragment.performResume (Fragment.java:3180)
  at androidx.fragment.app.FragmentStateManager.resume (FragmentStateManager.java:606)
  at androidx.fragment.app.FragmentStateManager.moveToExpectedState (FragmentStateManager.java:285)
  at androidx.fragment.app.FragmentStore.moveToExpectedState (FragmentStore.java:113)
  at androidx.fragment.app.FragmentManager.moveToState (FragmentManager.java:1433)
  at androidx.fragment.app.FragmentManager.dispatchStateChange (FragmentManager.java:2977)
  at androidx.fragment.app.FragmentManager.dispatchResume (FragmentManager.java:2909)
  at androidx.fragment.app.FragmentController.dispatchResume (FragmentController.java:285)
  at androidx.fragment.app.FragmentActivity.onResumeFragments (FragmentActivity.java:334)
  at androidx.fragment.app.FragmentActivity.onPostResume (FragmentActivity.java:323)
  at androidx.appcompat.app.AppCompatActivity.onPostResume (AppCompatActivity.java:245)
  at android.app.Activity.performResume (Activity.java:8215)
  at android.app.ActivityThread.performResumeActivity (ActivityThread.java:4758)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-13 14:07:45 +01:00
Nextcloud bot
e268b7798e
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-13 03:03:33 +00:00
Marcel Hibbe
49c9b3c3e0
remove to set KEY_ROOM_ONE_TO_ONE twice
it's set in proceedToCall()

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-12 12:11:10 +01:00
Marcel Hibbe
79a8c16758
rename variables and methods
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-12 12:11:10 +01:00
sowjanyakch
37c3f35f7a
suppress warning string format invalid
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:09 +01:00
sowjanyakch
4705d1f7b0
use proper names for popup menu
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:09 +01:00
sowjanyakch
121e77b753
use white background for popup button and formatting
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:09 +01:00
sowjanyakch
eda9b94182
use touch listeners for hiding popup button
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:09 +01:00
sowjanyakch
0920029183
show popup for leaving call in 1:1
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:08 +01:00
sowjanyakch
90628c34ce
set "all" parameter to false and set to null only before API call
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:08 +01:00
sowjanyakch
d09b7b5a07
remove isGroupConversation variable
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:08 +01:00
sowjanyakch
cfe83dd027
remove isGroupConversation variable
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:08 +01:00
sowjanyakch
de637871a6
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:07 +01:00
sowjanyakch
e5789c0cf6
set bundle keys in CallNotificationActivity
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:07 +01:00
sowjanyakch
dff22845eb
implement material button
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:07 +01:00
sowjanyakch
a25f83cb4d
modify string
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:07 +01:00
sowjanyakch
d523f12462
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:07 +01:00
sowjanyakch
be9bda7f04
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:06 +01:00
sowjanyakch
bf3ed0ed42
handle end call button
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:06 +01:00
sowjanyakch
3d536c2af4
add short press and long press options to 1:1 conversation
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:06 +01:00
sowjanyakch
3a6a1edad4
add short press and long press options to group conversation
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:06 +01:00
sowjanyakch
6e2fdcb255
git bundle keys for group conversation
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:05 +01:00
sowjanyakch
9537a8d9d3
add bundle keys for one-one conversation
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:05 +01:00
sowjanyakch
ca0533a686
add button for end call for everyone
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:05 +01:00
sowjanyakch
ed9fc185bf
implement long click and short click on hangup button
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:05 +01:00
sowjanyakch
52fd3f9002
Add support for all parameter in leave call endpoint
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-12 12:11:05 +01:00
Nextcloud bot
edd6a01564
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-12 03:00:50 +00:00
Marcel Hibbe
1968d43691
require archived-conversations-v2
For archived conversations, require "-v2".
This is done because on server api, "archived-conversations" was already released for 20.0.2 by mistake which should have only be done for 20.1

As it's planned to release android talk 20.0.3 with a fresh master state, the archived conversations feature must be hidden manually, This is done by required "-v2".
Either it's served as this in the future or it can be removed for the 20.1.0 release.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-11 15:44:07 +01:00
Marcel Hibbe
2a2f8a8148
hide archivedFilterChip when capability is not available
Otherwise it would be shown for older NC versions without to be useful

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-11 15:44:06 +01:00
Marcel Hibbe
6092523146
delete isArchiveConversationsAvailable
only more complex checks should be made in CapabilitiesUtil, just checking a capability should be done directly via hasSpreedFeatureCapability

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-11 15:44:06 +01:00
Marcel Hibbe
07cf834cc5
hide archiveConversationTextHint when archive not available
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-11 15:44:06 +01:00
rapterjet2004
990f6ec3fa
Better Call Started Indicator
- Pinned to MessageInputFragment
- Collapsable
- Looks cool

Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-11-11 08:33:45 -06:00
Nextcloud Android Bot
3e10813ae0 Weekly 20.1.0 Alpha 11 2024-11-11 03:13:27 +00:00
Nextcloud bot
60853df4c0
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-11 02:58:20 +00:00
Nextcloud bot
8a4c45e8ca
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-09 02:58:55 +00:00
sowjanyakch
00632e5d70
suppress string format invalid
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-08 20:33:31 +01:00
sowjanyakch
17e105b09c
store lock setting in arbitrary storage
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-08 20:33:31 +01:00
sowjanyakch
50569a09af
set conversation read only
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-08 20:33:31 +01:00
sowjanyakch
956f2c435b
modify activity_conversation_info.xml
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-08 20:33:31 +01:00
renovate[bot]
3595c1d315
fix(deps): update dependency com.github.nextcloud.android-common:ui to v0.23.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-08 19:11:12 +00:00
renovate[bot]
f547966275 Update dependency com.vanniktech:emoji-google to v0.21.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-08 11:48:36 +01:00
renovate[bot]
e2d1d2ee8e
chore(deps): update plugin com.google.devtools.ksp to v2.0.21-1.0.27
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-08 02:05:15 +00:00
Andy Scherzinger
3ac1b18d3d
fix(spotbugs): Improve spotbugs scoring
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-11-07 15:42:58 +01:00
Christian Reiner
238532feb2 adjust outcoming message view holders to use full available width in NoteToSelf chat
Signed-off-by: Christian Reiner <foss@christian-reiner.info>
2024-11-06 19:54:52 +01:00
Christian Reiner
315e263d31 fix spelling of property name in ChatViewModel
Signed-off-by: Christian Reiner <foss@christian-reiner.info>
2024-11-06 19:34:14 +01:00
Nextcloud bot
d9bcf14696
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-06 02:54:03 +00:00
Marcel Hibbe
44ab12b63b
Merge pull request #4417 from nextcloud/bugfix/noid/fixDbMigration11to12
Fix DB migration 11 to 12
2024-11-05 16:08:53 +01:00
Marcel Hibbe
bd7f6d72c5
Merge pull request #4384 from nextcloud/issue-4361-message-queue-bug
Message Queue bug fixes
2024-11-05 15:30:43 +01:00
rapterjet2004
d96682889c
fix to display message queue when revisiting chat in offline mode
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-11-05 15:11:10 +01:00
Marcel Hibbe
2ad8c2eabc
set nc_last_moderator_leaving_room_warning to one line in strings.xml
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-05 15:00:51 +01:00
sowjanyakch
a39ca256de
add const val for error code
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-05 14:53:36 +01:00
sowjanyakch
6c4685dce5
handle errors properly
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-05 14:53:36 +01:00
sowjanyakch
f6489eb10d
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-05 14:53:36 +01:00
sowjanyakch
9df91b6e74
refresh main activity after leaving a conversation
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-05 14:53:36 +01:00
sowjanyakch
a07a5446be
make worker listenable
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-05 14:53:36 +01:00
sowjanyakch
aa5fd42c59
handle workResult
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-05 14:53:35 +01:00
sowjanyakch
088e6fd79f
Start unique work
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-05 14:53:35 +01:00
sowjanyakch
e04f2362e3
remove unused imports
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-05 14:53:35 +01:00
sowjanyakch
f6824f94f1
Convert LeaveConversationWorker from java to Kotlin
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-05 14:53:35 +01:00
sowjanyakch
be55a908d5
Rename .java to .kt
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-05 14:53:35 +01:00
Marcel Hibbe
11a4738a4c
fix addArchiveConversations migration method
this will set NOT NULL and DEFAULT 0 to hasArchived column

Otherwise there would be an error when updating from the previous DB version:

IllegalStateException: Migration didn't properly handle: Conversations(com.nextcloud.talk.data.database.model.ConversationEntity)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-05 14:43:19 +01:00
Marcel Hibbe
4ff9b2b3c6
add 12.json which includes modifications for "hasArchived"
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-05 13:49:10 +01:00
Marcel Hibbe
219163c4a8
revert 11.json to the state before modifications for "hasArchived"
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-05 13:49:09 +01:00
Marcel Hibbe
ff90552527
rename pair to triple
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-05 13:31:54 +01:00
Marcel Hibbe
662ddd275e
remove unused constants from ChatActivity
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-05 13:31:54 +01:00
Marcel Hibbe
29f7265b19
implement "Unread messages" popup with normal button
replace com.nextcloud.ui.popupbubble.PopupBubble with MaterialButton.

com.nextcloud.ui.popupbubble.PopupBubble was forked from
https://github.com/webianks/PopupBubble
which is quite outdated.

com.nextcloud.ui.popupbubble.PopupBubble is still used in ConversationsListActivity but there it should also be removed.

Removing this recycler view stuff will also help a bit to switch to JetpackCompose

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-05 13:31:54 +01:00
Marcel Hibbe
675bc9bec0
fix messages not shown + improve unread marker behavior
this commit will avoid to fail to show messages in adapter. This was caused by the usage of
messagesListAdapter.deleteById("-1");
in UnreadNoticeMessageViewHolder.
The bug seems to exist in the past already but was never reported (Sometimes, when receiving a lot of messages it could happen that some message in between is not shown in UI). However with recent changes after release 20.0.2 the bug appeared more often.

The root cause was not analyzed, but the handling was modified in general as the unread marker behavior was never really good.
By not using deleteById but replace it with new unread marker logic, the bug of disappearing messages is solved and the unread messages marker behavior is improved.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-11-05 13:31:54 +01:00
Nextcloud bot
d53ef9a65f
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-05 12:26:27 +00:00
Nextcloud bot
afe0e08ffd
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-05 10:56:29 +00:00
Nextcloud bot
88dc32e311
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-05 02:53:00 +00:00
Nextcloud bot
0e3ea77b9c
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-04 03:00:18 +00:00
Nextcloud bot
a4d953cdd0
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-03 03:00:32 +00:00
Nextcloud bot
33ce261108
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-02 03:34:37 +00:00
Nextcloud bot
2e3749cf58
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-11-01 02:50:39 +00:00
renovate[bot]
bf3d654105
Update dependency androidx.compose:compose-bom to v2024.10.01
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-31 20:17:03 +00:00
renovate[bot]
509012d6a7
Update dependency androidx.lifecycle:lifecycle-viewmodel-compose to v2.8.7
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-31 08:03:10 +00:00
github-actions[bot]
bc39a65e12
Merge pull request #4400 from nextcloud/renovate/androidx.constraintlayout-constraintlayout-2.x
Update dependency androidx.constraintlayout:constraintlayout to v2.2.0
2024-10-31 05:30:14 +00:00
renovate[bot]
114c414307
Update dependency androidx.constraintlayout:constraintlayout to v2.2.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-31 05:23:02 +00:00
renovate[bot]
7eb793686b
Update androidxCameraVersion to v1.4.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-31 05:21:30 +00:00
Nextcloud bot
7f74a1a383
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-31 02:51:57 +00:00
renovate[bot]
9457e23da0
Update lifecycleVersion to v2.8.7
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-31 02:29:22 +00:00
github-actions[bot]
1987d4a5fd
Merge pull request #4396 from nextcloud/renovate/androidx.lifecycle-lifecycle-runtime-ktx-2.x
Update dependency androidx.lifecycle:lifecycle-runtime-ktx to v2.8.7
2024-10-31 00:17:30 +01:00
renovate[bot]
e517763b1c
Update dependency androidx.lifecycle:lifecycle-runtime-ktx to v2.8.7
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-30 23:07:14 +00:00
renovate[bot]
68084b1be8
Update dependency androidx.compose.ui:ui-test-junit4 to v1.7.5
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-30 23:05:29 +00:00
renovate[bot]
1493cb1dac
Update dependency androidx.compose.material3:material3 to v1.3.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-30 20:48:18 +00:00
renovate[bot]
480a72d9c8
Update dependency androidx.compose.runtime:runtime to v1.7.5
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-30 20:24:09 +00:00
Nextcloud bot
6b294bd956
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-30 02:52:36 +00:00
Nextcloud bot
b290cd2712
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-29 02:50:05 +00:00
Julius Linus
085711d077
Merge pull request #4333 from nextcloud/issue-4257-archive-conversation
Archived Conversations 🗃️
2024-10-28 08:30:03 -05:00
Nextcloud Android Bot
eac3403238 Weekly 20.1.0 Alpha 10 2024-10-28 03:12:52 +00:00
Nextcloud bot
b64e952281
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-27 03:00:43 +00:00
Nextcloud bot
e98dbb1f91
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-26 02:50:19 +00:00
Nextcloud bot
d84d349019
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-25 03:08:02 +00:00
sowjanyakch
b2b64674c0
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-24 13:51:06 +02:00
sowjanyakch
3cd25f4248
use const val for time
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-24 13:49:16 +02:00
sowjanyakch
808da8970a
KtlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-24 13:43:00 +02:00
sowjanyakch
112a2c28f0
Only group Chat messages
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-24 13:43:00 +02:00
sowjanyakch
aaa27ba0ef
modify previousChatMessageIndex
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-24 13:43:00 +02:00
sowjanyakch
9f8374e61c
remove unused constants
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-24 13:43:00 +02:00
sowjanyakch
036485e28d
group chat messages
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-24 13:43:00 +02:00
Nextcloud bot
bf6e703419
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-24 03:19:52 +00:00
renovate[bot]
a1d134227f
Update plugin com.google.devtools.ksp to v2.0.21-1.0.26
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-23 22:20:29 +00:00
rapterjet2004
7285c0ae44
codacy and analysis
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-23 08:54:18 -05:00
sowjanyakch
074297ca42
remove comments
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 15:52:40 +02:00
sowjanyakch
fda055ee52
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 15:52:40 +02:00
sowjanyakch
ee445f5722
don't set timer in past
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 15:52:40 +02:00
sowjanyakch
71eb97c443
set timer for lobby
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 15:52:39 +02:00
rapterjet2004
3d9f8366c8
linter
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-23 08:26:44 -05:00
rapterjet2004
d464d714ff
uses NcApiCoroutines now
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-23 08:14:45 -05:00
Marcel Hibbe
b42824a5a1
Merge pull request #4371 from nextcloud/fix-handling-of-end-call-for-all-with-external-signaling
Fix handling of end call for everyone with external signaling
2024-10-23 15:02:26 +02:00
rapterjet2004
46efdf4b0c
changes
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-23 07:26:20 -05:00
Daniel Calviño Sánchez
ded3867c24 Add explicit documentation about the different casing
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2024-10-23 13:02:27 +02:00
Daniel Calviño Sánchez
0705451921 Fix handling of end call for all with external signaling
When the message applies to all participants the property is all in
lower case. The comparison is case sensitive, so the message was ignored
and the call was not left by the Talk Android app.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2024-10-23 13:01:16 +02:00
sowjanyakch
99b410f94c
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:39:18 +02:00
sowjanyakch
81040e3eb9
modify strings
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:05 +02:00
sowjanyakch
986f19a8ae
use official deck card icon and some alignment changes
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:05 +02:00
sowjanyakch
bf1a426e5b
use correct deck card icon
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:05 +02:00
sowjanyakch
1e826979c6
add replyable message tag
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:05 +02:00
sowjanyakch
eb5cdca295
Rename outcomingDeckCardViewHolder
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:04 +02:00
sowjanyakch
305a66ef5a
Add theming to deck card image
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:04 +02:00
sowjanyakch
de420a3a30
include deck card name as the lastMessageDisplayText
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:04 +02:00
sowjanyakch
f492ebf03d
solve contentDescription warning for Image
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:04 +02:00
sowjanyakch
8b52eb4637
work on UI of IncomingDeckCardViewHolder
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:04 +02:00
sowjanyakch
726fd34f2d
work on UI of OutcomingDeckCardViewHolder
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:04 +02:00
sowjanyakch
c80050d8f5
Display card deck with parameters
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:03 +02:00
sowjanyakch
56b0b80316
Work on Incoming and Outgoing deck card viewholder
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:36:03 +02:00
sowjanyakch
66d2db20aa
create deck card xml layout
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-23 11:35:59 +02:00
Nextcloud bot
417535da63
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-23 03:07:55 +00:00
Daniel Calviño Sánchez
fdb8692b59
Remove dead code to set the call state
"IN_CONVERSATION" was set when the activity was created and "state" in
the intent extras had the value "resume". However, there is no "state"
extra set by default in Android intents, it should be explicitly set,
but as it is not set anywhere in Talk Android code that would make it
dead code and safe to remove.

Moreover, the connection to the call should be initialized again in any
case rather than resumed when "onCreate" is called, as it is likely that
any previous connection would have been ended if the previous activity
instance was destroyed.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2024-10-22 16:51:10 +02:00
Marcel Hibbe
ea00481031
Merge pull request #4346 from nextcloud/fix-ignored-blank-lines-in-javadocs
Fix ignored blank lines in Javadocs
2024-10-22 14:52:24 +02:00
Marcel Hibbe
4ff3702f8b
Merge pull request #4356 from nextcloud/fix-partial-path-travel-1
Adjust cacheDir based on Android version
2024-10-22 11:41:17 +02:00
Marcel Hibbe
7a7ceb8714
format code + remove unused import
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-22 11:29:51 +02:00
Marcel Hibbe
c873899a71
add empty content descriptions
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-22 11:27:27 +02:00
rapterjet2004
b192e0ec60
linter
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:51:08 +02:00
rapterjet2004
cc717b25f6
got deleting working and added attempts logic again
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:51:06 +02:00
rapterjet2004
df2c6cfc06
impl marcel suggestions + adding deleting cache option
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:50:58 +02:00
rapterjet2004
9bdaf68232
fixed deletion bug, implemented Marcel's suggestions
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:50:30 +02:00
rapterjet2004
0d9c5bfcb9
fixed some bugs
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:49:57 +02:00
rapterjet2004
399fa7eb70
got replying working
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:49:57 +02:00
rapterjet2004
411a4f1dce
got editing down
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:49:56 +02:00
rapterjet2004
8cd0983088
WIP Editing
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:49:56 +02:00
rapterjet2004
0041fb3b71
deleting works
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:49:56 +02:00
rapterjet2004
98e0b7a270
should have fixed the UI now with lifecycle and error handling
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:49:51 +02:00
rapterjet2004
fb9a7b8e04
added ui
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:46:04 +02:00
rapterjet2004
498a1274d9
git
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-22 10:46:03 +02:00
Nextcloud bot
4705469f5f
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-22 02:56:30 +00:00
renovate[bot]
9cbfe3ab6f
fix(deps): update dependency com.google.firebase:firebase-messaging to v24.0.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-21 20:43:10 +00:00
renovate[bot]
867d04a024
fix(deps): update dependency org.junit.vintage:junit-vintage-engine to v5.11.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-21 15:49:36 +00:00
Marcel Hibbe
f817c20b4e
fix to handle chats without offline messages when connection is lost
avoid NPE:

java.lang.NullPointerException
	at com.nextcloud.talk.chat.data.network.OfflineFirstChatRepository.getCappedMessagesAmountOfChatBlock(OfflineFirstChatRepository.kt:186)
	at com.nextcloud.talk.chat.data.network.OfflineFirstChatRepository.access$getCappedMessagesAmountOfChatBlock(OfflineFirstChatRepository.kt:43)
	at com.nextcloud.talk.chat.data.network.OfflineFirstChatRepository$loadInitialMessages$1.invokeSuspend(OfflineFirstChatRepository.kt:162)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-21 15:33:25 +02:00
Marcel Hibbe
7e3a4e4a83
refactoring and logging
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-21 13:49:55 +02:00
Marcel Hibbe
c81b1fa62f
pass newestMessageIdFromDb to initMessagePolling
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-21 13:49:55 +02:00
Marcel Hibbe
7eb8b9fa70
extract getCappedMessagesAmountOfChatBlock
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-21 13:49:55 +02:00
Marcel Hibbe
adf18020c1
Fix unintended deletion of conversations (+related messages&chatBlocks)
Mistake was, that the conversations from DB and sync could differ due to values.
E.g. when a user changed the status, the conversations from DB and sync would differ. So there were conversations (+related messages&chatBlocks) deleted sometimes.
This caused bugs that when entering a chat, all data was loaded again.

In the previous implementation (before this PR), this error was only visible in the UI when you were offline (in this case, nothing was displayed!).

To fix the bug, only the internalId's are compared.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-21 13:49:55 +02:00
Marcel Hibbe
3d37cc0831
only do initial request if newestMessageIdFromDb is lower than lastReadMessage from conversation
If conversation has a newer message id than DB then an online request is necessary

If conversation has an older message id than DB then an online request is not necessary (this could happen when updating of DB is implemented for push notification, not yet done).

If conversation has the same message id like DB than request can be skipped

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-21 13:49:54 +02:00
Marcel Hibbe
dc38904d01
delay progress bar
delay progress bar for one second before showing up for slow connection

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-21 13:49:54 +02:00
Marcel Hibbe
b1d6086684
load conversation from DB first, then update by request if connection is available
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-21 13:49:54 +02:00
Marcel Hibbe
818a843143
check if sync succeeded
Decrease message limit for retries of message loading

make it possible to add any amount (up to 100) of messages to UI for initial loading.

add logging

only make initial request for chat messages when newest message from DB is not equal the lastReadMessage that is offered by the conversation

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-21 13:49:54 +02:00
Nextcloud Android Bot
a331ba6372 Weekly 20.1.0 Alpha 09 2024-10-21 03:14:43 +00:00
Nextcloud bot
a5c1c64456
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-21 02:49:22 +00:00
Nextcloud bot
c89473020c
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-20 02:53:41 +00:00
renovate[bot]
6deffd7548
fix(deps): update dependency androidx.compose.runtime:runtime to v1.7.4
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-19 07:48:42 +00:00
renovate[bot]
5b8d0febf4
fix(deps): update dependency androidx.compose:compose-bom to v2024.10.00
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-19 05:17:39 +00:00
github-actions[bot]
393f656786
Merge pull request #4350 from nextcloud/renovate/androidx.compose.ui-ui-test-junit4-1.x
fix(deps): update dependency androidx.compose.ui:ui-test-junit4 to v1.7.4
2024-10-19 07:10:28 +02:00
renovate[bot]
38b19f8bdc
fix(deps): update dependency androidx.compose.ui:ui-test-junit4 to v1.7.4
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-19 04:54:01 +00:00
github-actions[bot]
32f3070221
Merge pull request #4348 from nextcloud/renovate/androidx.activity-activity-ktx-1.x
fix(deps): update dependency androidx.activity:activity-ktx to v1.9.3
2024-10-19 06:45:53 +02:00
github-actions[bot]
17eae65dc6
Merge pull request #4347 from nextcloud/renovate/androidx.activity-activity-compose-1.x
fix(deps): update dependency androidx.activity:activity-compose to v1.9.3
2024-10-19 06:44:52 +02:00
Nextcloud bot
8444ac0e88
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-19 03:05:59 +00:00
renovate[bot]
e86e3c9aaf
fix(deps): update dependency androidx.activity:activity-ktx to v1.9.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-19 02:42:50 +00:00
renovate[bot]
a77f08b74a
fix(deps): update dependency androidx.activity:activity-compose to v1.9.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-19 02:41:25 +00:00
Daniel Calviño Sánchez
1c0e473e1a Fix ignored blank lines in Javadocs
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2024-10-18 14:28:55 +02:00
Nextcloud bot
4f4285810b
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-18 03:01:00 +00:00
Nextcloud bot
2d37338a31
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-17 02:57:49 +00:00
rapterjet2004
ea7d48fb67
detekt
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-16 08:57:40 -05:00
Nextcloud bot
210a6aaf1c
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-16 03:05:08 +00:00
renovate[bot]
3b70acc309
fix(deps): update mockito monorepo to v5.14.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-15 14:29:11 +00:00
rapterjet2004
39305d7e96
Ironed out the bugs
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-15 08:15:13 -05:00
Nextcloud bot
b731d6ad38
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-15 02:50:51 +00:00
rapterjet2004
94f33c13bc
WIP got archived working - still have some todos
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-14 09:00:24 -05:00
Nextcloud Android Bot
c9d3aebdc7 Weekly 20.1.0 Alpha 08 2024-10-14 03:14:01 +00:00
Nextcloud bot
9e7555a911
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-14 02:49:49 +00:00
Nextcloud bot
d8089beeb2
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-13 02:57:15 +00:00
Nextcloud bot
37c0854d6e
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-12 02:50:35 +00:00
rapterjet2004
8eeca17d86
WIP
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-10-11 10:51:37 -05:00
renovate[bot]
a399d472aa
chore(deps): update plugin com.google.devtools.ksp to v2.0.21-1.0.25
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-11 08:13:00 +00:00
Nextcloud bot
26ba3a1725
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-11 03:00:24 +00:00
renovate[bot]
72200ba236
chore(deps): update plugin org.jetbrains.kotlin.plugin.compose to v2.0.21
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-10 17:36:35 +00:00
Nextcloud bot
fa8272f595
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-10 02:53:21 +00:00
Nextcloud bot
0f88b4af45
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-09 02:52:49 +00:00
Andy Scherzinger
006ec3bc1c
build.gradle(java): Lock-in jdk on 17
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-10-07 18:32:37 +02:00
Andy Scherzinger
47e9c71ea9
style(ktlint): Fix formatting in kotlin
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-10-07 16:34:59 +02:00
Andy Scherzinger
4571732480
fix(ktlint): Replace wildcard import
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-10-07 15:45:20 +02:00
Nextcloud Android Bot
f9e41bbdde Weekly 20.1.0 Alpha 07 2024-10-07 03:13:34 +00:00
Nextcloud bot
2ba5a46fc0
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-05 02:51:21 +00:00
renovate[bot]
f5e7f9fd89
Update dependency org.junit.vintage:junit-vintage-engine to v5.11.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-04 13:24:28 +00:00
Nextcloud bot
778230d039
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-04 02:52:39 +00:00
Nextcloud bot
7ddf048061
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-10-03 02:51:05 +00:00
renovate[bot]
51dc692402
Update dependency androidx.compose:compose-bom to v2024.09.03
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-02 22:37:14 +00:00
github-actions[bot]
d7ad139551
Merge pull request #4309 from nextcloud/renovate/androidx.compose.ui-ui-test-junit4-1.x
Update dependency androidx.compose.ui:ui-test-junit4 to v1.7.3
2024-10-02 21:49:20 +02:00
renovate[bot]
0cf1467ca6
Update dependency androidx.compose.ui:ui-test-junit4 to v1.7.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-02 19:39:39 +00:00
renovate[bot]
b1d72c1a83
Update dependency androidx.compose.runtime:runtime to v1.7.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-02 19:38:35 +00:00
Marcel Hibbe
ce8143a807
center search results in chat
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-02 14:03:11 +02:00
Marcel Hibbe
305f1732ba
fix availability of search feature.
Hide search feature if room is federated.
Also, for conversation list the check for federation inside isUnifiedSearchAvailable makes no sense.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-10-02 14:02:04 +02:00
renovate[bot]
2a5b72e721
Update dependency com.google.firebase:firebase-messaging to v24.0.2
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-10-01 22:11:22 +00:00
Sowjanya Kota
acd31ec2b5
Merge pull request #4289 from nextcloud/bugfix/4288/fixTypingIndicatorPosition
fix position and animation of typing indicator
2024-10-01 13:37:35 +02:00
sowjanyakch
d76a1d0bd9
make predefined status use custom time
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-10-01 12:45:31 +02:00
renovate[bot]
e8e89c80b7
Update mockito monorepo to v5.14.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-30 13:23:20 +00:00
Nextcloud Android Bot
c5700cdf6a Weekly 20.1.0 Alpha 06 2024-09-30 03:14:18 +00:00
Nextcloud bot
5a4047432a
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-09-29 03:11:01 +00:00
renovate[bot]
ddd131f225
Update dependency com.mebigfatguy.fb-contrib:fb-contrib to v7.6.5
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-29 01:40:37 +00:00
Nextcloud bot
81704eb655
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-09-28 02:50:17 +00:00
renovate[bot]
d380cbd676
Update mockito monorepo to v5.14.0
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-27 17:09:54 +00:00
Marcel Hibbe
94d62a943f
fix position and animation of typing indicator
Without this fix, typing indicator moves up and wont go down

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-09-27 16:51:45 +02:00
Julius Linus
246d496024
Merge pull request #4273 from nextcloud/fix-reminder-refactor
[Bug Fix] Fix wrong value when choosing custom reminder date
2024-09-27 09:45:30 -05:00
sowjanyakch
de582f8b0b
use variable "VOICE_MESSAGE_PREFIX_MAX_LENGTH" to restrict length of voice recording file name
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-27 12:41:36 +02:00
sowjanyakch
2478aa884b
put file length value in utils
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-27 12:41:36 +02:00
sowjanyakch
ce8c4b2b84
fix file name of voice recording
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-27 12:41:36 +02:00
sowjanyakch
25846fe23f
set default emoji only when status icon is null
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-27 12:24:38 +02:00
sowjanyakch
1347ec29c4
Set empty status message and default emoji
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-27 12:13:32 +02:00
Marcel Hibbe
78e738bd51
add copyright to fix reuse
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-09-27 09:37:42 +02:00
Nextcloud bot
ca747af78c
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-09-27 02:51:56 +00:00
renovate[bot]
28bb0d7106
Update dependency com.github.nextcloud.android-common:ui to v0.23.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-26 15:16:35 +00:00
Marcel Hibbe
16c49bc430
bump versions for SERVER_VERSION_MIN_SUPPORTED + SERVER_VERSION_SUPPORT_WARNING
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-09-26 13:27:45 +02:00
Marcel Hibbe
ebc2fd2702
Add test for conversation conversion
This test respects different API versions and checks if default values are set as expected.

- remove deprecated+unused methods
- remove comments
- remove unnecessary double-bang operator

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-09-26 13:27:44 +02:00
sowjanyakch
ebace8713a
Rounded corners for change password dialog
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-26 13:13:57 +02:00
sowjanyakch
8c967c4f56
use open lock icon for set password
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-26 13:13:56 +02:00
sowjanyakch
c165e9fe0c
UI improvements
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-26 13:13:56 +02:00
sowjanyakch
31c0d74356
Add change password dialog
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-26 13:13:56 +02:00
sowjanyakch
381804c892
Add Change Password dialogue
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-26 13:13:56 +02:00
parneet-guraya
856c0761c9
Fix logic for date time retrieval
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-09-25 22:04:11 +05:30
renovate[bot]
45d7969890
Update dependency org.junit.vintage:junit-vintage-engine to v5.11.1
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-25 07:53:51 +00:00
Sowjanya Kota
2592f72039
Merge pull request #4265 from nextcloud/bugfix/noid/fixCrashWhenExtSignalingEmpty
Fix crash when externalSignalingServer is empty
2024-09-25 09:48:56 +02:00
Nextcloud bot
b1cc652657
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-09-25 02:53:27 +00:00
Marcel Hibbe
7dc7051481
Fix crash when externalSignalingServer is empty
Otherwise, following crash happened, as it was tried to deal with the empty url:

2024-09-24 15:10:30.719 17765-17765 WebSocketInstance       com.nextcloud.talk2                  D  restartWebSocket: /spreed
2024-09-24 15:10:30.722 17765-17765 System.err              com.nextcloud.talk2                  W  java.lang.IllegalArgumentException: Expected URL scheme 'http' or 'https' but no scheme was found for /spree...
2024-09-24 15:10:30.723 17765-17765 System.err              com.nextcloud.talk2                  W  	at okhttp3.HttpUrl$Builder.parse$okhttp(HttpUrl.kt:1261)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-09-24 16:25:33 +02:00
Marcel Hibbe
b78267d96f
try to avoid NPE for currentConversation
On gplay console the following NPE was reported for the line

participantPermissions = ParticipantPermissions(spreedCapabilities, currentConversation!!)

 E  FATAL EXCEPTION: main
          Process: com.nextcloud.talk2, PID: 6626
          java.lang.NullPointerException
          at com.nextcloud.talk.chat.ChatActivity.initObservers$lambda$13(ChatActivity.kt:583)
          at com.nextcloud.talk.chat.ChatActivity.$r8$lambda$QKH5JCFLmCzRMlSJ-EV-m4IW5ig(Unknown Source:0)

which seems that currentConversation was null. If it would have been spreedCapabilities, then the error would have been thrown in the line before..

A reason MAY BE that the observer is triggered before setData on the ViewModel is executed.
While this fix is just not executing code when currentConversation is null, it's unsure if it will follow up problems (like an empty chat) or if the observer is triggered another time when currentConversation is available.

So it's just a hotfix.
To improve the situation in the long term, we should move more logic to viewModel and only use Flow instead to mix it with LiveData.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-09-24 15:52:49 +02:00
Marcel Hibbe
aeacfa09b6
avoid UninitializedPropertyAccessException for spreedCapabilities
reported issue on gplay console was:

Exception kotlin.UninitializedPropertyAccessException: lateinit property spreedCapabilities has not been initialized
  at com.nextcloud.talk.chat.ChatActivity.getSpreedCapabilities (ChatActivity.kt:284)
  at com.nextcloud.talk.chat.ChatActivity.processExpiredMessages (ChatActivity.kt:2536)
  at com.nextcloud.talk.chat.ChatActivity.access$processExpiredMessages (ChatActivity.kt:204)
  at com.nextcloud.talk.chat.ChatActivity$initObservers$10$1.invokeSuspend (ChatActivity.kt:820)

This is just a hotfix while hoping processExpiredMessages is executed again while spreedCapabilities are available.

To improve the situation in the long term, we should move more logic to viewModel and have better control over sequence of actions.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-09-24 15:25:42 +02:00
sowjanyakch
8bf9e3552e
rename variable selectedImageUri
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-23 16:40:06 +02:00
sowjanyakch
384ba6945f
ktlint format
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-23 16:40:06 +02:00
sowjanyakch
4dd22d6223
Get selectedImageUri from ViewModel
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-23 16:40:06 +02:00
sowjanyakch
bc02236801
Make Conversation name text limit to single line
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-23 16:40:06 +02:00
sowjanyakch
317f745806
Only display delete icon when user avatar is selected
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-23 16:40:05 +02:00
Nextcloud Android Bot
44e87dbd42 Weekly 20.1.0 Alpha 05 2024-09-23 03:12:39 +00:00
Marcel Hibbe
b080e891bb
fix to not remove call buttons for federated conversations after 30 seconds
After 30 seconds (when the capabilities were updated) the call buttons of federated conversations were removed (this was done back then when fed calls were not implemented).

However this happened not always because of the check
"if (this::spreedCapabilities.isInitialized) {...."
It seems this check sometimes is false when it's supposed to be true. This has be to further investigated and has to be be simplified/improved by a cleaner architecture.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-09-20 13:46:21 +02:00
renovate[bot]
bddf1361f8
Update dependency org.jetbrains.kotlinx:kotlinx-serialization-json to v1.7.3
Signed-off-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-09-19 16:56:56 +00:00
Julius Linus
5351296afd
Merge pull request #4240 from nextcloud/bugfix/4238/fixToHideMessageInputWhenNoRestriction
fix to hide messageInputFragment when user has no restriction to write
2024-09-19 18:48:25 +02:00
Nextcloud bot
663ba0a2ed
Fix(l10n): Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2024-09-19 02:51:16 +00:00