parent
61cb052156
commit
ea688cce09
|
@ -6,6 +6,9 @@ package org.mozilla.fenix.ext
|
|||
|
||||
import android.app.Activity
|
||||
import android.content.Context
|
||||
import android.content.Intent
|
||||
import android.os.Build
|
||||
import android.provider.Settings
|
||||
import android.view.ContextThemeWrapper
|
||||
import android.view.View
|
||||
import android.view.ViewGroup
|
||||
|
@ -89,3 +92,21 @@ fun Context.getStringWithArgSafe(@StringRes resId: Int, formatArg: String): Stri
|
|||
*/
|
||||
val Context.accessibilityManager: AccessibilityManager get() =
|
||||
getSystemService(Context.ACCESSIBILITY_SERVICE) as AccessibilityManager
|
||||
|
||||
/**
|
||||
* Used to navigate to system notifications settings for app
|
||||
*/
|
||||
fun Context.navigateToNotificationsSettings() {
|
||||
val intent = Intent()
|
||||
intent.let {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
||||
it.action = Settings.ACTION_APP_NOTIFICATION_SETTINGS
|
||||
it.putExtra(Settings.EXTRA_APP_PACKAGE, this.packageName)
|
||||
} else {
|
||||
it.action = "android.settings.APP_NOTIFICATION_SETTINGS"
|
||||
it.putExtra("app_package", this.packageName)
|
||||
it.putExtra("app_uid", this.applicationInfo.uid)
|
||||
}
|
||||
}
|
||||
startActivity(intent)
|
||||
}
|
||||
|
|
|
@ -36,6 +36,7 @@ import org.mozilla.fenix.ext.application
|
|||
import org.mozilla.fenix.ext.components
|
||||
import org.mozilla.fenix.ext.getPreferenceKey
|
||||
import org.mozilla.fenix.ext.metrics
|
||||
import org.mozilla.fenix.ext.navigateToNotificationsSettings
|
||||
import org.mozilla.fenix.ext.requireComponents
|
||||
import org.mozilla.fenix.ext.settings
|
||||
import org.mozilla.fenix.ext.showToolbar
|
||||
|
@ -271,10 +272,7 @@ class SettingsFragment : PreferenceFragmentCompat() {
|
|||
SettingsFragmentDirections.actionSettingsFragmentToDeleteBrowsingDataOnQuitFragment()
|
||||
}
|
||||
resources.getString(R.string.pref_key_notifications) -> {
|
||||
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
|
||||
val intent = Intent(Settings.ACTION_APP_NOTIFICATION_SETTINGS)
|
||||
startActivity(intent)
|
||||
}
|
||||
context?.navigateToNotificationsSettings()
|
||||
null
|
||||
}
|
||||
resources.getString(R.string.pref_key_customize) -> {
|
||||
|
@ -359,10 +357,6 @@ class SettingsFragment : PreferenceFragmentCompat() {
|
|||
findPreference<Preference>(
|
||||
getPreferenceKey(R.string.pref_key_debug_settings)
|
||||
)?.isVisible = requireContext().settings().showSecretDebugMenuThisSession
|
||||
|
||||
findPreference<Preference>(
|
||||
getPreferenceKey(R.string.pref_key_notifications)
|
||||
)?.isVisible = requireContext().settings().showNotificationsSetting
|
||||
}
|
||||
|
||||
private fun getClickListenerForMakeDefaultBrowser(): Preference.OnPreferenceClickListener {
|
||||
|
|
Loading…
Reference in New Issue