Confirm blocks and mutes from timelines (#1740)
* Add preference for confirming blocks and mutes from timelines Implements #1737 * Apply code review feedback
This commit is contained in:
parent
1b476c790a
commit
91263eed8b
5 changed files with 66 additions and 7 deletions
|
@ -193,7 +193,7 @@ class SearchViewModel @Inject constructor(
|
|||
return accountManager.getAllAccountsOrderedByActive()
|
||||
}
|
||||
|
||||
fun muteAcount(accountId: String) {
|
||||
fun muteAccount(accountId: String) {
|
||||
timelineCases.mute(accountId)
|
||||
}
|
||||
|
||||
|
|
|
@ -325,11 +325,11 @@ class SearchStatusesFragment : SearchFragment<Pair<Status, StatusViewData.Concre
|
|||
return@setOnMenuItemClickListener true
|
||||
}
|
||||
R.id.status_mute -> {
|
||||
viewModel.muteAcount(accountId)
|
||||
onMute(accountId, accountUsername)
|
||||
return@setOnMenuItemClickListener true
|
||||
}
|
||||
R.id.status_block -> {
|
||||
viewModel.blockAccount(accountId)
|
||||
onBlock(accountId, accountUsername)
|
||||
return@setOnMenuItemClickListener true
|
||||
}
|
||||
R.id.status_report -> {
|
||||
|
@ -362,6 +362,22 @@ class SearchStatusesFragment : SearchFragment<Pair<Status, StatusViewData.Concre
|
|||
popup.show()
|
||||
}
|
||||
|
||||
private fun onBlock(accountId: String, accountUsername: String) {
|
||||
AlertDialog.Builder(requireContext())
|
||||
.setMessage(getString(R.string.dialog_block_warning, accountUsername))
|
||||
.setPositiveButton(android.R.string.ok) { _, _ -> viewModel.blockAccount(accountId) }
|
||||
.setNegativeButton(android.R.string.cancel, null)
|
||||
.show()
|
||||
}
|
||||
|
||||
private fun onMute(accountId: String, accountUsername: String) {
|
||||
AlertDialog.Builder(requireContext())
|
||||
.setMessage(getString(R.string.dialog_mute_warning, accountUsername))
|
||||
.setPositiveButton(android.R.string.ok) { _, _ -> viewModel.muteAccount(accountId) }
|
||||
.setNegativeButton(android.R.string.cancel, null)
|
||||
.show()
|
||||
}
|
||||
|
||||
private fun accountIsInMentions(account: AccountEntity?, mentions: Array<Mention>): Boolean {
|
||||
return mentions.firstOrNull {
|
||||
account?.username == it.username && account.domain == Uri.parse(it.url)?.host
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue