Loading app/ui/legacy/src/main/java/com/fsck/k9/activity/MessageList.kt +23 −11 Original line number Diff line number Diff line Loading @@ -332,16 +332,21 @@ open class MessageList : showMessageView() } DisplayMode.SPLIT_VIEW -> { val messageListFragment = checkNotNull(this.messageListFragment) messageListWasDisplayed = true messageListFragment?.onListVisible() messageListFragment.onListVisible() messageViewFragment.let { messageViewFragment -> if (messageViewFragment == null) { showMessageViewPlaceHolder() } else { val activeMessage = messageViewFragment!!.messageReference if (activeMessage != null) { messageListFragment!!.setActiveMessage(activeMessage) messageViewFragment.isActive = true val activeMessage = messageViewFragment.messageReference messageListFragment.setActiveMessage(activeMessage) } } setDrawerLockState() onMessageListDisplayed() } Loading Loading @@ -987,12 +992,15 @@ open class MessageList : } val fragment = MessageViewFragment.newInstance(messageReference) val fragmentTransaction = supportFragmentManager.beginTransaction() fragmentTransaction.replace(R.id.message_view_container, fragment, FRAGMENT_TAG_MESSAGE_VIEW) fragmentTransaction.commit() supportFragmentManager.commit { replace(R.id.message_view_container, fragment, FRAGMENT_TAG_MESSAGE_VIEW) } messageViewFragment = fragment if (displayMode != DisplayMode.SPLIT_VIEW) { if (displayMode == DisplayMode.SPLIT_VIEW) { fragment.isActive = true } else { showMessageView() } } Loading Loading @@ -1195,6 +1203,7 @@ open class MessageList : displayMode = DisplayMode.MESSAGE_LIST viewSwitcher!!.showFirstView() messageViewFragment?.isActive = false messageListFragment!!.onListVisible() messageListFragment!!.setActiveMessage(null) Loading @@ -1217,8 +1226,11 @@ open class MessageList : } private fun showMessageView() { val messageViewFragment = checkNotNull(this.messageViewFragment) displayMode = DisplayMode.MESSAGE_VIEW messageListFragment?.onListHidden() messageViewFragment.isActive = true if (!messageListWasDisplayed) { viewSwitcher!!.animateFirstView = false Loading app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageViewFragment.kt +14 −1 Original line number Diff line number Diff line Loading @@ -89,6 +89,17 @@ class MessageViewFragment : private var currentAttachmentViewInfo: AttachmentViewInfo? = null /** * Set this to `true` when the fragment should be considered active. When active, the fragment adds its actions to * the toolbar. When inactive, the fragment won't add its actions to the toolbar, even it is still visible, e.g. as * part of an animation. */ var isActive: Boolean = false set(value) { field = value invalidateMenu() } override fun onAttach(context: Context) { super.onAttach(context) Loading Loading @@ -179,6 +190,8 @@ class MessageViewFragment : } override fun onPrepareOptionsMenu(menu: Menu) { if (!isActive) return menu.findItem(R.id.delete).isVisible = K9.isMessageViewDeleteActionVisible val showToggleUnread = !isOutbox Loading Loading @@ -890,7 +903,7 @@ class MessageViewFragment : } private fun invalidateMenu() { requireActivity().invalidateMenu() activity?.invalidateMenu() } private enum class FolderOperation { Loading Loading
app/ui/legacy/src/main/java/com/fsck/k9/activity/MessageList.kt +23 −11 Original line number Diff line number Diff line Loading @@ -332,16 +332,21 @@ open class MessageList : showMessageView() } DisplayMode.SPLIT_VIEW -> { val messageListFragment = checkNotNull(this.messageListFragment) messageListWasDisplayed = true messageListFragment?.onListVisible() messageListFragment.onListVisible() messageViewFragment.let { messageViewFragment -> if (messageViewFragment == null) { showMessageViewPlaceHolder() } else { val activeMessage = messageViewFragment!!.messageReference if (activeMessage != null) { messageListFragment!!.setActiveMessage(activeMessage) messageViewFragment.isActive = true val activeMessage = messageViewFragment.messageReference messageListFragment.setActiveMessage(activeMessage) } } setDrawerLockState() onMessageListDisplayed() } Loading Loading @@ -987,12 +992,15 @@ open class MessageList : } val fragment = MessageViewFragment.newInstance(messageReference) val fragmentTransaction = supportFragmentManager.beginTransaction() fragmentTransaction.replace(R.id.message_view_container, fragment, FRAGMENT_TAG_MESSAGE_VIEW) fragmentTransaction.commit() supportFragmentManager.commit { replace(R.id.message_view_container, fragment, FRAGMENT_TAG_MESSAGE_VIEW) } messageViewFragment = fragment if (displayMode != DisplayMode.SPLIT_VIEW) { if (displayMode == DisplayMode.SPLIT_VIEW) { fragment.isActive = true } else { showMessageView() } } Loading Loading @@ -1195,6 +1203,7 @@ open class MessageList : displayMode = DisplayMode.MESSAGE_LIST viewSwitcher!!.showFirstView() messageViewFragment?.isActive = false messageListFragment!!.onListVisible() messageListFragment!!.setActiveMessage(null) Loading @@ -1217,8 +1226,11 @@ open class MessageList : } private fun showMessageView() { val messageViewFragment = checkNotNull(this.messageViewFragment) displayMode = DisplayMode.MESSAGE_VIEW messageListFragment?.onListHidden() messageViewFragment.isActive = true if (!messageListWasDisplayed) { viewSwitcher!!.animateFirstView = false Loading
app/ui/legacy/src/main/java/com/fsck/k9/ui/messageview/MessageViewFragment.kt +14 −1 Original line number Diff line number Diff line Loading @@ -89,6 +89,17 @@ class MessageViewFragment : private var currentAttachmentViewInfo: AttachmentViewInfo? = null /** * Set this to `true` when the fragment should be considered active. When active, the fragment adds its actions to * the toolbar. When inactive, the fragment won't add its actions to the toolbar, even it is still visible, e.g. as * part of an animation. */ var isActive: Boolean = false set(value) { field = value invalidateMenu() } override fun onAttach(context: Context) { super.onAttach(context) Loading Loading @@ -179,6 +190,8 @@ class MessageViewFragment : } override fun onPrepareOptionsMenu(menu: Menu) { if (!isActive) return menu.findItem(R.id.delete).isVisible = K9.isMessageViewDeleteActionVisible val showToggleUnread = !isOutbox Loading Loading @@ -890,7 +903,7 @@ class MessageViewFragment : } private fun invalidateMenu() { requireActivity().invalidateMenu() activity?.invalidateMenu() } private enum class FolderOperation { Loading