@ -123,6 +123,20 @@ public class SettingsActivity extends FoxActivity implements LanguageActivity {
return true ;
} ) ;
ListPreference themePreference = findPreference ( "pref_theme" ) ;
// If transparent theme(s) are set, disable monet
if ( themePreference . getValue ( ) . equals ( "transparent_light" ) ) {
if ( BuildConfig . DEBUG ) {
Log . d ( TAG , "Transparent theme is set, disabling monet" ) ;
}
findPreference ( "pref_enable_monet" ) . setEnabled ( false ) ;
// Toggle monet off
( ( TwoStatePreference ) findPreference ( "pref_enable_monet" ) ) . setChecked ( false ) ;
SharedPreferences . Editor editor =
getPreferenceManager ( ) . getSharedPreferences ( ) . edit ( ) ;
editor . putBoolean ( "pref_enable_monet" , false ) . apply ( ) ;
// Set summary
findPreference ( "pref_enable_monet" ) . setSummary ( R . string . monet_disabled_summary ) ;
}
themePreference . setSummaryProvider ( p - > themePreference . getEntry ( ) ) ;
themePreference . setOnPreferenceClickListener ( p - > {
// You need to reboot your device at least once to be able to access dev-mode
@ -130,6 +144,26 @@ public class SettingsActivity extends FoxActivity implements LanguageActivity {
return false ;
} ) ;
themePreference . setOnPreferenceChangeListener ( ( preference , newValue ) - > {
if ( BuildConfig . DEBUG ) {
Log . d ( TAG , "Theme changed, refreshing activity. New value: " + newValue ) ;
}
// Immediately save
SharedPreferences . Editor editor =
getPreferenceManager ( ) . getSharedPreferences ( ) . edit ( ) ;
editor . putString ( "pref_theme" , ( String ) newValue ) . apply ( ) ;
// If theme contains "transparent" then disable monet
if ( newValue . toString ( ) . contains ( "transparent" ) ) {
if ( BuildConfig . DEBUG ) {
Log . d ( TAG , "Transparent theme is being set, disabling monet" ) ;
}
findPreference ( "pref_enable_monet" ) . setEnabled ( false ) ;
( ( TwoStatePreference ) findPreference ( "pref_enable_monet" ) ) . setChecked ( false ) ;
editor . putBoolean ( "pref_enable_monet" , false ) . apply ( ) ;
findPreference ( "pref_enable_monet" ) . setSummary ( R . string . monet_disabled_summary ) ;
} else {
findPreference ( "pref_enable_monet" ) . setEnabled ( true ) ;
findPreference ( "pref_enable_monet" ) . setSummary ( null ) ;
}
devModeStep = 0 ;
UiThreadHandler . handler . postDelayed ( ( ) - > {
MainApplication . getINSTANCE ( ) . updateTheme ( ) ;