Commit graph

4531 commits

Author SHA1 Message Date
Andy Scherzinger
8bd3e3461e Replace ImageButtons with FABs
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-03-17 09:42:41 +00:00
Andy Scherzinger
a042e2da9c Fix horizontal (=landscape) call design button layouting/sizing
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-03-17 09:42:41 +00:00
Nextcloud bot
f28e41ff3c
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-17 04:30:46 +00:00
Nextcloud bot
e59f9ff88c
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-17 04:30:26 +00:00
Nextcloud bot
ca60f18fac
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-16 18:42:38 +00:00
Nextcloud bot
bbcf83c5a2
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-16 18:42:16 +00:00
Marcel Hibbe
df9d7d6b41
Rearrange strings for shared items
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-16 16:49:34 +01:00
Marcel Hibbe
f94d7b8858
Make shared items horizontally scrollable
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-16 16:33:58 +01:00
Marcel Hibbe
5aed5f1d43
Add call recordings to shared items
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-16 16:33:05 +01:00
Marcel Hibbe
5688c10978
Fix to display chips with emojis
Chips with emojis were not shown correctly.

The message with the emoji was not correctly replaced, that's why now the key itself is passed and replaced with the chip instead to replace a text with emoji with a chip.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-16 14:30:46 +01:00
Nextcloud bot
f698bb159b
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-16 07:42:18 +00:00
Nextcloud bot
d72e015c85
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-16 07:41:58 +00:00
Nextcloud bot
971cab2e05
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-16 04:38:04 +00:00
Nextcloud bot
773860c5b0
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-16 04:37:45 +00:00
Marcel Hibbe
827e44fd3f Rename some "magic"
Only renaming...

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-14 16:28:27 +00:00
Marcel Hibbe
a190fb6cf7 Use own okHttpClient for coil ImageLoader
This change will use the own okHttpClient which also contains the trusted key.

It will avoid the SSLHandshakeException:

E/RealImageLoader: javax.net.ssl.SSLHandshakeException: java.security.cert.CertPathValidatorException: Trust anchor for certification path not found.
        at com.google.android.gms.org.conscrypt.ConscryptFileDescriptorSocket.startHandshake(:com.google.android.gms@224915028@22.49.15 (100400-499306216):25)
        at okhttp3.internal.connection.RealConnection.connectTls(RealConnection.kt:379)
        at okhttp3.internal.connection.RealConnection.establishProtocol(RealConnection.kt:337)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-14 16:28:27 +00:00
Tim Krüger
eabd0b2d2c Split different exception scopes
Before this change the initinalization of the trusted key store was
combined in one try-catch-block. If anything went wrong an new in memory
trusted key store was created. Programming against an exception is an
bad pattern.

So the initialization is now splitted into multiple try-catch-blocks
with it's own scopes and the decision if the trusted key store is newly
created in memory or loaded from a exisitng file is done by an if
condition check.

Signed-off-by: Tim Krüger <t@timkrueger.me>
2023-03-14 16:28:27 +00:00
Nextcloud bot
1bbbe20834
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-14 04:34:47 +00:00
Nextcloud bot
bcf0e00a16
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-14 04:34:27 +00:00
Nextcloud bot
ffdcc59d8e
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-13 04:32:42 +00:00
Nextcloud bot
e56bb58134
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-13 04:32:22 +00:00
Nextcloud bot
01c26de537
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-12 04:31:14 +00:00
Nextcloud bot
7bc67bd3b6
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-12 04:30:54 +00:00
Nextcloud bot
c27cce61eb
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-11 04:33:20 +00:00
Nextcloud bot
d615b63907
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-11 04:33:00 +00:00
Marcel Hibbe
f05b218743
Extract worker initialization
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-10 16:24:15 +01:00
Marcel Hibbe
6a7f54a5bf
Remove debug toast messages
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-10 15:12:16 +01:00
Marcel Hibbe
abd1d4b247
Remove to set localParticipantMessageListener in joinRoom
this is already done in onAttach which seems to do the job fine after using workManager queues and fixing to set externalSignalingServer to user.
See commits da1714bb and 29a37086

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-10 14:44:20 +01:00
Marcel Hibbe
609e5a2c71
Use WorkManager queue to chain workers.
This is necessary as many of the workers store user data. When running in parallel, there are race conditions and user data that was stored by one worker gets directly overwritten by the next worker. E.g. this happened with the "externalSignalingServer" attribute of user:
SignalingSettingsWorker saved the user with the externalSignalingServer value, but then
CapabilitiesWorker kicked in and saved the user without this value.

