Commit Graph

681 Commits

Author SHA1 Message Date
Marcel Hibbe
6f90623cab
hide logos for conversation list and lockscreen if app is not nextcloud
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-05-24 13:23:03 +02:00
Marcel Hibbe
9c1f68abb4
fix regex and brackets for isInstanceInternalFileShareUrl
only links without index.php returned true without this fix.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-05-21 12:14:21 +02:00
sowjanyakch
acd0b92b6c
Pretty URL for conversation link
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-05-08 13:53:44 +02:00
Marcel Hibbe
b870b0f208
rename classes called 'Magic*'
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-04-23 15:26:00 +02:00
sowjanyakch
1c26c757f0
Refactor ShareUtils and remove ShareUtilsTest file
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-04-17 13:39:31 +02:00
sowjanyakch
b6ab867280
Make conversation link available for copy and paste in the Conversation settings.
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-04-17 13:39:31 +02:00
sowjanyakch
7832f72d12
share conversation link to other apps
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-04-17 13:39:30 +02:00
Marcel Hibbe
94257242a3
fix to set ConversationType for "Note to self"
Fix to check if a conversation is "Note to self" by checking the ConversationType instead to check conversation name by hardcoded string

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-04-17 12:02:52 +02:00
Marcel Hibbe
2485b14009
get room in NotificationWorker so CallNotificationActivity doesn't have to wait for it
The get-room request in CallNotificationActivity was sometimes too slow which caused the activity to be unresponsive.
With this commit, the room is first loaded before the user gets a notification.
For now all necessary values are passed as intent extras. In the future with offline support, there might be reasons to load it from DB in CallNotificationActivity.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-04-15 14:33:27 +02:00
Marcel Hibbe
69e8c91431
avoid error when clicking on federated user mention chip
without this, there would be the common error message shown because of a http 404 error.

With this fix, nothing happens when clicking on a federated user mention chip, just like in web and iOS.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-04-15 14:31:53 +02:00
Marcel Hibbe
3d9c1d2ca9
avoid NPE when serverVersion is not known
NPE without this fix:

Exception java.lang.RuntimeException:
  at android.app.ActivityThread.performResumeActivity (ActivityThread.java:4975)
  at android.app.ActivityThread.handleResumeActivity (ActivityThread.java:5008)
  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:2386)
  at android.os.Handler.dispatchMessage (Handler.java:106)
  at android.os.Looper.loopOnce (Looper.java:210)
  at android.os.Looper.loop (Looper.java:299)
  at android.app.ActivityThread.main (ActivityThread.java:8252)
  at java.lang.reflect.Method.invoke
  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run (RuntimeInit.java:559)
  at com.android.internal.os.ZygoteInit.main (ZygoteInit.java:954)
Caused by java.lang.NullPointerException:
  at com.nextcloud.talk.conversationlist.ConversationsListActivity.onResume (ConversationsListActivity.kt:287)
  at android.app.Instrumentation.callActivityOnResume (Instrumentation.java:1565)
  at android.app.Activity.performResume (Activity.java:8668)
  at android.app.ActivityThread.performResumeActivity (ActivityThread.java:4965)

 The root cause may be that the CapabilitiesWorker is not finished so the serverVersion was not added to the user.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-04-04 16:09:15 +02:00
Parneet Singh
631a93f687
use new result api
Signed-off-by: Parneet Singh <gurayaparneet@gmail.com>
2024-04-01 04:40:05 +05:30
Andy Scherzinger
f5a4274e54
Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-03-29 15:42:11 +01:00
Andy Scherzinger
3eabf9bb83
Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-03-29 12:55:12 +01:00
Marcel Hibbe
4c5ffdbae7
replace roomToken with token
roomToken was added unnecessarily as it already exists as "token"

By using the duplicated roomToken, this also introduced a bug when that it could be empty.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-03-26 16:54:39 +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
Marcel Hibbe
cc19157867 convert DisplayUtils to kt
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
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
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
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
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
Marcel Hibbe
c13f2589ff
handle federation invitations
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-02-26 16:45:55 +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
94a1238f28
create notification group using summary notification
Signed-off-by: parneet-guraya <gurayaparneet@gmail.com>
2024-02-16 11:30:03 +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
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
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
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
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
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
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
f6b481cea8
translate "no proxy" in settings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-11-29 11:43:18 +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
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
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
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
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
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
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
98c6ac34ae
Quick bug fix
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2023-10-04 13:17:39 +02:00
Andy Scherzinger
da1742f85c
improve code formatting for detekt score
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-09-20 23:20:28 +02:00