diff options
author | Kazuki Yamaguchi <k@rhe.jp> | 2017-10-08 00:08:48 +0900 |
---|---|---|
committer | Kazuki Yamaguchi <k@rhe.jp> | 2017-10-08 00:53:24 +0900 |
commit | 16fbf18a9273a1acea81a0200d6988b04b253303 (patch) | |
tree | 242617e54ae48f5f16546c73b61f3a68d20615bb /app/src/main/java/net/lacolaco/smileessence/view/dialog/MessageDetailDialogFragment.kt | |
parent | f343789ef2ade0869b3dda5e5a0ccad3b0e4d480 (diff) | |
download | SmileEssence-16fbf18a9273a1acea81a0200d6988b04b253303.tar.gz |
listen simplify
Diffstat (limited to 'app/src/main/java/net/lacolaco/smileessence/view/dialog/MessageDetailDialogFragment.kt')
-rw-r--r-- | app/src/main/java/net/lacolaco/smileessence/view/dialog/MessageDetailDialogFragment.kt | 82 |
1 files changed, 28 insertions, 54 deletions
diff --git a/app/src/main/java/net/lacolaco/smileessence/view/dialog/MessageDetailDialogFragment.kt b/app/src/main/java/net/lacolaco/smileessence/view/dialog/MessageDetailDialogFragment.kt index f1afb47e..8315ca9f 100644 --- a/app/src/main/java/net/lacolaco/smileessence/view/dialog/MessageDetailDialogFragment.kt +++ b/app/src/main/java/net/lacolaco/smileessence/view/dialog/MessageDetailDialogFragment.kt @@ -50,26 +50,9 @@ import net.lacolaco.smileessence.view.adapter.UnorderedCustomListAdapter import java.util.ArrayList -class MessageDetailDialogFragment : StackableDialogFragment(), View.OnClickListener { +class MessageDetailDialogFragment : StackableDialogFragment() { private lateinit var message: DirectMessage - override fun onClick(v: View) { - when (v.id) { - R.id.button_status_detail_reply -> { - openSendMessageDialog() - } - R.id.button_status_detail_delete -> { - deleteMessage() - } - R.id.button_status_detail_menu -> { - openMenu() - } - else -> { - dismiss() - } - } - } - override fun onCreateDialog(savedInstanceState: Bundle?): Dialog { val found = DirectMessage.fetch(arguments.getLong(KEY_MESSAGE_ID)) if (found == null) { @@ -85,11 +68,34 @@ class MessageDetailDialogFragment : StackableDialogFragment(), View.OnClickListe view.setBackgroundColor((messageHeader.background as ColorDrawable).color) //--- buttons - view.button_status_detail_reply.setOnClickListener(this) - view.button_status_detail_delete.setOnClickListener(this) - view.button_status_detail_delete.visibility = View.VISIBLE + view.button_status_detail_reply.setOnClickListener { + DialogHelper.showDialog(activity, SendMessageDialogFragment.newInstance(message.sender)) + } + view.button_status_detail_delete.setOnClickListener { + ConfirmDialogFragment.show(activity, getString(R.string.dialog_confirm_commands)) { + Messages.DestroyTask(world.account, message.id) + .onDone { x -> world.notify(R.string.notice_message_delete_succeeded) } + .onFail { x -> world.notifyError(R.string.notice_message_delete_failed) } + .execute() + dismiss() + } + } // -- menu dialog - view.button_status_detail_menu.setOnClickListener(this) + view.button_status_detail_menu.setOnClickListener { + val builder = AlertDialog.Builder(activity) + builder.setTitle("@" + message.sender.screenName + ": " + message.text) + .setItems(R.array.message_commands) { dialog, which -> + when (which) { + 0 -> { + SystemServiceHelper.copyToClipboard(activity, "message text", message.text) + world.notify(R.string.notice_copy_clipboard) + } + else -> throw IllegalStateException() + } + } + val dialog = builder.create() + dialog.show() + } // -- menu embedded in dialog val activity = activity as MainActivity @@ -160,38 +166,6 @@ class MessageDetailDialogFragment : StackableDialogFragment(), View.OnClickListe return AlertDialog.Builder(activity).setView(view).create() } - // -------------------------- OTHER METHODS -------------------------- - - private fun deleteMessage() { - ConfirmDialogFragment.show(activity, getString(R.string.dialog_confirm_commands)) { - Messages.DestroyTask(world.account, message.id) - .onDone { x -> world.notify(R.string.notice_message_delete_succeeded) } - .onFail { x -> world.notifyError(R.string.notice_message_delete_failed) } - .execute() - dismiss() - } - } - - private fun openSendMessageDialog() { - DialogHelper.showDialog(activity, SendMessageDialogFragment.newInstance(message.sender)) - } - - private fun openMenu() { - val builder = AlertDialog.Builder(activity) - builder.setTitle("@" + message.sender.screenName + ": " + message.text) - .setItems(R.array.message_commands) { dialog, which -> - when (which) { - 0 -> { - SystemServiceHelper.copyToClipboard(activity, "message text", message.text) - world.notify(R.string.notice_copy_clipboard) - } - else -> throw IllegalStateException() - } - } - val dialog = builder.create() - dialog.show() - } - companion object { private val KEY_MESSAGE_ID = "message_id" |