Commit Graph

3535 Commits

Author SHA1 Message Date
Marcel Hibbe
4a72735a57
open federated chat after accepting the invite
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-26 16:34:58 +01:00
Marcel Hibbe
03d33731fd
fix to handle invitation panel when userId is the same
with same userId on both servers, the invitation panel could get shown also there were no invitations for the current account

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-26 15:32:18 +01:00
Marcel Hibbe
0e64cd56f7
adapt models to changed federation invitations API
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-26 15:18:48 +01:00
sowjanyakch
ade3182d34
Add string message_last_edited_by
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-03-26 11:38:38 +01:00
Marcel Hibbe
32f4b59161
fix to show all participants in conversation info
In general it's a bad idea to use recyclerview inside scrollviews because of poor performance! So this is only a fix until everything is replaced with jetpack compose.

setHasFixedSize and isNestedScrollingEnabled were set to false. This might not be necessary for the current implementation, but it's recommended when using NestedScrollView.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-25 11:55:33 +01:00
Andy Scherzinger
ed216bca85
Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-03-24 20:08:43 +01:00
Andy Scherzinger
d1a8669f11
Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-03-24 14:24:57 +01:00
Andy Scherzinger
c2683e0ed0
Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-03-23 17:18:18 +01:00
Julius Linus
20378ae89c
formatting
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-22 12:56:30 +01:00
Parneet Singh
6c52e73b9c
use DialogFragment to retain state
Signed-off-by: Parneet Singh <gurayaparneet@gmail.com>
2024-03-22 12:56:30 +01:00
Andy Scherzinger
c005d93f8c
remove magic numbers
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-03-21 18:42:28 +01:00
Marcel Hibbe
cc19157867 convert DisplayUtils to kt
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-21 16:39:16 +01:00
Marcel Hibbe
bb6af562cc convert MentionAutocompleteItem to kt
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-21 16:39:16 +01:00
Marcel Hibbe
4a75108557 reformat code
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-21 16:39:16 +01:00
Marcel Hibbe
c55403c023 modify log statement
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-21 16:39:16 +01:00
Marcel Hibbe
c0c671bccf fix to use correct cloudId.
Without this fix, the avatars for "normal" messages were not able to show avatars.
Only the messages that contained messageParameters with actor were able to show avatars(for example "userX invited userY")

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-21 16:39:16 +01:00
Julius Linus
870ef03d61 Federated Mentions
- Federated mention chip
- Federated message avatars
- Helper functions

Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2024-03-21 16:39:16 +01:00
Marcel Hibbe
2cec1637e8
hide call notification setting for federated rooms
because right now it's response is http 406 as calls are not implemented for federation

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-20 17:38:43 +01:00
Marcel Hibbe
7e57ecaf79
hide shared items for federated rooms.
because right now it's response is http 406

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-20 15:57:32 +01:00
Marcel Hibbe
611dcb7911
fix error handling for shared items.
Before this with http 406 it threw a NPE and UI was shown as loading state.
With this commit an empty list is returned when there is a http error.

http 406 happens for federated rooms for now. So it might be that Shared items screen will be hidden by additional commits.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-20 15:53:39 +01:00
Marcel Hibbe
5fead79743
hide actions for federated rooms
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-20 15:22:24 +01:00
Marcel Hibbe
d15d8d29e6
fix to mark federated rooms as read
As lastMessageId is not available for federatedRooms, the API on server side now allows the messageID to be optional. This is done by this commit: messageId is null when it's a federated room.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-20 13:27:48 +01:00
sowjanyakch
d80200906d
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-03-19 13:19:55 +01:00
sowjanyakch
2b1a16415c
Implemented delete-messages-unlimited feature
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-03-19 13:19:55 +01:00
Marcel Hibbe
2e317b134c
use X-Chat-Last-Common-Read to fix read status
Without this commit, the read status was broken as X-Chat-Last-Common-Read was not used. It was removed by
https://github.com/nextcloud/talk-android/pull/3630

As a result all messages were marked as unread after waiting for 30 seconds.

With this commit the X-Chat-Last-Common-Read is used again.
Messages are marked as read again also after 30 seconds.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-19 13:18:09 +01:00
Andy Scherzinger
4b0daa6978
Fix kotlin fomatting
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-03-17 14:41:36 +01:00
Giacomo Pacini
ee6722bc6f
Merge branch 'master' into master 2024-03-14 15:25:22 +01:00
Sowjanya Kota
a8d9009106
Merge pull request #3712 from nextcloud/bugfix/noid/fixConversationListItemsAfterSearch
fix to hide open conversations after returning from search
2024-03-14 15:23:46 +01:00
Giacomo Pacini
2deefb3c0a
Merge remote-tracking branch 'upstream/master' 2024-03-13 18:50:32 +01:00
Giacomo Pacini
064c3809b0
removed some comments, modified indentation, moved some strings to companion object
Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-03-13 18:47:51 +01:00
Giacomo Pacini
ca5a379883
save audio message id and position when activity is destroyed,
also restores view position to that message and then resumes audio playback if was playing.
it allows to continue playing audio on screen rotation.

Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-03-13 18:47:51 +01:00
Giacomo Pacini
b44641c0c7
removed stopMediaPlayer method call in onStop(),
so that audio continues playing when activity in background.
if backpressed, stops mediaplayer

Signed-off-by: Giacomo Pacini <giacomopacini98@gmail.com>
2024-03-13 18:47:50 +01:00
sowjanyakch
353cabc442 Fix Recents Screen
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-03-13 17:37:56 +01:00
Marcel Hibbe
5d0c409d7b
fix to hide open conversations after returning from search
How to test:

pre-requirement:
There are open conversations

without this commit:
1. go to search screen
2. go back to conversation list
-> all open conversations are listed below own conversations

with this commit:
1. go to search screen
2. go back to conversation list
-> only own conversations are listed

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-13 13:07:42 +01:00
Marcel Hibbe
445721487e
dont hide message reactions in MessageActionsDialog for federated rooms
works out of the box after server implemented federated reactions. no client changes needed

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-13 10:25:17 +01:00
Andy Scherzinger
13a5c9444f
Migrate to latest bottom sheet theming implementation
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-03-12 20:21:17 +01:00
Marcel Hibbe
625de657d4
hide features if federation is not available
+ add capability queries (not yet used)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-12 10:52:58 +01:00
parneet-guraya
3866beed92
fix remind me later dialog
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-03-11 15:28:38 +01:00
parneet-guraya
e7ef618119
fix filter dialog
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-03-11 15:28:38 +01:00
Julius Linus
a74c8c552d Popup bubbles now show up + Fixed bugs with images + added new string resource
Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2024-03-05 09:25:56 -06:00
Marcel Hibbe
ba812cabdc
add rest of SpreedFeatures to Enums
delete method hasSpreedFeatureCapability that accepts capability name as string

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-05 13:31:23 +01:00
parneet-guraya
a483fb7017
add shimmer on top of list & refactoring
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-03-05 13:26:11 +01:00
sowjanyakch
8ff4771e60
Renaming strings from circles to teams.
Signed-off-by: Sowjanya Kota<sowjanya.kch@gmail.com>
2024-03-05 13:20:17 +01:00
parneet-guraya
82a46572d9
wrap inside scroll view
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-03-05 10:48:57 +01:00
parneet-guraya
1881676538
use default constructor for fragment
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-03-05 10:48:56 +01:00
Marcel Hibbe
fcf6c845a7
add compatibility for janus 1.x
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-04 12:59:35 +01:00
Andy Scherzinger
a9cbb657ee
fix comment
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-03-01 18:05:32 +01:00
Marcel Hibbe
754b825096
pass spreedCapabilities instead user to CapabilitiesUtil
To support federated rooms, capabilities have to be checked from the room which now also has capabilities.
If room is not federated, capabilities fromuser are still checked.
This is why CapabilitiesUtil had to be refactored to accept SpreedCapabilities which can come from room or user.

Other than that, many other changes were made as a result of this change.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-01 11:25:11 +01:00
Julius Linus
dcc8fc6954
Major refactoring, implements ChatActivity in MVVM to prepare for federation and offline chatting.
Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2024-02-27 17:52:30 +01:00
Marcel Hibbe
a3ecd82d13
rename MagicWebRTCUtils to WebRTCUtils
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-02-27 15:23:11 +01:00
Marcel Hibbe
dd6991e39e
remove hardcoded devices for webrtc audio setup
android-talk-webrtc in version 121.6167.0 doesn't allow access to
WebRtcAudioManager
WebRtcAudioUtils
anymore.

These classes were used for
HARDWARE_AEC_EXCLUDE_SET
and
OPEN_SL_ES_INCLUDE_SET
lists, which were not updated for years.

For these reasons the checks for HARDWARE_AEC_EXCLUDE_SET and OPEN_SL_ES_INCLUDE_SET are removed.
If people are complaining about different behaviour of audio performance/echoes, it's worth to have a closer look at the changes again.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-02-27 15:23:11 +01:00
Marcel Hibbe
8c47b89ce5
fix ktlint warnings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-02-27 15:15:56 +01:00
Marcel Hibbe
fde635d61b
show test notification + modify doc
show test notification from
occ notification:test-push --talk username

This will directly show the push notification without to fetch any data from nextcloud instance.

Additionally some additions to documentation were made

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-02-26 16:52:41 +01:00
Marcel Hibbe
c13f2589ff
handle federation invitations
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-02-26 16:45:55 +01:00
Marcel Hibbe
9a4bf14e09
Merge remote-tracking branch 'origin/master' into feature/edit_messages 2024-02-16 17:09:03 +01:00
Marcel Hibbe
2a856bc77a
avoid to send "speaking" data channel message when mic is muted
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-02-16 13:06:56 +01:00
parneet-guraya
d63fc58a62
remove class level notification property
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-02-16 11:30:03 +01:00
parneet-guraya
d6201cf796
use new builder for failure notification
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-02-16 11:30:03 +01:00
parneet-guraya
94a1238f28
create notification group using summary notification
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-02-16 11:30:03 +01:00
sowjanyakch
861b565c01 Added date to editor details and changes related to design.
Signed-off-by: Sowjanya Kota<sowjanya.kch@gmail.com>
2024-02-14 16:08:13 +01:00
sowjanyakch
8d4c0fb57c Minor UI improvements
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-02-13 11:47:39 +01:00
Marcel Hibbe
6708aeebad
fix to show message as edited after editing on own device
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-02-09 11:16:21 +01:00
Marcel Hibbe
4e4cb26862
fix to update adapter for "edited messages" by system message
This will update the message when an edit was made on other devices.
So the system message will trigger that you are informed about a change. But instead to show the system message, you use it's information to immediately update the adapter.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-02-09 11:14:00 +01:00
sowjanyakch
683f924556 Add editor name and message timestamp to MessageActionsDialog
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-02-09 10:05:54 +01:00
parneet-guraya
86cd617c6a
handle becoming noisy manually
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-02-07 15:35:44 +05:30
parneet-guraya
91d5217b1e
handle audio focus and becoming noisy
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-02-07 15:35:42 +05:30
sowjanyakch
6a0f23c39b Merge remote-tracking branch 'origin/feature/edit_messages' into feature/edit_messages
# Conflicts:
#	app/src/main/java/com/nextcloud/talk/api/NcApi.java
#	app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt
#	app/src/main/java/com/nextcloud/talk/ui/MessageInput.kt
#	app/src/main/java/com/nextcloud/talk/ui/dialog/MessageActionsDialog.kt
#	app/src/main/res/drawable/ic_check_24.xml
#	app/src/main/res/values/strings.xml
2024-02-05 23:01:25 +01:00
sowjanyakch
d27c7a6212 UI improvements 2024-02-05 22:46:30 +01:00
sowjanyakch
426c8823c5 add (edited) tag in incoming and outgoing messages layout 2024-02-05 22:46:30 +01:00
sowjanyakch
eb27b7039f Update Edit Message 2024-02-05 22:46:30 +01:00
sowjanyakch
80c843227e System Messages and Error handling 2024-02-05 22:46:30 +01:00
sowjanyakch
718369d80e Edit inputText view refactoring 2024-02-05 22:46:30 +01:00
sowjanyakch
5ecfd3cd3b Basic Edit feature 2024-02-05 22:46:30 +01:00
Sowjanya Kota
96a244408e Checking Edit Capability 2024-02-05 22:46:29 +01:00
Sowjanya Kota
0e13c1f3ce
Merge branch 'master' into feature/edit_messages
Signed-off-by: Sowjanya Kota <sowjanya.kch@gmail.com>
2024-02-02 17:09:42 +01:00
sowjanyakch
6db42115ba add (edited) tag in incoming and outgoing messages layout
Signed-off-by:Sowjanya Kota <sowjanya.kch@gmail.com>
2024-02-01 22:37:41 +01:00
sowjanyakch
253c3fe024 Update Edit Message
Signed-off-by: Sowjanya Kota <sowjanya.kch@gmail.com>
2024-02-01 13:34:13 +01:00
Julius Linus
d45277beaf
Impl "Add to Notes Action"
- Note to self option should only appear if conversation is available
- Added ic_edit_note_24_xml
- Implemented MVVM functions for cleaner data flow
- Added the option to the XML
- Works for Voice Messages
- Works for Files(and Gifs) + captions
- Works for GeoLocation Messages
- Added SnackBar

Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2024-02-01 12:18:06 +01:00
Andy Scherzinger
f2b838f8b7 properly name context variable
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-01-30 14:26:08 +01:00
Andy Scherzinger
7fe6dd066b Register ReceiverFlags when registering receivers for Android 13+
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-01-30 14:26:08 +01:00
Andy Scherzinger
f931407d56 Add general receiver registration implementation
Signed-off-by: alperozturk <alper_ozturk@proton.me>
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-01-30 14:26:08 +01:00
sowjanyakch
2b24c69cbf System Messages and Error handling
Signed-off-by: Sowjanya Kota <101803542+sowjanyakch@users.noreply.github.com>
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-01-30 09:45:15 +01:00
sowjanyakch
33de105048 Edit inputText view refactoring
Signed-off-by: Sowjanya Kota <101803542+sowjanyakch@users.noreply.github.com>
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-01-25 17:47:21 +01:00
sowjanyakch
337f07abfe Basic Edit feature
Signed-off-by: Sowjanya Kota <101803542+sowjanyakch@users.noreply.github.com>
2024-01-24 14:00:27 +01:00
Sowjanya Kota
d8d1de2f35 Checking Edit Capability
Signed-off-by:Sowjanya Kota <101803542+sowjanyakch@users.noreply.github.com>
2024-01-19 18:12:31 +01:00
parneet-guraya
6f88c8bcbd
add cancel upload functionality
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-01-17 09:21:32 +01:00
Julius Linus
30c6ad5ab6
save cursor position
Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2024-01-15 15:16:32 +01:00
Marcel Hibbe
f232fda7c1
set string "Build flavor" to translatable=false
otherwise translators won't understand what this is.
As translations were already made a new key was introduced to avoid "Translated Untranslatable" warnings

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-01-15 12:51:29 +01:00
Marcel Hibbe
c7a72aaf4a
add diagnose screen and permission warnings in settings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-01-12 09:54:28 +01:00
Sowjanya Kota
ffda98632e
Share message text to other apps
Signed-off-by: Sowjanya Kota <sowjanya.kch@gmail.com>
2024-01-04 11:18:24 +01:00
Sowjanya Kota
ccf6337bb0 Using finish() to handle only forward message back button 2023-12-27 15:34:27 +01:00
Julius Linus
49d65786ea
guarantee AudioUtils stop executing after 3 seconds, sharp, regardless of state of MediaCodec
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2023-12-22 16:03:46 +01:00
tobiasKaminsky
a77ad7bf74 Add WebAuthN support
Signed-off-by: tobiasKaminsky <tobias@kaminsky.me>
2023-12-18 09:49:00 +01:00
Andy Scherzinger
9621f943f1
theme background for dialog-based BottomSheet
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-15 09:55:55 +01:00
Marcel Hibbe
8507e96bc5
Merge pull request #3502 from nextcloud/bugfix/3491/fixErrorWhenDecliningRecConsent
avoid error when declining recording consent
2023-12-05 18:57:35 +01:00
Andy Scherzinger
12a1b7e6f8
ktlint: Property name should use the screaming snake case notation when the value can not be changed
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:50:58 +01:00
Andy Scherzinger
5356edf4a9
ktlint: Empty parentheses in function call followed by lambda are unnecessary
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:45:24 +01:00
Andy Scherzinger
565d0cf61b
ktlint: statement fits in a single line
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:45:02 +01:00
Andy Scherzinger
3f911965bd
ktlint: Property name should start with a lowercase letter and use camel case
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:37:53 +01:00
Andy Scherzinger
d7f8d1ecb2
ktlint: Single space expected between colon and return type
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:35:43 +01:00
Andy Scherzinger
9395a35af6
ktlint: Newline expected after opening parenthesis
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:34:54 +01:00
Andy Scherzinger
67b2752360
ktlint: Expected a single space
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:32:21 +01:00
Andy Scherzinger
59e8f4b550
ktlint: No comment expected at this location
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:31:34 +01:00
Andy Scherzinger
29db97c8bc
ktlint: Missing newline before/after '{'
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:30:25 +01:00
Andy Scherzinger
ae9c092997
ktlint: A comment in a 'value_argument_list' is only allowed when placed on a separate line
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:29:33 +01:00
Andy Scherzinger
f2da9b93de
ktlint: First line of body expression fits on same line as function signature
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:28:49 +01:00
Andy Scherzinger
88970c59a5
ktlint: Newline expected before expression body
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:26:33 +01:00
Marcel Hibbe
6ac9fa5fff
avoid error when declining recording consent
When declining recording consent, 404 might be returned when leaving the call (because the call was not joined before).
It might not be the best option to handle this via onError, but for the moment (18.0.0 release) it's the most robust/lowest-risk solution without to change some state handling to check if the call was joined).
finish was added which makes sense anyway, but for declining recording consent the error snackbar was removed.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-12-05 16:20:28 +01:00
Andy Scherzinger
627e9d5c20
ktlint: No whitespace expected between opening parenthesis and first parameter name
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:17:31 +01:00
Andy Scherzinger
f2b86a9d86
ktlint: Enum entry should start on a separate line
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-12-05 16:01:00 +01:00
Marcel Hibbe
119310ecc7
Add fixes and changes to push handling
- Fix injection in GetFirebasePushTokenWorker.
injection was not setup correctly in GetFirebasePushTokenWorker so the appPreferences were null. This resulted in the invinite loading screen during account setup if somehow onNewToken did not set the token.

