Commit Graph

341 Commits

Author SHA1 Message Date
Marcel Hibbe
b04a9c49cf
add chatBlock handling for threads
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-07-03 15:26:02 +02:00
Marcel Hibbe
395c3fbc80
open chat when navigating back from thread
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-07-03 11:59:10 +02:00
Marcel Hibbe
3996bda224
add first handling for threads (WIP)
for now only added logic in IncomingTextMessageViewHolder.kt ...

- add thread button for quoted messages if thread of message != current thread
- open a new ChatActivity when clicked the button and pass threadId
- change the title
- add todos

for now, the parentId was taken instead of topmostParentId (which is not available yet)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-07-03 11:59:09 +02:00
Marcel Hibbe
d3d3776a8f
solve detekt warnings
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-06-20 10:57:15 +02:00
Marcel Hibbe
cc9ca58a69
add edge to edge support (while handling special cases for xml vs compose and keyboard handling)
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-06-20 10:57:14 +02:00
Marcel Hibbe
21932df918
fix top padding for chat + use android-common 0.26
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-06-20 10:57:13 +02:00
Marcel Hibbe
8e3909efbc
handle edge to edge support for android 15
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-06-20 10:57:13 +02:00
Marcel Hibbe
9d3ad47e20
WIP targetSdkVersion 35
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-06-20 10:57:13 +02:00
Marcel Hibbe
4a93551ef9
fix wrong plurals implementation
- key was duplicated
- kotlin handling of plurals was missing

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-06-16 10:10:02 +02:00
rapterjet2004
5a22f27b64
Adding a Short cut to note-to-self
Translations, and focuses on edittext upon opening

Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2025-06-13 13:43:00 +02:00
Marcel Hibbe
4efba2b953
Merge pull request #5028 from nextcloud/ui_enhancements
UI improvements to automatic conversation deletion information for event, sip and instant meetings conversation
2025-06-04 07:51:27 +00:00
sowjanyakch
89bddbd8fd
format
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-06-03 18:35:10 +02:00
sowjanyakch
de62d2776c
remove menu item after pressing keep button
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-06-03 18:35:10 +02:00
sowjanyakch
9aa1622929
popup menu color
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-06-03 18:35:10 +02:00
sowjanyakch
9dbb7ab703
consistent color to text and icon
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-06-03 18:35:09 +02:00
Marcel Hibbe
a354ca197e
simplify how search results are shown
1. reverting changes from commit 971cc79b76. The scroll to methods are used in other places and a user reported that the search window suddenly opened without to search.
2. remove checkIfMessageIsSaved method. If the message is saved or not does not matter. The only fact for "scroll to" would be that it's loaded in the adapter.
3. As the adapter is always null with the current implementation (when coming back from the first search window), the "scroll to" is replaced with the startContextChatWindowForMessage. This could be changed again when adapter is not null anymore after coming back from the other screen...

startContextChatWindowForMessage

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-06-03 14:10:07 +02:00
Marcel Hibbe
8836195f92
delete useless string & logic for conversationDeleteNotice
... string text was exactly the same

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-05-22 17:03:31 +02:00
Marcel Hibbe
38eba2f6c9
avoid NPE for eventEndTimeStamp
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-05-22 16:45:21 +02:00
sowjanyakch
ab8a41182a
add different object types for phone
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-22 15:16:00 +02:00
sowjanyakch
354b107e1c
objectId instead of objectType
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-22 15:16:00 +02:00
sowjanyakch
e72701c219
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-22 15:15:59 +02:00
sowjanyakch
3007633873
only show delete and keep options for moderators of a conversation
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-22 15:15:59 +02:00
sowjanyakch
6659b664d8
add meaningful names
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-22 15:15:59 +02:00
sowjanyakch
d6a2a1fe27
modify strings
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-22 15:15:58 +02:00
sowjanyakch
1670ff181f
add unbind-conversation capability
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-22 15:15:58 +02:00
sowjanyakch
01b80a0753
retain conversation successfully
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-22 15:15:58 +02:00
sowjanyakch
1ed89b2a53
delete event conversation
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-22 15:15:58 +02:00
sowjanyakch
0104989eef
show warning dialog when call ends
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-22 15:15:57 +02:00
rapterjet2004
62d9a47c37
Tables work
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2025-05-22 14:53:54 +02:00
Marcel Hibbe
971cc79b76
open context search when message was not found or adapter was null
Opening it when adapter was null is a bit hacky but it works (better would be to make sure adapter is not null of course)

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-05-21 16:56:22 +02:00
rapterjet2004
0b40e06f46
Appended to work with replies
Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2025-05-21 14:28:58 +02:00
rapterjet2004
fd7afccbc4
Follow up improvements
- Added ComposePreviewUtils
- Added ComposePreviewUtilsDao (both for previewing w/ dependencies)
- Additional fixes

