I changed the Dialog from permissions exceptions and used AlertDialog instead of Context.alert extension function.master
parent
e23528291a
commit
ef42d3e4dc
|
@ -4,7 +4,9 @@
|
||||||
|
|
||||||
package org.mozilla.fenix.settings.sitepermissions
|
package org.mozilla.fenix.settings.sitepermissions
|
||||||
|
|
||||||
|
import android.content.DialogInterface
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
|
import androidx.appcompat.app.AlertDialog
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
import androidx.navigation.Navigation
|
import androidx.navigation.Navigation
|
||||||
|
@ -14,9 +16,6 @@ import kotlinx.coroutines.Dispatchers.IO
|
||||||
import kotlinx.coroutines.Dispatchers.Main
|
import kotlinx.coroutines.Dispatchers.Main
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import mozilla.components.feature.sitepermissions.SitePermissions
|
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.R
|
||||||
import org.mozilla.fenix.ext.components
|
import org.mozilla.fenix.ext.components
|
||||||
import org.mozilla.fenix.ext.getPreferenceKey
|
import org.mozilla.fenix.ext.getPreferenceKey
|
||||||
|
@ -89,14 +88,16 @@ class SitePermissionsDetailsExceptionsFragment : PreferenceFragmentCompat() {
|
||||||
val button: Preference = requireNotNull(findPreference(keyPreference))
|
val button: Preference = requireNotNull(findPreference(keyPreference))
|
||||||
|
|
||||||
button.onPreferenceClickListener = Preference.OnPreferenceClickListener {
|
button.onPreferenceClickListener = Preference.OnPreferenceClickListener {
|
||||||
requireContext().alert(
|
AlertDialog.Builder(requireContext()).apply {
|
||||||
R.string.confirm_clear_permissions_site,
|
setMessage(R.string.confirm_clear_permissions_site)
|
||||||
R.string.clear_permissions
|
setTitle(R.string.clear_permissions)
|
||||||
) {
|
setPositiveButton(android.R.string.yes) { dialog: DialogInterface, _ ->
|
||||||
yesButton {
|
|
||||||
clearSitePermissions()
|
clearSitePermissions()
|
||||||
|
dialog.dismiss()
|
||||||
|
}
|
||||||
|
setNegativeButton(android.R.string.no) { dialog: DialogInterface, _ ->
|
||||||
|
dialog.cancel()
|
||||||
}
|
}
|
||||||
noButton { }
|
|
||||||
}.show()
|
}.show()
|
||||||
|
|
||||||
true
|
true
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
|
|
||||||
package org.mozilla.fenix.settings.sitepermissions
|
package org.mozilla.fenix.settings.sitepermissions
|
||||||
|
|
||||||
|
import android.content.DialogInterface
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.LayoutInflater
|
import android.view.LayoutInflater
|
||||||
import android.view.View
|
import android.view.View
|
||||||
|
@ -13,6 +14,7 @@ import android.view.ViewGroup
|
||||||
import android.widget.Button
|
import android.widget.Button
|
||||||
import android.widget.ImageView
|
import android.widget.ImageView
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
|
import androidx.appcompat.app.AlertDialog
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.fragment.app.Fragment
|
import androidx.fragment.app.Fragment
|
||||||
import androidx.lifecycle.Observer
|
import androidx.lifecycle.Observer
|
||||||
|
@ -27,9 +29,6 @@ import kotlinx.coroutines.Dispatchers.IO
|
||||||
import kotlinx.coroutines.Dispatchers.Main
|
import kotlinx.coroutines.Dispatchers.Main
|
||||||
import kotlinx.coroutines.launch
|
import kotlinx.coroutines.launch
|
||||||
import mozilla.components.feature.sitepermissions.SitePermissions
|
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.R
|
||||||
import org.mozilla.fenix.ext.components
|
import org.mozilla.fenix.ext.components
|
||||||
import org.mozilla.fenix.ext.loadIntoView
|
import org.mozilla.fenix.ext.loadIntoView
|
||||||
|
@ -94,14 +93,16 @@ class SitePermissionsExceptionsFragment :
|
||||||
private fun bindClearButton(rootView: View) {
|
private fun bindClearButton(rootView: View) {
|
||||||
clearButton = rootView.findViewById(R.id.delete_all_site_permissions_button)
|
clearButton = rootView.findViewById(R.id.delete_all_site_permissions_button)
|
||||||
clearButton.setOnClickListener {
|
clearButton.setOnClickListener {
|
||||||
requireContext().alert(
|
AlertDialog.Builder(requireContext()).apply {
|
||||||
R.string.confirm_clear_permissions_on_all_sites,
|
setMessage(R.string.confirm_clear_permissions_on_all_sites)
|
||||||
R.string.clear_permissions
|
setTitle(R.string.clear_permissions)
|
||||||
) {
|
setPositiveButton(android.R.string.yes) { dialog: DialogInterface, _ ->
|
||||||
yesButton {
|
|
||||||
deleteAllSitePermissions()
|
deleteAllSitePermissions()
|
||||||
|
dialog.dismiss()
|
||||||
|
}
|
||||||
|
setNegativeButton(android.R.string.no) { dialog: DialogInterface, _ ->
|
||||||
|
dialog.cancel()
|
||||||
}
|
}
|
||||||
noButton { }
|
|
||||||
}.show()
|
}.show()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -4,6 +4,7 @@
|
||||||
|
|
||||||
package org.mozilla.fenix.settings.sitepermissions
|
package org.mozilla.fenix.settings.sitepermissions
|
||||||
|
|
||||||
|
import android.content.DialogInterface
|
||||||
import android.content.Intent
|
import android.content.Intent
|
||||||
import android.net.Uri
|
import android.net.Uri
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
|
@ -13,6 +14,7 @@ import android.view.View
|
||||||
import android.view.ViewGroup
|
import android.view.ViewGroup
|
||||||
import android.widget.Button
|
import android.widget.Button
|
||||||
import android.widget.RadioButton
|
import android.widget.RadioButton
|
||||||
|
import androidx.appcompat.app.AlertDialog
|
||||||
import androidx.appcompat.app.AppCompatActivity
|
import androidx.appcompat.app.AppCompatActivity
|
||||||
import androidx.fragment.app.Fragment
|
import androidx.fragment.app.Fragment
|
||||||
import androidx.lifecycle.lifecycleScope
|
import androidx.lifecycle.lifecycleScope
|
||||||
|
@ -21,9 +23,6 @@ import kotlinx.coroutines.launch
|
||||||
import mozilla.components.feature.sitepermissions.SitePermissions
|
import mozilla.components.feature.sitepermissions.SitePermissions
|
||||||
import mozilla.components.feature.sitepermissions.SitePermissions.Status.ALLOWED
|
import mozilla.components.feature.sitepermissions.SitePermissions.Status.ALLOWED
|
||||||
import mozilla.components.feature.sitepermissions.SitePermissions.Status.BLOCKED
|
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.R
|
||||||
import org.mozilla.fenix.ext.requireComponents
|
import org.mozilla.fenix.ext.requireComponents
|
||||||
import org.mozilla.fenix.ext.settings
|
import org.mozilla.fenix.ext.settings
|
||||||
|
@ -107,17 +106,18 @@ class SitePermissionsManageExceptionsPhoneFeatureFragment : Fragment() {
|
||||||
val button = rootView.findViewById<Button>(R.id.reset_permission)
|
val button = rootView.findViewById<Button>(R.id.reset_permission)
|
||||||
button.setText(R.string.clear_permission)
|
button.setText(R.string.clear_permission)
|
||||||
button.setOnClickListener {
|
button.setOnClickListener {
|
||||||
|
AlertDialog.Builder(requireContext()).apply {
|
||||||
requireContext().alert(
|
setMessage(R.string.confirm_clear_permission_site)
|
||||||
R.string.confirm_clear_permission_site,
|
setTitle(R.string.clear_permission)
|
||||||
R.string.clear_permission
|
setPositiveButton(android.R.string.yes) { dialog: DialogInterface, _ ->
|
||||||
) {
|
|
||||||
yesButton {
|
|
||||||
val defaultStatus = phoneFeature.getStatus(settings = settings)
|
val defaultStatus = phoneFeature.getStatus(settings = settings)
|
||||||
updatedSitePermissions(defaultStatus)
|
updatedSitePermissions(defaultStatus)
|
||||||
resetRadioButtonsStatus(defaultStatus)
|
resetRadioButtonsStatus(defaultStatus)
|
||||||
|
dialog.dismiss()
|
||||||
|
}
|
||||||
|
setNegativeButton(android.R.string.no) { dialog: DialogInterface, _ ->
|
||||||
|
dialog.cancel()
|
||||||
}
|
}
|
||||||
noButton { }
|
|
||||||
}.show()
|
}.show()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue