1
0
Fork 0

Fixes #5030: Modified Dialog to match the others. (#6022)

I changed the Dialog from permissions exceptions and used AlertDialog
instead of Context.alert extension function.
master
ValentinTimisica 2019-10-21 19:59:04 +03:00 committed by Jeff Boek
parent e23528291a
commit ef42d3e4dc
3 changed files with 30 additions and 28 deletions

View File

@ -4,7 +4,9 @@
package org.mozilla.fenix.settings.sitepermissions
import android.content.DialogInterface
import android.os.Bundle
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.app.AppCompatActivity
import androidx.lifecycle.lifecycleScope
import androidx.navigation.Navigation
@ -14,9 +16,6 @@ import kotlinx.coroutines.Dispatchers.IO
import kotlinx.coroutines.Dispatchers.Main
import kotlinx.coroutines.launch
import mozilla.components.feature.sitepermissions.SitePermissions
import org.jetbrains.anko.alert
import org.jetbrains.anko.noButton
import org.jetbrains.anko.yesButton
import org.mozilla.fenix.R
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.getPreferenceKey
@ -89,14 +88,16 @@ class SitePermissionsDetailsExceptionsFragment : PreferenceFragmentCompat() {
val button: Preference = requireNotNull(findPreference(keyPreference))
button.onPreferenceClickListener = Preference.OnPreferenceClickListener {
requireContext().alert(
R.string.confirm_clear_permissions_site,
R.string.clear_permissions
) {
yesButton {
AlertDialog.Builder(requireContext()).apply {
setMessage(R.string.confirm_clear_permissions_site)
setTitle(R.string.clear_permissions)
setPositiveButton(android.R.string.yes) { dialog: DialogInterface, _ ->
clearSitePermissions()
dialog.dismiss()
}
setNegativeButton(android.R.string.no) { dialog: DialogInterface, _ ->
dialog.cancel()
}
noButton { }
}.show()
true

View File

@ -4,6 +4,7 @@
package org.mozilla.fenix.settings.sitepermissions
import android.content.DialogInterface
import android.os.Bundle
import android.view.LayoutInflater
import android.view.View
@ -13,6 +14,7 @@ import android.view.ViewGroup
import android.widget.Button
import android.widget.ImageView
import android.widget.TextView
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.Fragment
import androidx.lifecycle.Observer
@ -27,9 +29,6 @@ import kotlinx.coroutines.Dispatchers.IO
import kotlinx.coroutines.Dispatchers.Main
import kotlinx.coroutines.launch
import mozilla.components.feature.sitepermissions.SitePermissions
import org.jetbrains.anko.alert
import org.jetbrains.anko.noButton
import org.jetbrains.anko.yesButton
import org.mozilla.fenix.R
import org.mozilla.fenix.ext.components
import org.mozilla.fenix.ext.loadIntoView
@ -94,14 +93,16 @@ class SitePermissionsExceptionsFragment :
private fun bindClearButton(rootView: View) {
clearButton = rootView.findViewById(R.id.delete_all_site_permissions_button)
clearButton.setOnClickListener {
requireContext().alert(
R.string.confirm_clear_permissions_on_all_sites,
R.string.clear_permissions
) {
yesButton {
AlertDialog.Builder(requireContext()).apply {
setMessage(R.string.confirm_clear_permissions_on_all_sites)
setTitle(R.string.clear_permissions)
setPositiveButton(android.R.string.yes) { dialog: DialogInterface, _ ->
deleteAllSitePermissions()
dialog.dismiss()
}
setNegativeButton(android.R.string.no) { dialog: DialogInterface, _ ->
dialog.cancel()
}
noButton { }
}.show()
}
}

View File

@ -4,6 +4,7 @@
package org.mozilla.fenix.settings.sitepermissions
import android.content.DialogInterface
import android.content.Intent
import android.net.Uri
import android.os.Bundle
@ -13,6 +14,7 @@ import android.view.View
import android.view.ViewGroup
import android.widget.Button
import android.widget.RadioButton
import androidx.appcompat.app.AlertDialog
import androidx.appcompat.app.AppCompatActivity
import androidx.fragment.app.Fragment
import androidx.lifecycle.lifecycleScope
@ -21,9 +23,6 @@ import kotlinx.coroutines.launch
import mozilla.components.feature.sitepermissions.SitePermissions
import mozilla.components.feature.sitepermissions.SitePermissions.Status.ALLOWED
import mozilla.components.feature.sitepermissions.SitePermissions.Status.BLOCKED
import org.jetbrains.anko.alert
import org.jetbrains.anko.noButton
import org.jetbrains.anko.yesButton
import org.mozilla.fenix.R
import org.mozilla.fenix.ext.requireComponents
import org.mozilla.fenix.ext.settings
@ -107,17 +106,18 @@ class SitePermissionsManageExceptionsPhoneFeatureFragment : Fragment() {
val button = rootView.findViewById<Button>(R.id.reset_permission)
button.setText(R.string.clear_permission)
button.setOnClickListener {
requireContext().alert(
R.string.confirm_clear_permission_site,
R.string.clear_permission
) {
yesButton {
AlertDialog.Builder(requireContext()).apply {
setMessage(R.string.confirm_clear_permission_site)
setTitle(R.string.clear_permission)
setPositiveButton(android.R.string.yes) { dialog: DialogInterface, _ ->
val defaultStatus = phoneFeature.getStatus(settings = settings)
updatedSitePermissions(defaultStatus)
resetRadioButtonsStatus(defaultStatus)
dialog.dismiss()
}
setNegativeButton(android.R.string.no) { dialog: DialogInterface, _ ->
dialog.cancel()
}
noButton { }
}.show()
}
}