Skip to content

Commit 3e656b0

Browse files
authored
Converted the WikipediaInstructionsDialogFragment to use viewbinding, along with a cleaner way to build bundle arguments for the fragment (commons-app#4684)
1 parent 6da3c78 commit 3e656b0

File tree

1 file changed

+16
-29
lines changed

1 file changed

+16
-29
lines changed

app/src/main/java/fr/free/nrw/commons/contributions/WikipediaInstructionsDialogFragment.kt

+16-29
Original file line numberDiff line numberDiff line change
@@ -5,40 +5,32 @@ import android.view.LayoutInflater
55
import android.view.View
66
import android.view.ViewGroup
77
import android.view.WindowManager
8+
import androidx.core.os.bundleOf
89
import androidx.fragment.app.DialogFragment
9-
import fr.free.nrw.commons.R
10-
import kotlinx.android.synthetic.main.dialog_add_to_wikipedia_instructions.*
10+
import fr.free.nrw.commons.databinding.DialogAddToWikipediaInstructionsBinding
1111

1212
/**
1313
* Dialog fragment for displaying instructions for editing wikipedia
1414
*/
1515
class WikipediaInstructionsDialogFragment : DialogFragment() {
1616

17-
var contribution: Contribution? = null
1817
var callback: Callback? = null
1918

2019
override fun onCreateView(
21-
inflater: LayoutInflater, container: ViewGroup?,
20+
inflater: LayoutInflater,
21+
container: ViewGroup?,
2222
savedInstanceState: Bundle?
23-
): View? {
24-
return inflater.inflate(R.layout.dialog_add_to_wikipedia_instructions, container)
25-
}
26-
27-
override fun onViewCreated(
28-
view: View,
29-
savedInstanceState: Bundle?
30-
) {
31-
super.onViewCreated(view, savedInstanceState)
32-
contribution = arguments!!.getParcelable(ARG_CONTRIBUTION)
33-
tv_wikicode.setText(contribution?.media?.wikiCode)
34-
instructions_cancel.setOnClickListener {
35-
dismiss()
36-
}
37-
38-
instructions_confirm.setOnClickListener {
39-
callback?.onConfirmClicked(contribution, checkbox_copy_wikicode.isChecked)
23+
) = DialogAddToWikipediaInstructionsBinding.inflate(inflater, container, false).apply {
24+
val contribution: Contribution? = arguments!!.getParcelable(ARG_CONTRIBUTION)
25+
tvWikicode.setText(contribution?.media?.wikiCode)
26+
instructionsCancel.setOnClickListener { dismiss() }
27+
instructionsConfirm.setOnClickListener {
28+
callback?.onConfirmClicked(contribution, checkboxCopyWikicode.isChecked)
4029
}
30+
}.root
4131

32+
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
33+
super.onViewCreated(view, savedInstanceState)
4234
dialog!!.window?.setSoftInputMode(
4335
WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN
4436
)
@@ -52,16 +44,11 @@ class WikipediaInstructionsDialogFragment : DialogFragment() {
5244
}
5345

5446
companion object {
55-
56-
val ARG_CONTRIBUTION = "contribution"
47+
const val ARG_CONTRIBUTION = "contribution"
5748

5849
@JvmStatic
59-
fun newInstance(contribution: Contribution): WikipediaInstructionsDialogFragment {
60-
val frag = WikipediaInstructionsDialogFragment()
61-
val args = Bundle()
62-
args.putParcelable(ARG_CONTRIBUTION, contribution)
63-
frag.arguments = args
64-
return frag
50+
fun newInstance(contribution: Contribution) = WikipediaInstructionsDialogFragment().apply {
51+
arguments = bundleOf(ARG_CONTRIBUTION to contribution)
6552
}
6653
}
6754
}

0 commit comments

Comments
 (0)