Skip to content

Commit a9c9373

Browse files
committed
fix: reduce cyclomatic complexity for setupOptionsMenu()
1 parent ac734e9 commit a9c9373

File tree

1 file changed

+23
-24
lines changed

1 file changed

+23
-24
lines changed

app/src/main/kotlin/org/fossify/messages/activities/ThreadActivity.kt

Lines changed: 23 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ import android.text.format.DateUtils.FORMAT_SHOW_TIME
2828
import android.util.TypedValue
2929
import android.view.Gravity
3030
import android.view.KeyEvent
31+
import android.view.MenuItem
3132
import android.view.View
3233
import android.view.WindowManager
3334
import android.view.animation.OvershootInterpolator
@@ -42,12 +43,8 @@ import androidx.constraintlayout.widget.ConstraintLayout
4243
import androidx.core.content.res.ResourcesCompat
4344
import androidx.core.net.toUri
4445
import androidx.core.view.ViewCompat
45-
import androidx.core.view.WindowCompat
46-
import androidx.core.view.WindowInsetsAnimationCompat
4746
import androidx.core.view.WindowInsetsCompat
48-
import androidx.core.view.doOnLayout
4947
import androidx.core.view.updateLayoutParams
50-
import androidx.core.view.updatePadding
5148
import androidx.documentfile.provider.DocumentFile
5249
import androidx.recyclerview.widget.LinearLayoutManager
5350
import 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

Comments
 (0)