Commit Graph

1232 Commits

Author SHA1 Message Date
Marcel Hibbe
40f20c56d6 update poll UI for moderators etc
- allow to end poll for moderators

- allow to see voters amount for voting screen for moderators and creators of the poll

- replace UserEntity with User

- show numVoters instead of votes

- minor refactoring

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
ae80a4e2ad pass roomToken to MessageViewHolders
wrap roomToken and ProfileBottomSheet in data class MessagePayload

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-07-22 17:54:56 +00:00
Marcel Hibbe
f2025332ab add data classes for polls (WIP)
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-07-22 17:54:56 +00:00
Andy Scherzinger
6a8cafec22
migrate location picker from requery to room
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-22 13:52:34 +02:00
Andy Scherzinger
dac99a5db8
Remove unused (legacy) UserUtils
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-22 13:52:34 +02:00
Andy Scherzinger
e7c258e2f8
fix detekt issues
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-22 13:52:33 +02:00
Andy Scherzinger
9bdd0c7a4e
Fix user manager db result processing
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-22 13:52:32 +02:00
Andy Scherzinger
6e05056b2e
Migrate AccountVerificationController from requery to room
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-22 13:52:32 +02:00
Andy Scherzinger
8d87d5486b
update to latest API changes for storing users
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-22 13:52:32 +02:00
Andy Scherzinger
036e67027c
Migrate web view login from requery to room
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-22 13:52:31 +02:00
Andy Scherzinger
fe8c7d468a
Migrate server selection from requery to room
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-22 13:52:31 +02:00
Andy Scherzinger
7ce5746969
rename updateUser to updateOrCreateUser
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-18 18:52:51 +02:00
Andy Scherzinger
480122d648
rename entity to user
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-18 18:52:51 +02:00
Andy Scherzinger
8efbd14fe0
Migrate switching accounts from requery to room
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-18 18:52:50 +02:00
Andy Scherzinger
ac7652b5de
Migrate Settings and Profile controller from requery to room
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-18 18:52:49 +02:00
Andy Scherzinger
f4cde24f8e
Migrate contacts and creation of talk rooms from requery to room
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-16 15:52:01 +02:00
Marcel Hibbe
95f3d776db
fix switching conversation titles
This reverts a change from a24f49c7

Before a24f49c7 in onDestroy() the disposables were not disposed. Instead this was "only" done in onComplete() of leaveRoom().
See a24f49c#diff-6b47d0e9875a7f7d5c1e6b80feab998e92d29b0cda8ac9bbf427aab99e56d209R1827
Because with a24f49c7 was now executed in onDestroy() , the leaveRoom() method is not executed successfully because it's destroyed too early. This results in multiple calls of getRoomInfo() with different roomTokens.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-07-14 10:21:13 +02: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
8e3dc066b2
Add method in NewBaseController to handle NPE catches for viewbinding
This is really a symptom of unreliable design around the async logic in Controllers. The data async calls should have been separate from the controller,
so that the only asynchronicity the Controller has to deal with is UI-related, and can be cancelled safely on destroyView.

In the future as those controllers are converted to something that has a separate ViewModel, this kind of catch should be completely unneeded.

Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-07-12 12:46:10 +02:00
Marcel Hibbe
1f5807b8de fix NPE for binding in onEmojiClickListener
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-07-11 17:24:56 +00:00
Marcel Hibbe
04c96dd400
catch NPE for binding
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-07-11 13:32:54 +02:00
Álvaro Brey
a24f49c737
Introduce DisposableSet to handle multiple disposables at once
This should be used in places where multiple Disposables are handled simultaneously as a simple way of
ensuring that all disposables are cleared on exit. For example on ViewModels and Controllers should likely use one
of these and clear it on their respective lifecycle end.

