From cf27a489e7158c5efb656f2699b1623afb79f51f Mon Sep 17 00:00:00 2001 From: sowjanyakch Date: Mon, 14 Apr 2025 12:08:21 +0200 Subject: [PATCH] use calendar icon instead of calendar clock icon Signed-off-by: sowjanyakch --- .../com/nextcloud/talk/chat/ChatActivity.kt | 67 ++++++++++++++----- .../drawable/baseline_calendar_today_24.xml | 19 ++++++ app/src/main/res/drawable/calendar_clock.xml | 16 ----- .../main/res/layout/item_event_schedule.xml | 8 +++ app/src/main/res/menu/menu_conversation.xml | 2 +- 5 files changed, 78 insertions(+), 34 deletions(-) create mode 100644 app/src/main/res/drawable/baseline_calendar_today_24.xml delete mode 100644 app/src/main/res/drawable/calendar_clock.xml diff --git a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt index 8951c6f0c..62d67e4f2 100644 --- a/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt +++ b/app/src/main/java/com/nextcloud/talk/chat/ChatActivity.kt @@ -582,8 +582,8 @@ class ChatActivity : participantPermissions = ParticipantPermissions(spreedCapabilities, currentConversation!!) invalidateOptionsMenu() - checkShowCallButtons() isEventConversation() + checkShowCallButtons() checkLobbyState() updateRoomTimerHandler() } else { @@ -616,8 +616,8 @@ class ChatActivity : loadAvatarForStatusBar() setupSwipeToReply() setActionBarTitle() - checkShowCallButtons() isEventConversation() + checkShowCallButtons() checkLobbyState() if (currentConversation?.type == ConversationEnums.ConversationType.ROOM_TYPE_ONE_TO_ONE_CALL && currentConversation?.status == "dnd" @@ -2877,17 +2877,19 @@ class ChatActivity : super.onCreateOptionsMenu(menu) menuInflater.inflate(R.menu.menu_conversation, menu) + if (currentConversation?.objectType == ConversationEnums.ObjectType.EVENT) { + eventConversationMenuItem = menu.findItem(R.id.conversation_event) + } else { + menu.removeItem(R.id.conversation_event) + } + if (conversationUser?.userId == "?") { menu.removeItem(R.id.conversation_info) } else { loadAvatarForStatusBar() setActionBarTitle() } - if (currentConversation?.objectType == ConversationEnums.ObjectType.EVENT) { - eventConversationMenuItem = menu.findItem(R.id.conversation_event) - } else { - menu.removeItem(R.id.conversation_event) - } + return true } @@ -2983,6 +2985,7 @@ class ChatActivity : val subtitleTextView = popupView.findViewById(R.id.meetingTime) val deleteConversation = popupView.findViewById(R.id.delete_conversation) val archiveConversation = popupView.findViewById(R.id.archive_conversation) + val unarchiveConversation = popupView.findViewById(R.id.unarchive_conversation) val popupWindow = PopupWindow( popupView, @@ -3033,22 +3036,52 @@ class ChatActivity : } if (meetingStatus == context.resources.getString(R.string.nc_meeting_ended) && - ( - Participant.ParticipantType.MODERATOR == currentConversation?.participantType || + (Participant.ParticipantType.MODERATOR == currentConversation?.participantType || Participant.ParticipantType.OWNER == currentConversation?.participantType - ) && - currentConversation?.hasArchived == false + ) ) { - archiveConversation.visibility = View.VISIBLE - archiveConversation.setOnClickListener { - this.lifecycleScope.launch { - conversationInfoViewModel.archiveConversation(conversationUser!!, currentConversation?.token!!) - Snackbar.make(binding.root, R.string.conversation_archived, Snackbar.LENGTH_LONG).show() + if (currentConversation?.hasArchived == false) { + unarchiveConversation.visibility = View.GONE + archiveConversation.visibility = View.VISIBLE + archiveConversation.setOnClickListener { + this.lifecycleScope.launch { + conversationInfoViewModel.archiveConversation(conversationUser!!, currentConversation?.token!!) + Snackbar.make( + binding.root, + String.format( + context.resources.getString(R.string.archived_conversation), + currentConversation?.displayName + ), + Snackbar.LENGTH_LONG + ).show() + } + popupWindow.dismiss() } - popupWindow.dismiss() + } else { + unarchiveConversation.visibility = View.VISIBLE + archiveConversation.visibility = View.GONE + unarchiveConversation.setOnClickListener { + this.lifecycleScope.launch { + conversationInfoViewModel.unarchiveConversation( + conversationUser!!, + currentConversation?.token!! + ) + Snackbar.make( + binding.root, + String.format( + context.resources.getString(R.string.unarchived_conversation), + currentConversation?.displayName + ), + Snackbar.LENGTH_LONG + ).show() + } + popupWindow.dismiss() + } + } } else { archiveConversation.visibility = View.GONE + unarchiveConversation.visibility = View.GONE } } diff --git a/app/src/main/res/drawable/baseline_calendar_today_24.xml b/app/src/main/res/drawable/baseline_calendar_today_24.xml new file mode 100644 index 000000000..5a569b829 --- /dev/null +++ b/app/src/main/res/drawable/baseline_calendar_today_24.xml @@ -0,0 +1,19 @@ + + + + + + + diff --git a/app/src/main/res/drawable/calendar_clock.xml b/app/src/main/res/drawable/calendar_clock.xml deleted file mode 100644 index fddc4d044..000000000 --- a/app/src/main/res/drawable/calendar_clock.xml +++ /dev/null @@ -1,16 +0,0 @@ - - - - - diff --git a/app/src/main/res/layout/item_event_schedule.xml b/app/src/main/res/layout/item_event_schedule.xml index addb2536c..502fd1122 100644 --- a/app/src/main/res/layout/item_event_schedule.xml +++ b/app/src/main/res/layout/item_event_schedule.xml @@ -46,4 +46,12 @@ android:text="@string/archive_conversation" android:visibility = "gone" android:paddingTop="16dp"/> + + \ No newline at end of file diff --git a/app/src/main/res/menu/menu_conversation.xml b/app/src/main/res/menu/menu_conversation.xml index ffcd29932..c7830b0dc 100644 --- a/app/src/main/res/menu/menu_conversation.xml +++ b/app/src/main/res/menu/menu_conversation.xml @@ -10,7 +10,7 @@