[fenix] For https://github.com/mozilla-mobile/fenix/issues/21414: Use MenuProvider and MenuHost interface methods

onPrepareOptionsMenu was not being called on invalidateOptionsMenu,
which led to the saveButton being left enabled even with invalid
hostnames, usersnames, and passwords.
pull/600/head
Alexander Gramiak 2 years ago committed by mergify[bot]
parent 3ffc6a01f8
commit 584a65da52

@ -331,14 +331,16 @@ class AddLoginFragment : Fragment(R.layout.fragment_add_login), MenuProvider {
}
private fun setSaveButtonState() {
activity?.invalidateOptionsMenu()
activity?.invalidateMenu()
}
override fun onCreateMenu(menu: Menu, inflater: MenuInflater) {
inflater.inflate(R.menu.login_save, menu)
}
override fun onPrepareOptionsMenu(menu: Menu) {
override fun onPrepareMenu(menu: Menu) {
super.onPrepareMenu(menu)
val saveButton = menu.findItem(R.id.save_login_button)
val changesMadeWithNoErrors = validHostname && validUsername && validPassword
saveButton.isEnabled = changesMadeWithNoErrors

Loading…
Cancel
Save