- avoid to register push on every load of ConversationList.

- call GetFirebasePushTokenWorker instead of PushRegistrationWorker to make sure the firebase token is set(if onNewToken somehow fails to set it). Other than that, only call PushRegistrationWorker directly in NCFirebaseMessagingService as there the token is set.

- add logging

- trigger GetFirebasePushTokenWorker daily with periodical worker (instead monthly), and combine this with PushRegistrationWorker as this is defined inside GetFirebasePushTokenWorker

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-12-01 13:35:53 +01:00
Julius Linus
1efa14ebae
Fix wrong url for webinar. Add logging+snackbar for onError
Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-12-01 13:31:53 +01:00
Marcel Hibbe
cc6f3fff9a
avoid crash when NC notification could not be retrieved
crash:

              E  Failed to get NC notification
                                                                                                    retrofit2.adapter.rxjava2.HttpException: HTTP 404
                                                                                                    	at retrofit2.adapter.rxjava2.BodyObservable$BodyObserver.onNext(BodyObservable.java:57)
                                                                                                    	at retrofit2.adapter.rxjava2.BodyObservable$BodyObserver.onNext(BodyObservable.java:38)
                                                                                                    	at retrofit2.adapter.rxjava2.CallExecuteObservable.subscribeActual(CallExecuteObservable.java:48)
                                                                                                    	at io.reactivex.Observable.subscribe(Observable.java:12284)
                                                                                                    	at retrofit2.adapter.rxjava2.BodyObservable.subscribeActual(BodyObservable.java:35)
                                                                                                    	at io.reactivex.Observable.subscribe(Observable.java:12284)
                                                                                                    	at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeTask.run(ObservableSubscribeOn.java:96)
                                                                                                    	at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:608)
                                                                                                    	at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
                                                                                                    	at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
                                                                                                    	at java.util.concurrent.FutureTask.run(FutureTask.java:266)
                                                                                                    	at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:301)
                                                                                                    	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
                                                                                                    	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
                                                                                                    	at java.lang.Thread.run(Thread.java:919)
