From 2ed6dd07b8604973d123afafd4d1c1e43e605ac6 Mon Sep 17 00:00:00 2001 From: Naveen Singh <36371707+naveensingh@users.noreply.github.com> Date: Wed, 15 Oct 2025 21:12:24 +0530 Subject: [PATCH] feat: always show pin/unpin as action (#561) * feat: always show pin/unpin as action * docs: update changelog --- CHANGELOG.md | 2 ++ .../messages/adapters/ConversationsAdapter.kt | 2 +- .../main/res/drawable/ic_archive_vector.xml | 2 +- app/src/main/res/drawable/ic_pin_vector.xml | 3 +++ .../main/res/drawable/ic_unarchive_vector.xml | 2 +- app/src/main/res/drawable/ic_unpin_vector.xml | 3 +++ app/src/main/res/menu/cab_conversations.xml | 24 +++++++++---------- 7 files changed, 23 insertions(+), 15 deletions(-) create mode 100644 app/src/main/res/drawable/ic_pin_vector.xml create mode 100644 app/src/main/res/drawable/ic_unpin_vector.xml diff --git a/CHANGELOG.md b/CHANGELOG.md index 4ee7b1e2..e76b5805 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Changed - Optimized loading messages in conversations - Updated conversation item design to be more compact ([#376]) +- Pin/unpin actions now always show as action buttons in menu ([#561]) ### Fixed - Fixed position reset when opening attachments in conversations ([#82]) @@ -182,6 +183,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 [#376]: https://github.com/FossifyOrg/Messages/issues/376 [#456]: https://github.com/FossifyOrg/Messages/issues/456 [#461]: https://github.com/FossifyOrg/Messages/issues/461 +[#561]: https://github.com/FossifyOrg/Messages/pull/561 [Unreleased]: https://github.com/FossifyOrg/Messages/compare/1.4.0...HEAD [1.4.0]: https://github.com/FossifyOrg/Messages/compare/1.3.0...1.4.0 diff --git a/app/src/main/kotlin/org/fossify/messages/adapters/ConversationsAdapter.kt b/app/src/main/kotlin/org/fossify/messages/adapters/ConversationsAdapter.kt index d4b0b620..25749023 100644 --- a/app/src/main/kotlin/org/fossify/messages/adapters/ConversationsAdapter.kt +++ b/app/src/main/kotlin/org/fossify/messages/adapters/ConversationsAdapter.kt @@ -312,7 +312,7 @@ class ConversationsAdapter( menu.findItem(R.id.cab_pin_conversation).isVisible = selectedConversations.any { !pinnedConversations.contains(it.threadId.toString()) } menu.findItem(R.id.cab_unpin_conversation).isVisible = - selectedConversations.any { pinnedConversations.contains(it.threadId.toString()) } + selectedConversations.all { pinnedConversations.contains(it.threadId.toString()) } } private fun refreshConversationsAndFinishActMode() { diff --git a/app/src/main/res/drawable/ic_archive_vector.xml b/app/src/main/res/drawable/ic_archive_vector.xml index 0617d995..a05d34dd 100644 --- a/app/src/main/res/drawable/ic_archive_vector.xml +++ b/app/src/main/res/drawable/ic_archive_vector.xml @@ -1,3 +1,3 @@ - + diff --git a/app/src/main/res/drawable/ic_pin_vector.xml b/app/src/main/res/drawable/ic_pin_vector.xml new file mode 100644 index 00000000..dc3bfcf3 --- /dev/null +++ b/app/src/main/res/drawable/ic_pin_vector.xml @@ -0,0 +1,3 @@ + + + diff --git a/app/src/main/res/drawable/ic_unarchive_vector.xml b/app/src/main/res/drawable/ic_unarchive_vector.xml index f4a3b76e..b7c74e1b 100644 --- a/app/src/main/res/drawable/ic_unarchive_vector.xml +++ b/app/src/main/res/drawable/ic_unarchive_vector.xml @@ -1,3 +1,3 @@ - + diff --git a/app/src/main/res/drawable/ic_unpin_vector.xml b/app/src/main/res/drawable/ic_unpin_vector.xml new file mode 100644 index 00000000..2ed20e20 --- /dev/null +++ b/app/src/main/res/drawable/ic_unpin_vector.xml @@ -0,0 +1,3 @@ + + + diff --git a/app/src/main/res/menu/cab_conversations.xml b/app/src/main/res/menu/cab_conversations.xml index 54c881b8..e752b7eb 100644 --- a/app/src/main/res/menu/cab_conversations.xml +++ b/app/src/main/res/menu/cab_conversations.xml @@ -3,6 +3,18 @@ xmlns:app="http://schemas.android.com/apk/res-auto" xmlns:tools="http://schemas.android.com/tools" tools:ignore="AppCompatResource,AlwaysShowAction"> + + - -