Commit Graph

109 Commits

Author SHA1 Message Date
sowjanyakch
24ca0d6def
Modify ViewModel and Repository
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-12-20 10:59:50 +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
9525986dde
convert rxjava to coroutines - renameRoom
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-11-19 10:41:07 +01: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
sowjanyakch
cd01c80d71
ConversationCreationActivity UI
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-09-05 15:41:08 +02:00
rapterjet2004
ea453dba3e
Follow up bug fixes for offline support
Got join conversation to work
Unread message popup should work when entering a conversation now
"Delete All Messages" now works without breaking the initMessagePolling
linter

Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-09-04 10:14:51 +02:00
Marcel Hibbe
fe4bf942ab
remove SyncableModel and SyncUtils
not needed for our requirements + it simplifies code

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-08-12 16:47:05 +02:00
Marcel Hibbe
2408d639e4
Offline support for conversations and chats
Authors: Julius Linus and Marcel Hibbe

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-08-12 16:47:03 +02:00
sowjanyakch
bb46b6adad
Contacts Activity Compose
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2024-07-23 11:41:24 +02:00
Julius Linus
6a01ebf630
Message Input Refactoring
- Added io folder for Abstracting away background work
- AudioFocusRequestManager
- MediaPlayerManager
- MediaRecorderManager
- AudioRecorderManager

Included new View Models + Fragments to separate concerns

- MessageInputFragment
- MessageInputVoiceRecordingFragment

Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2024-06-05 17:45:01 +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
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
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
c13f2589ff
handle federation invitations
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-02-26 16:45:55 +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
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
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
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
Andy Scherzinger
fa8fd7b229
unify markdown rendering of chat messages
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-07-10 09:38:04 +02:00
Andy Scherzinger
f3452127d3 improve detekt score
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-07-06 15:31:34 +02:00
Marcel Hibbe
817ea1ab64 Avoid to send conversation and user via intent
sending too much data via intent always is a bad pattern which can lead to TransactionTooLargeException.

When OpenAI translation is enabled, the capabilities contain a ton of translation combinations. These capabilities are contained in 'currentUser' as well in 'selectedConversation'. So, TransactionTooLargeException was thrown.

this PR:
- avoids passing too much data as parcelables in intents (esp. conversation and user)
- introduces MVVM patterns to load required data (esp conversation) from backend (for now via requests, in the future from database first)
- introduces ConversationModel which is created out of the Conversation json model
- loads user data via injection when possible
- creates some quickfixes in ConversationBottomDialog, EntryMenuController and OperationsMenuController.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-06-30 07:30:18 +02:00
Marcel Hibbe
fdde5d2667 add option to list open conversations
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-06-19 23:42:50 +02:00
rapterjet2004
00f86144d8 rewriting translate feature to use MVVM
Signed-off-by: Julius Linus <julius.linus@nextcloud.com>
2023-05-22 11:18:21 -05: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
96dce63e20
Request assistance for breakout room
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-02-20 13:14:03 +01:00
Marcel Hibbe
bafe9198eb
add ViewModel to start/stop recording
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-01-31 15:55:06 +01:00
Marcel Hibbe
bb53982dd1
use CallRecordingRepository
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-01-31 15:55:06 +01:00
Andy Scherzinger
f48575bfec
Spotbug: Method stores return result in local before immediately returning it
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-12-29 11:37:18 +01:00
Álvaro Brey
8bc5735751
RepositoryModule: fix wrong injection for dateUtils
The module class is not supposed to have things injected into it. @Provides-annotated methods
will have their parameters injected, instead.

Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-12-19 17:35:19 +01:00
jld3103
6aece2940e
Localize time formatting
Signed-off-by: jld3103 <jld3103yt@gmail.com>
2022-12-15 08:33:05 +01:00
Marcel Hibbe
6b97197c80
react to given reactions inside message
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-12-02 14:53:45 +01:00
Daniel Calviño Sánchez
9e967bdd4d
Use comparison operator rather than equals for enums in Dagger modules
Fixes SPP_EQUALS_ON_ENUM issue from SpotBugs.

Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
2022-11-14 11:30:06 +01:00
Tim Krüger
84116e4cb2
Add guests access preferences to conversation info
Currently a conversation can be made public via the bottom sheet menu in
the conversation list.

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

Resolves: #2134

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-08-29 18:42:56 +02:00
Andy Scherzinger
66b2d44739
finish migration to room: remove requery
Resolves #2244

Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-26 21:16:38 +02:00
Andy Scherzinger
125d6770b4
plug cipher migration hook into room
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-26 20:33:47 +02:00
Andy Scherzinger
4d935920d0
Migrate RemoteFileBrowser and UnifiedSearch classes to room
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-23 16:38:05 +02:00
Andy Scherzinger
4513866c1d
migrate key manager from requery to room
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-23 14:09:08 +02:00
Marcel Hibbe
4388d66b23 use CurrentUserProviderNew and User for polls
use CurrentUserProviderNew and User instead of CurrentUserProvider and UserEntity

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-07-22 17:54:57 +00:00
Marcel Hibbe
af427f8300 wip: create poll. show outgoing polls
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-07-22 17:54:56 +00:00
Marcel Hibbe
5a070f5e1b wip: view poll results
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-07-22 17:54:56 +00:00
Álvaro Brey
42324419cd wip: Poll view model work
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-07-22 17:54:56 +00:00
Álvaro Brey
cb2ee730fa
WIP: upload profile picture from camera
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-07-07 13:51:55 +02:00
Andy Scherzinger
c9ba0fe870
annotate JvmStatic for more idiomatic access from Java
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-01 08:59:14 +02:00
Andy Scherzinger
f7ca1ec804
DB version switcher for requery
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-01 08:59:10 +02:00