2023-11-30 10:48:11.049  5352-5597  WM-WorkerWrapper        com.nextcloud.talk2                  I  Worker result SUCCESS for Work [ id=f899eadb-9fd0-4bdf-8cdf-a1ea4a1aa11b, tags={ com.nextcloud.talk.jobs.NotificationWorker } ]
2023-11-30 10:48:11.056  5352-5352  AndroidRuntime          com.nextcloud.talk2                  D  Shutting down VM
2023-11-30 10:48:11.058  5352-5352  AndroidRuntime          com.nextcloud.talk2                  E  FATAL EXCEPTION: main
                                                                                                    Process: com.nextcloud.talk2, PID: 5352
                                                                                                    java.lang.IllegalArgumentException: No suitable parent found from the given view. Please provide a valid view.
                                                                                                    	at com.google.android.material.snackbar.Snackbar.makeInternal(Snackbar.java:200)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-11-30 11:44:52 +01:00
Marcel Hibbe
f6b481cea8
translate "no proxy" in settings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-11-29 11:43:18 +01:00
Julius Linus
2adad16914
small adjustments
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2023-11-29 11:38:26 +01:00
Julius Linus
b5f49ccfaa
fixed bug - Note to Self Now allows messages to expire and be deleted
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2023-11-29 11:38:25 +01:00
Julius Linus
b1568e7f49
- Fixed bug with occasional crash with stop
- Implement MediaRecorderState handling
- Fixed lifecycle bug - recording and locked UI now ends after app exits
- Saves Waveform to storage after initial loading
- Fixes File caption crashes
- A couple other bugs

Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2023-11-29 11:38:25 +01:00
Marcel Hibbe
23ea4d8803
remove unnecessary code
(seemed to be caused by c&p)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-11-27 14:10:22 +01:00
Marcel Hibbe
591d6dc3e8
remove conductor
- replace remaining controllers with activities
- remove conductor lib
- modify some code related to account management and conductor

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-11-23 13:26:01 +01:00
Marcel Hibbe
fce209695a
close Call notification when onError is triggered.
How to test:
add

.doOnNext {
	throw (RuntimeException("Exception!!!!!!!!!!!!!!!!!!!!!"))
}

after
.subscribeOn(Schedulers.io())

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-11-23 12:44:03 +01:00
Marcel Hibbe
423ce97b4e
Fix to delete user when unregister for notifications failed
Whenever there was an error when unregistering from notifications, the user was not deleted.
This could lead to multiple bugs.