Signed-off-by: rapterjet2004 <juliuslinus1@gmail.com>
2025-05-21 14:28:57 +02:00
sowjanyakch
582eda8480
merge conflicts
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-14 19:03:08 +02:00
sowjanyakch
70bfbb3210
refactor
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-14 18:58:37 +02:00
sowjanyakch
3dc390a8cd
ktlintFormat
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-14 18:58:37 +02:00
sowjanyakch
4ec2cb8e7a
make snackbar clickable
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-14 18:58:37 +02:00
sowjanyakch
40ffa582e3
fix detekt
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-14 17:37:59 +02:00
sowjanyakch
cf27a489e7
use calendar icon instead of calendar clock icon
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-14 17:37:59 +02:00
sowjanyakch
44065ae946
archive conversation
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-14 17:37:58 +02:00
sowjanyakch
b128c5a8ea
use string resources
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-14 17:37:58 +02:00
sowjanyakch
fd47146729
UI changes and hiding events
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-14 17:37:57 +02:00
sowjanyakch
83b8915787
add icon for event conversations
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-14 17:37:57 +02:00
sowjanyakch
f11ed31408
update snackbar text
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-05-14 11:13:38 +02:00
Marcel Hibbe
ab19f631ae
get Note-to-Self room by endpoint + convert to coroutines
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-04-29 13:40:27 +02:00
Marcel Hibbe
c6d1f68442
fix jumping Note to self option in message action dialog.
Only get room for Note to Self after clicking on the option..

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-04-29 12:32:36 +02:00
Sowjanya Kota
a9090d4e71
Merge pull request #4826 from nextcloud/feature/4712/addParticipantTo1to1
Feature/4712/add participant to1to1
2025-04-17 12:47:19 +02:00
sowjanyakch
a82218055e
use display name of user instead of userId
Signed-off-by: sowjanyakch <sowjanya.kch@gmail.com>
2025-04-16 15:19:55 +02:00
Marcel Hibbe
d0190158d5
avoid NPE in onLoadMore
For v21.0.0, the following crash was reported:

Exception java.lang.NullPointerException: null cannot be cast to non-null type com.nextcloud.talk.chat.data.model.ChatMessage
  at com.nextcloud.talk.chat.ChatActivity.onLoadMore (ChatActivity.kt:3107)
  at com.stfalcon.chatkit.messages.MessagesListAdapter.onLoadMore (MessagesListAdapter.java:148)
  at com.stfalcon.chatkit.messages.RecyclerScrollMoreListener.onScrolled (RecyclerScrollMoreListener.java:82)
  at androidx.recyclerview.widget.RecyclerView.dispatchOnScrolled (RecyclerView.java:5688)
  at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep3 (RecyclerView.java:4741)
  at androidx.recyclerview.widget.RecyclerView.dispatchLayout (RecyclerView.java:4367)
  at androidx.recyclerview.widget.RecyclerView.onLayout (RecyclerView.java:4919)

This is now improved:
- lastOrNull prevents exceptions if no matching item is found
- as? is a safe cast that returns null if the cast fails

Whole expression becomes null-safe, and id will be null if anything along the way doesn't match. Only when not null, onLoadMore continues.

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-04-14 14:21:51 +02:00
Marcel Hibbe
c2ad89f7fb
minor refactoring
to be discussed: does it make sense to show a dialog instead? At least when it's created via 1:1 conversation

Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-04-14 11:03:46 +02:00
Marcel Hibbe
77fe2ad024
refactor getRetrofitBucketForCreateRoom
Signed-off-by: Marcel Hibbe <dev@mhibbe.de>
2025-04-14 11:03:45 +02:00