Because of this, in WebsocketConnectionsWorker getExternalSignalingServer() of the user was null.
Because of this, webSocketConnectionHelper.getExternalSignalingInstanceForServer(..) was not called.
So the webSocketInstanceMap in WebSocketConnectionHelper was never filled.
This is why WebSocketConnectionHelper.getMagicWebSocketInstanceForUserId(..) in ChatController failed to get a webSocketInstance.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-10 14:44:20 +01:00
Marcel Hibbe
8c991c697f
Fix to save externalSignalingServer to user
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-10 14:44:20 +01:00
Marcel Hibbe
9882ddc536
Fix logic in workers when user was not found
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-10 14:44:20 +01:00
Marcel Hibbe
39441ae075
Move setupWebsocket() to onAttach() in ChatController
Add toast warning for debug mode

Rename "magic" stuff

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-10 14:25:49 +01:00
Nextcloud bot
adb97eb397
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-10 04:38:35 +00:00
Nextcloud bot
f1bb10b27f
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-10 04:38:14 +00:00
Marcel Hibbe
a6ff8da18b
Fix horizontal (=landscape) call design
Without this fix, the call buttons became huge in landscape mode.

The LinearLayout of the callControls now has a fixed width which comes in handy in landscape mode.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-09 16:16:12 +01:00
Marcel Hibbe
b10558eee8
Avoid shadowed warning for xChatLastCommonRead
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-09 14:05:54 +01:00
Marcel Hibbe
6efbbae823
Extract creation of fieldMap for pullChatMessages
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-09 14:01:34 +01:00
Marcel Hibbe
82abb9d9bd
Fix to avoid duplicated messages for HTTP_CODE_NOT_MODIFIED
the "historyRead" didn't make any sense to me, and deleting it solved the issue to avoid duplicated messages when the response was HTTP_CODE_NOT_MODIFIED

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-09 13:49:05 +01:00
Marcel Hibbe
67957996b0
Fix duplicated messages after history loading
The solution was to avoid recursive call off pullChatMessages if lookIntoFuture is false.
However the recursive call has to be made when fetching messages for the first time:

if (isFirstMessagesProcessing || lookIntoFuture) {
    pullChatMessages(true,...)
}

For this, setting of isFirstMessagesProcessing had to be moved below this code.

Furthermore in the commit:
add logging & refactoring

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-09 13:49:04 +01:00
Marcel Hibbe
7f77cf8c8e
Refactor pullChatMessages
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-09 13:49:04 +01:00
Marcel Hibbe
6f4a24b28f
Refactor (delete lookingIntoFuture)
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-09 13:49:04 +01:00
Marcel Hibbe
7065b18d07
Refactor pullChatMessages request
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-09 13:49:04 +01:00
Marcel Hibbe
21606bc9c1
Make setReadMarker parameter boolean
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-09 13:49:03 +01:00
Marcel Hibbe
3d6674e35a
Make lookIntoFuture parameter boolean
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-09 13:49:02 +01:00
Nextcloud bot
6b6dff9e43
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-09 04:38:29 +00:00
Nextcloud bot
4b48016b32
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-09 04:38:09 +00:00
Nextcloud bot
d4e22da91b
Fix(l10n): 🔠 Update translations from Transifex
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-08 04:37:01 +00:00
Nextcloud bot
075ce66b25
Fix(l10n): 🛠️ Update Transifex configuration
Signed-off-by: Nextcloud bot <bot@nextcloud.com>
2023-03-08 04:36:40 +00:00
Andy Scherzinger
6ad498818d
Merge pull request #2844 from nextcloud/feature/noid/scrollingInChatEnhancements
Scroll to quoted message also for outgoing messages
2023-03-07 16:19:58 +01:00
Marcel Hibbe
f3a057b0e4
Set currentConversation when joinRoom succeeds
currentConversation should have already been set, but it makes sense to set it with the most current data of this case.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-03-07 10:31:47 +01:00