1
0
Fork 0

FNX-14546 ⁃ For #13096: Add notifications pref in top level settings (#13366)

* Add notifications pref in top level settings to route to Android app and notification settings

* Make pref visible on Oreo and higher

* Only show notifications pref when Oreo and above
master
Elise Richards 2020-08-19 13:24:48 -05:00 committed by GitHub
parent f83372b67c
commit 2e62dd5c87
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
5 changed files with 20 additions and 0 deletions

View File

@ -270,6 +270,13 @@ class SettingsFragment : PreferenceFragmentCompat() {
resources.getString(R.string.pref_key_delete_browsing_data_on_quit_preference) -> {
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)
}
null
}
resources.getString(R.string.pref_key_customize) -> {
SettingsFragmentDirections.actionSettingsFragmentToCustomizationFragment()
}
@ -352,6 +359,10 @@ 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 {

View File

@ -279,6 +279,7 @@ class Settings(private val appContext: Context) : PreferencesHolder {
!trackingProtectionOnboardingShownThisSession)
var showSecretDebugMenuThisSession = false
var showNotificationsSetting = Build.VERSION.SDK_INT >= Build.VERSION_CODES.O
val shouldShowSecurityPinWarningSync: Boolean
get() = loginsSecureWarningSyncCount < showLoginsSecureWarningSyncMaxCount

View File

@ -20,6 +20,7 @@
<string name="pref_key_privacy_link" translatable="false">pref_key_privacy_link</string>
<string name="pref_key_delete_browsing_data" translatable="false">pref_key_delete_browsing_data</string>
<string name="pref_key_delete_browsing_data_on_quit_preference" translatable="false">pref_key_delete_browsing_data_on_quit_preference</string>
<string name="pref_key_notifications" translatable="false">pref_key_notifications</string>
<string name="pref_key_delete_browsing_data_on_quit" translatable="false">pref_key_delete_browsing_data_on_quit</string>
<string name="pref_key_delete_open_tabs_on_quit" translatable="false">pref_key_delete_open_tabs_on_quit</string>
<string name="pref_key_delete_browsing_history_on_quit" translatable="false">pref_key_delete_browsing_history_on_quit</string>

View File

@ -300,6 +300,8 @@
<string name="preferences_external_download_manager">External download manager</string>
<!-- Preference for add_ons -->
<string name="preferences_addons">Add-ons</string>
<!-- Preference for notifications -->
<string name="preferences_notifications">Notifications</string>
<!-- Account Preferences -->
<!-- Preference for triggering sync -->

View File

@ -109,6 +109,11 @@
android:key="@string/pref_key_delete_browsing_data_on_quit_preference"
android:title="@string/preferences_delete_browsing_data_on_quit" />
<androidx.preference.Preference
android:icon="@drawable/ic_notifications"
android:key="@string/pref_key_notifications"
android:title="@string/preferences_notifications" />
<androidx.preference.Preference
android:icon="@drawable/ic_data_collection"
android:key="@string/pref_key_data_choices"