Loading app/ui/legacy/build.gradle +1 −0 Original line number Diff line number Diff line Loading @@ -9,6 +9,7 @@ dependencies { implementation project(":app:autodiscovery:api") implementation project(":app:autodiscovery:providersxml") implementation project(":mail:common") implementation project(":ui-utils:ToolbarBottomSheet") //TODO: Remove AccountSetupIncoming's dependency on these compileOnly project(":mail:protocols:imap") Loading app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageBottomSheet.kt 0 → 100644 +36 −0 Original line number Diff line number Diff line package com.fsck.k9.ui.messageview import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import androidx.core.content.ContextCompat import app.k9mail.ui.utils.bottomsheet.ToolbarBottomSheetDialogFragment import com.fsck.k9.ui.R class MessageBottomSheet : ToolbarBottomSheetDialogFragment() { override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { return inflater.inflate(R.layout.message_bottom_sheet, container, false) } override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) val dialog = checkNotNull(dialog) dialog.isDismissWithAnimation = true val toolbar = checkNotNull(toolbar) toolbar.apply { title = "Message details" navigationIcon = ContextCompat.getDrawable(requireContext(), R.drawable.ic_close) setNavigationOnClickListener { dismiss() } } } } app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageHeaderOnMenuItemClickListener.kt→app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageHeaderClickListener.kt +6 −0 Original line number Diff line number Diff line package com.fsck.k9.ui.messageview fun interface MessageHeaderOnMenuItemClickListener { interface MessageHeaderClickListener { fun onParticipantsContainerClick() fun onMenuItemClick(itemId: Int) } app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageTopView.java +2 −2 Original line number Diff line number Diff line Loading @@ -228,8 +228,8 @@ public class MessageTopView extends LinearLayout { mHeaderContainer.setOnFlagListener(listener); } public void setOnMenuItemClickListener(MessageHeaderOnMenuItemClickListener listener) { mHeaderContainer.setOnMenuItemClickListener(listener); public void setMessageHeaderClickListener(MessageHeaderClickListener listener) { mHeaderContainer.setMessageHeaderClickListener(listener); } private void hideHeaderView() { Loading app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageViewFragment.kt +16 −9 Original line number Diff line number Diff line Loading @@ -158,7 +158,7 @@ class MessageViewFragment : onToggleFlagged() } messageTopView.setOnMenuItemClickListener(::onReplyMenuItemClicked) messageTopView.setMessageHeaderClickListener(messageHeaderClickListener) messageTopView.setOnDownloadButtonClickListener { onDownloadButtonClicked() Loading Loading @@ -380,7 +380,13 @@ class MessageViewFragment : messageTopView.setSubject(displaySubject) } private fun onReplyMenuItemClicked(itemId: Int) { private val messageHeaderClickListener = object : MessageHeaderClickListener { override fun onParticipantsContainerClick() { val messageBottomSheet = MessageBottomSheet() messageBottomSheet.show(childFragmentManager, "message_details") } override fun onMenuItemClick(itemId: Int) { when (itemId) { R.id.reply -> onReply() R.id.reply_all -> onReplyAll() Loading @@ -390,6 +396,7 @@ class MessageViewFragment : else -> error("Missing handler for reply menu item $itemId") } } } private fun onDownloadButtonClicked() { messageTopView.disableDownloadButton() Loading Loading
app/ui/legacy/build.gradle +1 −0 Original line number Diff line number Diff line Loading @@ -9,6 +9,7 @@ dependencies { implementation project(":app:autodiscovery:api") implementation project(":app:autodiscovery:providersxml") implementation project(":mail:common") implementation project(":ui-utils:ToolbarBottomSheet") //TODO: Remove AccountSetupIncoming's dependency on these compileOnly project(":mail:protocols:imap") Loading
app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageBottomSheet.kt 0 → 100644 +36 −0 Original line number Diff line number Diff line package com.fsck.k9.ui.messageview import android.os.Bundle import android.view.LayoutInflater import android.view.View import android.view.ViewGroup import androidx.core.content.ContextCompat import app.k9mail.ui.utils.bottomsheet.ToolbarBottomSheetDialogFragment import com.fsck.k9.ui.R class MessageBottomSheet : ToolbarBottomSheetDialogFragment() { override fun onCreateView( inflater: LayoutInflater, container: ViewGroup?, savedInstanceState: Bundle? ): View? { return inflater.inflate(R.layout.message_bottom_sheet, container, false) } override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) val dialog = checkNotNull(dialog) dialog.isDismissWithAnimation = true val toolbar = checkNotNull(toolbar) toolbar.apply { title = "Message details" navigationIcon = ContextCompat.getDrawable(requireContext(), R.drawable.ic_close) setNavigationOnClickListener { dismiss() } } } }
app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageHeaderOnMenuItemClickListener.kt→app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageHeaderClickListener.kt +6 −0 Original line number Diff line number Diff line package com.fsck.k9.ui.messageview fun interface MessageHeaderOnMenuItemClickListener { interface MessageHeaderClickListener { fun onParticipantsContainerClick() fun onMenuItemClick(itemId: Int) }
app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageTopView.java +2 −2 Original line number Diff line number Diff line Loading @@ -228,8 +228,8 @@ public class MessageTopView extends LinearLayout { mHeaderContainer.setOnFlagListener(listener); } public void setOnMenuItemClickListener(MessageHeaderOnMenuItemClickListener listener) { mHeaderContainer.setOnMenuItemClickListener(listener); public void setMessageHeaderClickListener(MessageHeaderClickListener listener) { mHeaderContainer.setMessageHeaderClickListener(listener); } private void hideHeaderView() { Loading
app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageViewFragment.kt +16 −9 Original line number Diff line number Diff line Loading @@ -158,7 +158,7 @@ class MessageViewFragment : onToggleFlagged() } messageTopView.setOnMenuItemClickListener(::onReplyMenuItemClicked) messageTopView.setMessageHeaderClickListener(messageHeaderClickListener) messageTopView.setOnDownloadButtonClickListener { onDownloadButtonClicked() Loading Loading @@ -380,7 +380,13 @@ class MessageViewFragment : messageTopView.setSubject(displaySubject) } private fun onReplyMenuItemClicked(itemId: Int) { private val messageHeaderClickListener = object : MessageHeaderClickListener { override fun onParticipantsContainerClick() { val messageBottomSheet = MessageBottomSheet() messageBottomSheet.show(childFragmentManager, "message_details") } override fun onMenuItemClick(itemId: Int) { when (itemId) { R.id.reply -> onReply() R.id.reply_all -> onReplyAll() Loading @@ -390,6 +396,7 @@ class MessageViewFragment : else -> error("Missing handler for reply menu item $itemId") } } } private fun onDownloadButtonClicked() { messageTopView.disableDownloadButton() Loading