11package top .trumeet .mipush .settings ;
22
33import android .app .AlertDialog ;
4+ import android .content .ComponentName ;
45import android .content .SharedPreferences ;
56import android .os .Build ;
67import android .os .Bundle ;
1516import androidx .annotation .NonNull ;
1617import androidx .annotation .Nullable ;
1718
19+ import org .meowcat .xposed .mipush .BuildConfig ;
1820import org .meowcat .xposed .mipush .R ;
1921import org .meowcat .xposed .mipush .Utils ;
2022
3133import moe .shizuku .preference .MultiSelectListPreference ;
3234import moe .shizuku .preference .Preference ;
3335import moe .shizuku .preference .SimpleMenuPreference ;
36+ import moe .shizuku .preference .SwitchPreference ;
3437import top .trumeet .mipush .settings .ini .IniConf ;
3538import top .trumeet .mipush .settings .ini .IniConstants ;
3639import top .trumeet .mipush .settings .ini .IniUtils ;
3740
3841import static org .meowcat .xposed .mipush .Constants .TAG ;
42+ import static org .meowcat .xposed .mipush .Utils .hideIcon ;
3943
4044public class PreferenceFragment extends moe .shizuku .preference .PreferenceFragment implements
4145 SharedPreferences .OnSharedPreferenceChangeListener {
@@ -54,13 +58,17 @@ public void onCreate(Bundle savedInstanceState) {
5458 throw new RuntimeException (e );
5559 }
5660 render ();
61+
62+ SwitchPreference hide_icon = (SwitchPreference ) findPreference ("hide_icon" );
63+ hide_icon .setChecked (mConf .get (IniUtils .convertKeyToIni ("hide_icon" ), "false" ).equalsIgnoreCase ("true" ));
5764 }
5865 }
5966
6067 @ Override
6168 public void onCreatePreferences (Bundle savedInstanceState , String rootKey ) {
6269 getPreferenceManager ().setSharedPreferencesName ("settings" );
6370 addPreferencesFromResource (R .xml .preferences );
71+
6472 Preference device_status = findPreference ("device_status" );
6573 String status = Utils .isEnhancementEnabled () ? getString (R .string .pref_enhancement_status_success ) : getString (R .string .pref_enhancement_status_failed );
6674 status = String .format ("%s\n \n %s" , status , String .format (getString (R .string .pref_enhancement_status_summary ), Build .MANUFACTURER , SystemProperties .get ("ro.product.manufacturer" , "failed" ), SystemProperties .get ("ro.product.vendor.manufacturer" , "failed" ), Build .BRAND , SystemProperties .get ("ro.product.brand" , "failed" ), SystemProperties .get ("ro.product.vendor.brand" , "failed" ), SystemProperties .get ("ro.miui.ui.version.name" , "failed" ), SystemProperties .get ("ro.miui.ui.version.code" , "failed" ), SystemProperties .get ("ro.miui.version.code_time" , "failed" )));
@@ -111,6 +119,10 @@ public void onSharedPreferenceChanged(SharedPreferences sharedPreferences, Strin
111119 Log .d (TAG , "onSharedPreferenceChanged(): " + key );
112120 if (key .equals ("module_blacklist" ) || key .equals ("module_whitelist" )) {
113121 mConf .putAll (IniUtils .convertKeyToIni (key ), new ArrayList <>(Objects .requireNonNull (sharedPreferences .getStringSet (key , Collections .emptySet ()))));
122+ } else if (key .equals ("hide_icon" )) {
123+ boolean isChecked = sharedPreferences .getBoolean (key , false );
124+ mConf .put (IniUtils .convertKeyToIni (key ), isChecked ? "true" : "false" );
125+ hideIcon (requireContext ().getPackageManager (), new ComponentName (requireContext (), PreferenceActivity .class .getName ()), isChecked );
114126 } else {
115127 mConf .put (IniUtils .convertKeyToIni (key ), sharedPreferences .getString (key , null ));
116128 }
0 commit comments