I've included an example use in ChatController, where it replaces an existing `ArrayList<Disposable>`, but the benefit
should be more visible in places where Disposables are currently handled separately.

Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-07-07 16:47:17 +02:00
Álvaro Brey
95119ba9d6
ProfileController: code cleanup
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-07-07 13:51:56 +02: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
205292f9b0
fix review comments
Co-authored-by: Álvaro Brey <alvaro.brey@nextcloud.com>
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-01 08:59:21 +02:00
Andy Scherzinger
9f43eb5278
Rename CapabilitiesNgNew to CapabilitiesUtilNew and mark old one as deprecated
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-01 08:59:17 +02:00
Andy Scherzinger
74fc56fa7e
Replace Observable with Single, let Repositories serve Models
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-01 08:59:14 +02:00
Álvaro Brey
afbec06ad3
WIP improvements during pair programming call
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-07-01 08:59:13 +02:00
Andy Scherzinger
5881e5021c
make disposal of searchViewDisposable null-safe
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-01 08:59:13 +02:00
Andy Scherzinger
565903b956
remove flow and use rx
...to stay in line with currently used concepts

Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-01 08:59:11 +02:00
Álvaro Brey
f7786e1b93
Fix flow listening in SettingsController
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-07-01 08:59:11 +02:00
Andy Scherzinger
27d5059e92
trying to extract flow value
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-01 08:59:10 +02:00
Andy Scherzinger
8c27b54377
move everything to flows
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-01 08:59:09 +02:00
Andy Scherzinger
5ffa3c44fd
create new capabilities util add license header and format kotlin code
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-01 08:59:08 +02:00
Andy Scherzinger
05db482d06
adding arbitrary storage implementation, initial steps towards new util classes
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-07-01 08:59:07 +02:00
Álvaro Brey
e176b38d8b
NewBaseController: Inject kotlin fields without @JvmField and nullable type
These do not need to be nullable as they will be injected immediately.
This will make child controllers code much cleaner.

Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-28 17:00:01 +02:00
Andy Scherzinger
205d00d443
harmonize license header in java/kt files
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-18 16:42:53 +02:00
Marcel Hibbe
c628c23557 fix to load conversation list (restricted user status)
when the user status app on server is restricted to only some groups, the capabilities for users that are excluded still contains the "user_status" capability.
For the android talk app, this caused that the conversations were not shown.
With this fix, the conversations will be loaded also if the "user_status" is mistakenly set. Additionally, the option to set the status will be hidden.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2022-06-15 13:45:53 +00:00
Andy Scherzinger
dd129b4e6c
further centralize mimetype definitions
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-10 13:13:37 +02:00
Andy Scherzinger
444ff05cf5
centralize mime type definitions
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-09 21:02:31 +02:00
Álvaro Brey
49d2f40e3f ProfileController: fix non-exhaustive when
Crashes Kotlin 1.7.0

Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-09 17:57:01 +00:00
Andy Scherzinger
3e99dc065b
improve code base from review comments
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-09 12:03:03 +02:00
Andy Scherzinger
3d0f154d7d
simplify worker call
Co-authored-by: Álvaro Brey <alvaro.brey@nextcloud.com>
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-09 12:03:03 +02:00
Andy Scherzinger
df61a4df87
replace share files remote item chooser with new implementation and remove any legacy implementation
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-08 23:40:09 +02:00
Andy Scherzinger
5bf90157bc
remove legacy references and fix avatar upload permission issues
...by using a different location and remove previous avatars upfront

Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-08 18:15:38 +02:00
Andy Scherzinger
a41d14c33a
Reimplement BrowserController with new architecture pattern
Signed-off-by: Andy Scherzinger <info@andy-scherzinger.de>
2022-06-08 18:15:21 +02:00
Álvaro Brey
1ee92e39dd
ChatController: fix scroll to unread messages
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-07 11:39:34 +02:00
Álvaro Brey
b097e3aac4
Message search: disable feature if unified search capability not present
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 17:42:59 +02:00
Álvaro Brey
eddb90d31b
Message search: avoid passing user entity to repository, inject userProvider instead
Signed-off-by: Álvaro Brey <alvaro.brey@nextcloud.com>
2022-06-01 16:49:20 +02:00