Furthermore, external signaling server connection and arbitrary storage is now always handled for user deletion, which was not the case before.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-11-21 10:35:30 +01:00
Julius Linus
7de77ca073
Adjusting Translation Provider
- Added 4 new model data classes
- Added the new API function to NcApi
- Implemented the changes in the Repository + ViewModel
- Implemented the changes in the Activity
- Added some helper functions to support impl

Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2023-11-16 16:01:35 +01:00
Julius Linus
5e362ae129
file captions
- Added dialog_file_attachment_preview.xml
- Added FileAttachmentPreviewFragment.kt
- Edited ChatActivity to add captions to uploaded files, also refactored some code
- Edited the Outgoing, Incoming, and Generic Preview holders to have a caption
- Fixed some bugs with RemoteFileBrowser

Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2023-11-16 15:46:18 +01:00
Andy Scherzinger
62adb46f49
Merge pull request #3433 from nextcloud/feature/3416/saveFileFollowup
followup changes to save file feature
2023-11-08 15:45:04 +01:00
parneet-guraya
f23075b2dd
update the correct observable
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2023-11-08 19:16:42 +05:30
Marcel Hibbe
640007b421
followup changes to save file feature
- extract dialog to SaveToStorageDialogFragment
- add ability to save files of other mimetypes than images
- use MaterialAlertDialogBuilder
- save files to matching folders depending on mimeType
- show toast
- change download icon

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-11-08 11:39:19 +01:00
Marcel Hibbe
d5672d6434
fix linebreak in strings.xml + fix lint warnings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-11-08 09:20:36 +01:00
fariba khandani
dd9eb35e72 saveFiles to internal storage 2023-11-07 13:31:58 +01:00
Sowjanya Kota
305ec470c8 format code and suppress KtLint CheckResult rule 2023-11-06 15:20:15 +01:00
Sowjanya Kota
ce248a7fc0 hide "unread mention" bubble in search mode 2023-11-06 15:20:15 +01:00
Marcel Hibbe
68ab275efc
Avoid Npe for call with a guest without name
11-02 03:45:20.115 27450 27450 D CallActivity: initGridAdapter
11-02 03:45:20.116 27450 27450 D CallActivity: removeParticipantDisplayItem
11-02 03:45:20.116 27450 27450 D CallActivity: removeParticipantDisplayItem
11-02 03:45:20.119 27450 27450 W MagicWebRTCUtils: No payload types with name H264
11-02 03:45:20.141 27450 27450 W System.err: java.lang.NullPointerException: Parameter specified as non-null is null: method com.nextcloud.talk.activities.CallActiv
ity$OfferAnswerNickProvider$WebRtcMessageListener.onOffer, parameter nick
11-02 03:45:20.141 27450 27450 W System.err:    at com.nextcloud.talk.activities.CallActivity$OfferAnswerNickProvider$WebRtcMessageListener.onOffer(Unknown Source:7
)
11-02 03:45:20.141 27450 27450 W System.err:    at com.nextcloud.talk.signaling.WebRtcMessageNotifier.notifyOffer(WebRtcMessageNotifier.java:99)
11-02 03:45:20.141 27450 27450 W System.err:    at com.nextcloud.talk.signaling.SignalingMessageReceiver.processSignalingMessage(SignalingMessageReceiver.java:746)
11-02 03:45:20.142 27450 27450 W System.err:    at com.nextcloud.talk.activities.CallActivity$InternalSignalingMessageReceiver.process(CallActivity.kt:2707)
11-02 03:45:20.142 27450 27450 W System.err:    at com.nextcloud.talk.activities.CallActivity.receivedSignalingMessage(CallActivity.kt:1889)
11-02 03:45:20.142 27450 27450 W System.err:    at com.nextcloud.talk.activities.CallActivity.receivedSignalingMessages(CallActivity.kt:1865)
11-02 03:45:20.142 27450 27450 W System.err:    at com.nextcloud.talk.activities.CallActivity.access$receivedSignalingMessages(CallActivity.kt:190)
11-02 03:45:20.142 27450 27450 W System.err:    at com.nextcloud.talk.activities.CallActivity$pullSignalingMessages$5.onNext(CallActivity.kt:1768)
11-02 03:45:20.142 27450 27450 W System.err:    at com.nextcloud.talk.activities.CallActivity$pullSignalingMessages$5.onNext(CallActivity.kt:1762)
11-02 03:45:20.142 27450 27450 W System.err:    at io.reactivex.internal.util.HalfSerializer.onNext(HalfSerializer.java:107)
11-02 03:45:20.143 27450 27450 W System.err:    at io.reactivex.internal.operators.observable.ObservableRetryWhen$RepeatWhenObserver.onNext(ObservableRetryWhen.java
:100)
11-02 03:45:20.143 27450 30048 W MagicWebRTCUtils: No payload types with name H264
11-02 03:45:20.143 27450 27450 W System.err:    at io.reactivex.internal.operators.observable.ObservableDoOnEach$DoOnEachObserver.onNext(ObservableDoOnEach.java:101
)
11-02 03:45:20.143 27450 27450 W System.err:    at io.reactivex.internal.operators.observable.ObservableTakeWhile$TakeWhileObserver.onNext(ObservableTakeWhile.java:
88)
11-02 03:45:20.143 27450 27450 W System.err:    at io.reactivex.internal.util.HalfSerializer.onNext(HalfSerializer.java:107)
11-02 03:45:20.143 27450 27450 W System.err:    at io.reactivex.internal.operators.observable.ObservableRepeatWhen$RepeatWhenObserver.onNext(ObservableRepeatWhen.ja
va:100)
11-02 03:45:20.143 27450 27450 W System.err:    at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.drainNormal(ObservableObserveOn.
java:201)
11-02 03:45:20.143 27450 27450 W System.err:    at io.reactivex.internal.operators.observable.ObservableObserveOn$ObserveOnObserver.run(ObservableObserveOn.java:255
)
11-02 03:45:20.144 27450 27450 W System.err:    at io.reactivex.android.schedulers.HandlerScheduler$ScheduledRunnable.run(HandlerScheduler.java:124)
11-02 03:45:20.144 27450 27450 W System.err:    at android.os.Handler.handleCallback(Handler.java:938)
11-02 03:45:20.144 27450 27450 W System.err:    at android.os.Handler.dispatchMessage(Handler.java:99)
11-02 03:45:20.144 27450 27450 W System.err:    at android.os.Looper.loop(Looper.java:223)
11-02 03:45:20.144 27450 27450 W System.err:    at android.app.ActivityThread.main(ActivityThread.java:7664)
11-02 03:45:20.144 27450 27450 W System.err:    at java.lang.reflect.Method.invoke(Native Method)
11-02 03:45:20.144 27450 27450 W System.err:    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
11-02 03:45:20.144 27450 27450 W System.err:    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
11-02 03:45:20.145 27450 27450 E AndroidRuntime: FATAL EXCEPTION: main

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-11-03 10:44:39 +01:00
Marcel Hibbe
f03b212369
fix crash when trying to upload from nextcloud
this is just a quickfix to get the correct context. However a better way would be to avoid using a context inside viewModel.

