Commit Graph

47 Commits

Author SHA1 Message Date
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
Marcel Hibbe
8876718677
open links for files app from any screen.
With this change, all links that target files in the same nextcloud instance will be opened in the files app, no matter on which screen the link was.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2024-05-24 15:38:53 +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
d1a8669f11
Add SPDX header
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2024-03-24 14:24:57 +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
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
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
fd248f098d
solve ktlint + detekt warnings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2023-09-06 12:58:33 +02:00
Marcel Hibbe
abb3389308
fixups and refactoring for sharing by context menu
When sharing a file by context menu that is not downloaded yet, do not open it after download but just share it. This is done by 'openWhenDownloaded' variable in chatMessage.

Pass a method to downloadFileToCache, so it's more flexible what to do when download finished.

Add some minor changes
2023-09-04 11:08:20 +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
d127c5401a
fix new onBackPressed handling
this commit fixes bugs from d3056ff2825e53040ca49b86b84f91f73a3eb11c and 1185dcf17a99ca62efd32f8a53c298ec4fd6c4d0

fix onBackPressed handling to use OnBackPressedCallback

remove unnecessary onBackPressedCallback's when they only finished the activity

replaced some finishAffinity methods with finish

...

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-05-24 15:42:09 +02:00
Ezhil Shanmugham
64fa8e830b
Made suggested changes in FullScreenImageActivity.kt, ConversationsListActivity.kt and in some files Signed-off-by: Ezhil Shanmugham ezhil56x.contact@gmail.com
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-05-24 15:42:09 +02:00
Ezhil Shanmugham
8348792313
Fixed ktlint and detekt errors
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-05-24 15:42:09 +02:00
Ezhil Shanmugham
7b5caf5007
fixed deprecated onBackPressed Issue-#2961
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-05-24 15:42:04 +02:00
Andy Scherzinger
5ec013143f
Migrate theme API calls - away from deprecated ones
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-05-24 09:08:18 +02: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
Andy Scherzinger
825354881e
Reformat code
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2023-02-16 11:41:32 +01:00
jld3103
6aece2940e
Localize time formatting
Signed-off-by: jld3103 <jld3103yt@gmail.com>
2022-12-15 08:33:05 +01:00
Tim Krüger
49da463971
Replace Fresco with Coil
Fresco is replaced with Coil everywhere to make it possible to set 'minSdkVersion'
to 23. But Coil is not used directly to avoid splintering the dependency
everywhere in the code. Coil is wrapped by extension functions for 'ImageView'.

Some shared functionality is moved from 'DisplayUtils' into the
'ImageViewExtensions'.

The exisiting initialization of Coil has also be changed. The usage of the self
initialized OKHttp client is removed. If this one is added the
caching of the http client is used by Coil additionally to memory and
disk cache.

Resolves: #2227, #2376

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-12-07 13:45:42 +01:00
Álvaro Brey
704df25a6d
Refactor and extract ViewThemeUtils to common library
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-08-31 19:54:05 +02:00
Andy Scherzinger
ed452f1747
fixes after rebase
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-08-11 09:50:59 +02:00
Andy Scherzinger
365a7502b4
unify tab layout theming on surface
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-08-11 09:50:54 +02:00
Andy Scherzinger
4d93a2099f
Move theme utils reference to base class and use new status bar coloring in all relevant places
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-08-11 09:50:48 +02:00
Andy Scherzinger
ddb033c288
remove unused import
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-08-10 19:23:53 +02:00
Álvaro Brey
501b75309b
Fix ktlint after rebase
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-08-10 19:22:03 +02:00
Álvaro Brey
4de7d06e8e
Theme SharedItemsActivity
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-08-10 19:21:53 +02:00
Andy Scherzinger
53bdd951ad
Add deck icon
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-08-09 23:24:27 +02:00
Tim Krüger
aae7e851c9
Reduce number of return statements
Codacy reported:

  Function itemFromObject has 4 return statements which exceeds the limit of 2.

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-08-09 18:48:25 +02:00
Tim Krüger
43f2d1badf
Shared items: Add tab for deck cards
Deck cards will be opened in the web browser because no specific view
exists.

Resolves: #2029

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-08-09 18:26:48 +02:00
Tim Krüger
4c8c8ac98a
Shared items: Show actor and date-time
For all item types it will now shown who (actor) and when (date-time)
the item was shared.

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-08-09 18:09:54 +02:00
Tim Krüger
81a3e8216d
Shared items: Add tab for other
Resolves: #2029

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-08-09 14:00:00 +02:00
Tim Krüger
26fde13292
Shared items: Add tab for locations
Resolves: #2029

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-08-08 18:52:11 +02:00
Tim Krüger
00f06c6ef2
Shared items: Add tab for polls
Resolves: #2029

Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-08-08 18:51:56 +02:00
Marcel Hibbe
c7e9721809 wip: get poll from API
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-07-22 17:54:56 +00:00
Andy Scherzinger
7230f81cf5
Migrate conversations list and next hop controllers to use the room user entity
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-13 00:22:03 +02:00
Álvaro Brey
1c9730f909
Fix state handling in SharedItemsActivity
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-05-23 17:35:17 +02:00
Álvaro Brey
05340fc466
SharedItems: show loading state when initially loading a tab, and clear remaining TODOs
Co-authored-by: Tim Krüger <t@timkrueger.me>
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-05-23 17:35:15 +02:00
Álvaro Brey
5310ed3f3d
SharedItems: show empty state when there are no shared items
Co-authored-by: Tim Krüger <t@timkrueger.me>
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-05-23 17:35:14 +02:00
Álvaro Brey
ae65de6cce
SharedItemsViewModel: use unified state livedata
Co-authored-by: Tim Krüger <t@timkrueger.me>
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-05-23 17:35:13 +02:00
Tim Krüger
10857114f5
Avoid NPE when 'sharedItems' is null
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-05-23 17:35:12 +02:00
Tim Krüger
e5b38856eb
Add missing license headers
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-05-23 17:35:10 +02:00
Tim Krüger
52ec1b76fa
Add comment for refactoring FileViewerUtils
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-05-23 17:35:09 +02:00
Tim Krüger
0d65824fa6
Remove 'UserEntity' from 'SharedItem' model
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-05-23 17:35:08 +02:00
Tim Krüger
6b9ab738cb
Introduce interface for 'SharedItemsRepository'
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-05-23 17:35:07 +02:00
Tim Krüger
b2f59ccb6c
Merge 'SharedItemsListAdapter' and 'SharedItemsGridAdapter'
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-05-23 17:35:06 +02:00
Tim Krüger
fd76f8231d
Move 'Shared items' related classes to own package
Signed-off-by: Tim Krüger <t@timkrueger.me>
2022-05-23 17:35:05 +02:00