@@ -28,6 +28,7 @@ import android.text.format.DateUtils.FORMAT_SHOW_TIME
2828import android.util.TypedValue
2929import android.view.Gravity
3030import android.view.KeyEvent
31+ import android.view.MenuItem
3132import android.view.View
3233import android.view.WindowManager
3334import android.view.animation.OvershootInterpolator
@@ -42,12 +43,8 @@ import androidx.constraintlayout.widget.ConstraintLayout
4243import androidx.core.content.res.ResourcesCompat
4344import androidx.core.net.toUri
4445import androidx.core.view.ViewCompat
45- import androidx.core.view.WindowCompat
46- import androidx.core.view.WindowInsetsAnimationCompat
4746import androidx.core.view.WindowInsetsCompat
48- import androidx.core.view.doOnLayout
4947import androidx.core.view.updateLayoutParams
50- import androidx.core.view.updatePadding
5148import androidx.documentfile.provider.DocumentFile
5249import androidx.recyclerview.widget.LinearLayoutManager
5350import androidx.recyclerview.widget.RecyclerView
@@ -386,29 +383,31 @@ class ThreadActivity : SimpleActivity() {
386383
387384 private fun setupOptionsMenu () {
388385 binding.threadToolbar.setOnMenuItemClickListener { menuItem ->
389- if (participants.isEmpty()) {
390- return @setOnMenuItemClickListener true
391- }
392-
393- when (menuItem.itemId) {
394- R .id.block_number -> tryBlocking()
395- R .id.delete -> askConfirmDelete()
396- R .id.restore -> askConfirmRestoreAll()
397- R .id.archive -> archiveConversation()
398- R .id.unarchive -> unarchiveConversation()
399- R .id.rename_conversation -> renameConversation()
400- R .id.conversation_details -> launchConversationDetails(threadId)
401- R .id.add_number_to_contact -> addNumberToContact()
402- R .id.copy_number -> copyNumberToClipboard()
403- R .id.dial_number -> dialNumber()
404- R .id.manage_people -> managePeople()
405- R .id.mark_as_unread -> markAsUnread()
406- else -> return @setOnMenuItemClickListener false
407- }
408- return @setOnMenuItemClickListener true
386+ if (participants.isEmpty()) return @setOnMenuItemClickListener true
387+ return @setOnMenuItemClickListener handleMenuItemAction(menuItem)
409388 }
410389 }
411390
391+ private fun handleMenuItemAction (menuItem : MenuItem ): Boolean {
392+ when (menuItem.itemId) {
393+ R .id.block_number -> tryBlocking()
394+ R .id.delete -> askConfirmDelete()
395+ R .id.restore -> askConfirmRestoreAll()
396+ R .id.archive -> archiveConversation()
397+ R .id.unarchive -> unarchiveConversation()
398+ R .id.rename_conversation -> renameConversation()
399+ R .id.conversation_details -> launchConversationDetails(threadId)
400+ R .id.add_number_to_contact -> addNumberToContact()
401+ R .id.copy_number -> copyNumberToClipboard()
402+ R .id.dial_number -> dialNumber()
403+ R .id.manage_people -> managePeople()
404+ R .id.mark_as_unread -> markAsUnread()
405+ else -> return false
406+ }
407+
408+ return true
409+ }
410+
412411 override fun onActivityResult (requestCode : Int , resultCode : Int , resultData : Intent ? ) {
413412 super .onActivityResult(requestCode, resultCode, resultData)
414413 if (resultCode != Activity .RESULT_OK ) return
0 commit comments