stacktrace:

303-13303 AndroidRuntime          com.nextcloud.talk2                  E  FATAL EXCEPTION: main
                                                                                                    Process: com.nextcloud.talk2, PID: 13303
                                                                                                    java.lang.RuntimeException: Unable to start activity ComponentInfo{com.nextcloud.talk2/com.nextcloud.talk.remotefilebrowser.activities.RemoteFileBrowserActivity}: android.content.res.Resources$NotFoundException: String resource ID #0x7f1301f3
                                                                                                    	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3311)
                                                                                                    	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3460)
                                                                                                    	at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83)
                                                                                                    	at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135)
                                                                                                    	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95)
                                                                                                    	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2047)
                                                                                                    	at android.os.Handler.dispatchMessage(Handler.java:107)
                                                                                                    	at android.os.Looper.loop(Looper.java:224)
                                                                                                    	at android.app.ActivityThread.main(ActivityThread.java:7590)
                                                                                                    	at java.lang.reflect.Method.invoke(Native Method)
                                                                                                    	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
                                                                                                    	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
                                                                                                    Caused by: android.content.res.Resources$NotFoundException: String resource ID #0x7f1301f3
                                                                                                    	at android.content.res.Resources.getText(Resources.java:381)
                                                                                                    	at android.content.res.MiuiResources.getText(MiuiResources.java:97)
                                                                                                    	at android.content.res.Resources.getString(Resources.java:474)
                                                                                                    	at com.nextcloud.talk.remotefilebrowser.viewmodels.RemoteFileBrowserItemsViewModel.<init>(RemoteFileBrowserItemsViewModel.kt:99)
                                                                                                    	at com.nextcloud.talk.remotefilebrowser.viewmodels.RemoteFileBrowserItemsViewModel_Factory.newInstance(RemoteFileBrowserItemsViewModel_Factory.java:50)
                                                                                                    	at com.nextcloud.talk.remotefilebrowser.viewmodels.RemoteFileBrowserItemsViewModel_Factory.get(RemoteFileBrowserItemsViewModel_Factory.java:39)
                                                                                                    	at com.nextcloud.talk.remotefilebrowser.viewmodels.RemoteFileBrowserItemsViewModel_Factory.get(RemoteFileBrowserItemsViewModel_Factory.java:12)
                                                                                                    	at com.nextcloud.talk.dagger.modules.ViewModelFactory.create(ViewModelModule.kt:53)
                                                                                                    	at androidx.lifecycle.ViewModelProvider$Factory.create(ViewModelProvider.kt:83)
                                                                                                    	at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.kt:187)
                                                                                                    	at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.kt:153)
                                                                                                    	at com.nextcloud.talk.remotefilebrowser.activities.RemoteFileBrowserActivity.initViewModel(RemoteFileBrowserActivity.kt:124)
                                                                                                    	at com.nextcloud.talk.remotefilebrowser.activities.RemoteFileBrowserActivity.onCreate(RemoteFileBrowserActivity.kt:110)
                                                                                                    	at android.app.Activity.performCreate(Activity.java:7893)
                                                                                                    	at android.app.Activity.performCreate(Activity.java:7880)
                                                                                                    	at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1307)
                                                                                                    	at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:3286)
                                                                                                    	at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3460) 
                                                                                                    	at android.app.servertransaction.LaunchActivityItem.execute(LaunchActivityItem.java:83) 
                                                                                                    	at android.app.servertransaction.TransactionExecutor.executeCallbacks(TransactionExecutor.java:135) 
                                                                                                    	at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:95) 
                                                                                                    	at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2047) 
                                                                                                    	at android.os.Handler.dispatchMessage(Handler.java:107) 
                                                                                                    	at android.os.Looper.loop(Looper.java:224) 
                                                                                                    	at android.app.ActivityThread.main(ActivityThread.java:7590) 
                                                                                                    	at java.lang.reflect.Method.invoke(Native Method) 
                                                                                                    	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539) 
                                                                                                    	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950) 
