4664: Moved AdvanceQueryFragment to ViewBinding (#5091)

This commit is contained in:
Ankush Bose 2022-10-29 15:03:50 +05:30 committed by GitHub
parent 3fd63b009a
commit cc24caa83c
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -6,52 +6,48 @@ import android.view.LayoutInflater
import android.view.View
import android.view.ViewGroup
import android.view.inputmethod.InputMethodManager
import androidx.appcompat.widget.AppCompatButton
import androidx.appcompat.widget.AppCompatEditText
import androidx.fragment.app.Fragment
import fr.free.nrw.commons.R
import kotlinx.android.synthetic.main.fragment_advance_query.*
import fr.free.nrw.commons.databinding.FragmentAdvanceQueryBinding
class AdvanceQueryFragment : Fragment() {
private var _binding: FragmentAdvanceQueryBinding? = null
private val binding get() = _binding
lateinit var originalQuery: String
lateinit var callback: Callback
lateinit var etQuery: AppCompatEditText
lateinit var btnApply: AppCompatButton
lateinit var btnReset: AppCompatButton
override fun onCreateView(
inflater: LayoutInflater,
container: ViewGroup?,
savedInstanceState: Bundle?
): View? {
val view = inflater.inflate(R.layout.fragment_advance_query, container, false)
_binding = FragmentAdvanceQueryBinding.inflate(inflater, container, false)
originalQuery = arguments?.getString("query")!!
setHasOptionsMenu(false)
return view
return binding?.root
}
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
super.onViewCreated(view, savedInstanceState)
etQuery = view.findViewById(R.id.et_query)
btnApply = view.findViewById(R.id.btn_apply)
btnReset = view.findViewById(R.id.btn_reset)
etQuery.setText(originalQuery)
btnReset.setOnClickListener {
btnReset.post {
etQuery.setText(originalQuery)
etQuery.clearFocus()
hideKeyBoard()
callback.reset()
with(requireNotNull(binding)) {
etQuery.setText(originalQuery)
btnReset.setOnClickListener {
btnReset.post {
etQuery.setText(originalQuery)
etQuery.clearFocus()
hideKeyBoard()
callback.reset()
}
}
}
btnApply.setOnClickListener {
btnApply.post {
etQuery.clearFocus()
hideKeyBoard()
callback.apply(etQuery.text.toString())
callback.close()
btnApply.setOnClickListener {
btnApply.post {
etQuery.clearFocus()
hideKeyBoard()
callback.apply(etQuery.text.toString())
callback.close()
}
}
}
}