2023-10-26 14:29:28.357 13303-13303 nextcloud.talk          com.nextcloud.talk2                  W  Attempt to remove non-JNI local reference, dumping thread

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-11-02 12:10:21 +01:00
Marcel Hibbe
bfbc352448
Add recording consent feature
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-10-27 16:48:05 +02:00
Marcel Hibbe
0e3c24b24a
reformat code
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-10-26 13:26:53 +02:00
Marcel Hibbe
e5788016cf
Use UTF_8 for basic authorization
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-10-26 13:25:33 +02:00
Julius Linus
11f1d5fc7e
Migrating away from StoreBox to DataStore
- Added DataStore dependencies
- Created AppPreferencesImpl

Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2023-10-24 14:35:19 +02:00
Julius Linus
3af7de2e78
Note to Self
- Can not add participants to the room
- Can not allow guests
- Can not make read-only
- Can not make listable
- Can not change permissions
- Can not set lobby
- Can not enable SIP
- Can not configure breakout rooms
- Can not call
- Custom Avatar

Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2023-10-24 13:57:03 +02:00
Andy Scherzinger
357b580a84
Bump room to 2.6.0 and rename paramter to match super class in case of use of names paramters
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-10-19 10:55:20 +02:00
Julius Linus
79b366c5ba
Refactoring AudioUtils
- Fixes a bug with the processing taking to long
- Added a bunch of comments, to make maintaining this more easier
- Added LifeCycle Awareness

Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2023-10-17 11:10:45 +02:00
Marcel Hibbe
cbef8f7cdf
fix emoji size in markdown headlines
androidx.emoji2:emoji2:1.4.0 seems to fix the bug that emojis in markdown headlines are rendered too large.

To use v1.4.0 of emoji2 it was necessary to bump compileSdk to v34, which in turn required the minor changes to the overwritten
onDraw of View class.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-10-12 13:31:39 +02:00
parneet-guraya
665711afa5
fix warnings
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2023-10-11 16:13:28 +05:30
parneet-guraya
bb81da23a1
remove deprecated way of going in/out immersive
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2023-10-11 16:13:27 +05:30
Marcel Hibbe
2975f6d1bf
theme dialogs (rename and create conversation)
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-10-10 18:25:20 +02:00
Marcel Hibbe
aec9844fca
change headings of conversation dialogs and add hints to TextInputLayout
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-10-10 18:25:20 +02:00
Marcel Hibbe
32dbe70399
Remove EntryMenuController and OperationMenuController
The "operation view" at the bottom is replaced by snackbars.

I have removed the join via public link feature for now. This was buggy, complex and incomplete. This feature must be reimplemented in a more useful place (login screen, so you can use it as a guest without using an existing instance).

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-10-10 18:25:20 +02:00
Julius Linus
22cba480f4 Small bug fix + cleaned up SettingsActivity a bit because it was annoying me
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2023-10-05 09:50:09 -05:00
Julius Linus
98c6ac34ae
Quick bug fix
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2023-10-04 13:17:39 +02:00
Julius Linus
325d793540
Bugfix for accept call button
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2023-10-04 11:00:50 +02:00
Andy Scherzinger
6fa85493f8
Merge pull request #3354 from nextcloud/bugfix/3283/quoteColor
Use primary color for quoted, own messages
2023-10-04 10:06:34 +02:00
Andy Scherzinger
f85aea157c
Merge pull request #3349 from nextcloud/LIveData
use MVVM for Geocoding
2023-10-03 16:24:57 +02:00