diff --git a/app/build.gradle b/app/build.gradle index f547474c5d..df370c5df8 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -140,6 +140,8 @@ android { } dependencies { + implementation project(':common:ui') + compileOnly(project(":hidden-api")) compileOnly files('libs/miui.jar') @@ -155,29 +157,5 @@ dependencies { implementation libs.gson implementation libs.commons.codec - implementation libs.core - implementation libs.collection - implementation libs.recyclerview - implementation libs.fragment - implementation libs.lifecycle.common - implementation libs.vectordrawable - implementation libs.vectordrawable.animated - implementation libs.customview - implementation libs.customview.poolingcontainer - implementation (libs.constraintlayout) { - exclude group: 'androidx.appcompat', module: 'appcompat' - } - - implementation files(roots.animation) - implementation files(roots.appcompat) - implementation files(roots.core) - implementation files(roots.haptic) - implementation files(roots.preference) - implementation files(roots.smooth) - implementation files(roots.springback) - implementation files(roots.external) - implementation files(roots.graphics) - implementation files(roots.os) - implementation files("libs/hyperceiler_expansion_packs-debug.aar") } diff --git a/app/libs/animation-release.aar b/app/libs/animation-release.aar deleted file mode 100644 index 1f6de7a405..0000000000 Binary files a/app/libs/animation-release.aar and /dev/null differ diff --git a/app/libs/appcompat-release.aar b/app/libs/appcompat-release.aar deleted file mode 100644 index a42ffd6cf6..0000000000 Binary files a/app/libs/appcompat-release.aar and /dev/null differ diff --git a/app/libs/core-release.aar b/app/libs/core-release.aar deleted file mode 100644 index 19a911efaa..0000000000 Binary files a/app/libs/core-release.aar and /dev/null differ diff --git a/app/libs/external-release.aar b/app/libs/external-release.aar deleted file mode 100644 index bde8c5f0d5..0000000000 Binary files a/app/libs/external-release.aar and /dev/null differ diff --git a/app/libs/graphics-release.aar b/app/libs/graphics-release.aar deleted file mode 100644 index f32ea6ae3f..0000000000 Binary files a/app/libs/graphics-release.aar and /dev/null differ diff --git a/app/libs/haptic-release.aar b/app/libs/haptic-release.aar deleted file mode 100644 index 004b29f564..0000000000 Binary files a/app/libs/haptic-release.aar and /dev/null differ diff --git a/app/libs/navigator-release.aar b/app/libs/navigator-release.aar deleted file mode 100644 index 3cb9cff3a1..0000000000 Binary files a/app/libs/navigator-release.aar and /dev/null differ diff --git a/app/libs/os-release.aar b/app/libs/os-release.aar deleted file mode 100644 index e28ea4a2ea..0000000000 Binary files a/app/libs/os-release.aar and /dev/null differ diff --git a/app/libs/preference-release.aar b/app/libs/preference-release.aar deleted file mode 100644 index 31651f572a..0000000000 Binary files a/app/libs/preference-release.aar and /dev/null differ diff --git a/app/libs/smooth-release.aar b/app/libs/smooth-release.aar deleted file mode 100644 index 81f9fa12ff..0000000000 Binary files a/app/libs/smooth-release.aar and /dev/null differ diff --git a/app/libs/springback-release.aar b/app/libs/springback-release.aar deleted file mode 100644 index 0a3edd32b3..0000000000 Binary files a/app/libs/springback-release.aar and /dev/null differ diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index a3fc0c81a0..076733df40 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -71,14 +71,6 @@ - DialogHelper.showRestartDialog(this));*/ } + @Override - public boolean onPreferenceStartFragment(@NonNull PreferenceFragmentCompat preferenceFragmentCompat, @NonNull Preference preference) { + public boolean onPreferenceStartFragment(@NonNull PreferenceFragmentCompat preferenceFragment, @NonNull Preference preference) { mProxy.onStartSettingsForArguments(SubSettings.class, preference, false); return true; } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/base/BaseActivity.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/SettingsActivity.java similarity index 61% rename from app/src/main/java/com/sevtinge/hyperceiler/ui/base/BaseActivity.java rename to app/src/main/java/com/sevtinge/hyperceiler/ui/SettingsActivity.java index caf7e1ecd7..c7f9cec7bc 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/base/BaseActivity.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/SettingsActivity.java @@ -16,7 +16,7 @@ * Copyright (C) 2023-2024 HyperCeiler Contributions */ -package com.sevtinge.hyperceiler.ui.base; +package com.sevtinge.hyperceiler.ui; import android.app.backup.BackupManager; import android.content.SharedPreferences; @@ -24,64 +24,74 @@ import android.os.Bundle; import android.os.FileObserver; import android.util.Log; -import android.view.View; -import android.widget.ImageView; -import androidx.annotation.DrawableRes; -import androidx.annotation.Nullable; -import androidx.fragment.app.Fragment; +import androidx.annotation.NonNull; -import com.sevtinge.hyperceiler.R; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.provider.SharedPrefsProvider; +import com.sevtinge.hyperceiler.ui.fragment.framework.OtherSettings; +import com.sevtinge.hyperceiler.ui.fragment.home.HomeDockSettings; +import com.sevtinge.hyperceiler.ui.fragment.home.HomeFolderSettings; +import com.sevtinge.hyperceiler.ui.fragment.home.HomeGestureSettings; +import com.sevtinge.hyperceiler.ui.fragment.sub.MultiActionSettings; +import com.sevtinge.hyperceiler.ui.fragment.various.AlertDialogSettings; import com.sevtinge.hyperceiler.utils.Helpers; import com.sevtinge.hyperceiler.utils.PrefsUtils; import java.util.Set; -import fan.appcompat.app.AppCompatActivity; +import fan.preference.Preference; +import fan.preference.PreferenceFragment; +import fan.preference.core.PreferenceFragmentCompat; -public abstract class BaseActivity extends AppCompatActivity { +public abstract class SettingsActivity extends BaseSettingsActivity implements PreferenceFragment.OnPreferenceStartFragmentCallback { - protected BaseSettingsProxy mProxy; + SharedPreferences.OnSharedPreferenceChangeListener mSharedPreferenceChangeListener = (sharedPreferences, s) -> { + Log.i("prefs", "Changed: " + s); + requestBackup(); + Object val = sharedPreferences.getAll().get(s); + String path = ""; + if (val instanceof String) + path = "string/"; + else if (val instanceof Set) + path = "stringset/"; + else if (val instanceof Integer) + path = "integer/"; + else if (val instanceof Boolean) + path = "boolean/"; + getContentResolver().notifyChange(Uri.parse("content://" + SharedPrefsProvider.AUTHORITY + "/" + path + s), null); + if (!path.equals("")) getContentResolver().notifyChange(Uri.parse("content://" + SharedPrefsProvider.AUTHORITY + "/pref/" + path + s), null); + }; @Override - public void onCreate(@Nullable Bundle savedInstanceState) { - mProxy = new SettingsProxy(this); + public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - initActionBar(); registerObserver(); + initCreate(); + initActionBar(); } - public void setFragment(Fragment fragment) { - getSupportFragmentManager() - .beginTransaction() - .replace(R.id.frame_content, fragment) - .commit(); - } + public void initCreate() {} - protected void initActionBar() { - hideActionBar(); - /*setDisplayHomeAsUpEnabled(!(this instanceof NavigationActivity));*/ + public void initActionBar() { + getAppCompatActionBar().setDisplayHomeAsUpEnabled(!(this instanceof HyperCeilerTabActivity)); } - protected void hideActionBar() { - getAppCompatActionBar().hide(); + public void onStartSettingsForArguments(Preference preference, boolean isBundleEnable) { + mProxy.onStartSettingsForArguments(SubSettings.class, preference, isBundleEnable); } - /*public void setActionBarEndView(View view) { - getAppCompatActionBar().setEndView(view); - }*/ - - /*public void setActionBarEndIcon(@DrawableRes int resId, View.OnClickListener listener) { - ImageView mRestartView = new ImageView(this); - mRestartView.setImageResource(resId); - mRestartView.setOnClickListener(listener); - setActionBarEndView(mRestartView); - }*/ - - /*public void setRestartView(View.OnClickListener listener) { - if (listener != null) setActionBarEndIcon(R.drawable.ic_reboot_small, listener); - }*/ + @Override + public boolean onPreferenceStartFragment(@NonNull PreferenceFragmentCompat preferenceFragment, @NonNull Preference preference) { + boolean isBundleEnable = preferenceFragment instanceof OtherSettings || + preferenceFragment instanceof HomeDockSettings || + preferenceFragment instanceof HomeFolderSettings || + preferenceFragment instanceof AlertDialogSettings || + preferenceFragment instanceof HomeGestureSettings || + preferenceFragment instanceof MultiActionSettings; + onStartSettingsForArguments(preference, isBundleEnable); + return true; + } private void registerObserver() { PrefsUtils.mSharedPreferences.registerOnSharedPreferenceChangeListener(mSharedPreferenceChangeListener); @@ -89,23 +99,6 @@ private void registerObserver() { registerFileObserver(); } - SharedPreferences.OnSharedPreferenceChangeListener mSharedPreferenceChangeListener = (sharedPreferences, s) -> { - Log.i("prefs", "Changed: " + s); - requestBackup(); - Object val = sharedPreferences.getAll().get(s); - String path = ""; - if (val instanceof String) - path = "string/"; - else if (val instanceof Set) - path = "stringset/"; - else if (val instanceof Integer) - path = "integer/"; - else if (val instanceof Boolean) - path = "boolean/"; - getContentResolver().notifyChange(Uri.parse("content://" + SharedPrefsProvider.AUTHORITY + "/" + path + s), null); - if (!path.equals("")) getContentResolver().notifyChange(Uri.parse("content://" + SharedPrefsProvider.AUTHORITY + "/pref/" + path + s), null); - }; - private void registerFileObserver() { try { FileObserver mFileObserver = new FileObserver(PrefsUtils.getSharedPrefsPath(), FileObserver.CLOSE_WRITE) { diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/SubPickerActivity.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/SubPickerActivity.java index 77d79a330a..7748a1c37c 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/SubPickerActivity.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/SubPickerActivity.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -19,10 +19,8 @@ package com.sevtinge.hyperceiler.ui; import android.content.Intent; -import android.os.Bundle; import com.sevtinge.hyperceiler.callback.IAppSelectCallback; -import com.sevtinge.hyperceiler.ui.base.SettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.sub.AppPicker; public class SubPickerActivity extends SettingsActivity { diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/SubSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/SubSettings.java index 289d47e6d6..55ccf15f2d 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/SubSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/SubSettings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -18,6 +18,4 @@ */ package com.sevtinge.hyperceiler.ui; -import com.sevtinge.hyperceiler.ui.base.SettingsActivity; - public class SubSettings extends SettingsActivity {} diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/base/BaseSettingsActivity.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/base/BaseSettingsActivity.java deleted file mode 100644 index b85eb4f521..0000000000 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/base/BaseSettingsActivity.java +++ /dev/null @@ -1,143 +0,0 @@ -/* - * This file is part of HyperCeiler. - - * HyperCeiler is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - - * Copyright (C) 2023-2024 HyperCeiler Contributions -*/ -package com.sevtinge.hyperceiler.ui.base; - -import android.content.Intent; -import android.os.Bundle; -import android.text.TextUtils; - -import androidx.fragment.app.Fragment; - -import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.utils.ShellUtils; -import com.sevtinge.hyperceiler.utils.log.AndroidLogUtils; - -import fan.appcompat.app.AlertDialog; - -public abstract class BaseSettingsActivity extends BaseActivity { - - private String initialFragmentName; - public Fragment mFragment; - - @Override - public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - Intent intent = getIntent(); - initialFragmentName = mProxy.getInitialFragmentName(intent); - if (TextUtils.isEmpty(initialFragmentName)) { - initialFragmentName = intent.getStringExtra(":android:show_fragment"); - } - createUiFromIntent(savedInstanceState, intent); - } - - protected void createUiFromIntent(Bundle savedInstanceState, Intent intent) { - mProxy.setupContentView(); - Fragment targetFragment = mProxy.getTargetFragment(this, initialFragmentName, savedInstanceState); - if (targetFragment != null) { - targetFragment.setArguments(mProxy.getArguments(intent)); - setFragment(targetFragment); - } - } - - public void showRestartSystemDialog() { - showRestartDialog(true, "", new String[]{""}); - } - - public void showRestartDialog(String appLabel, String packageName) { - showRestartDialog(false, appLabel, new String[]{packageName}); - } - - public void showRestartDialog(String appLabel, String[] packageName) { - showRestartDialog(false, appLabel, packageName); - } - - public void showRestartDialog(boolean isRestartSystem, String appLabel, String[] packageName) { - String isSystem = getResources().getString(R.string.restart_app_desc, appLabel); - String isOther = getResources().getString(R.string.restart_app_desc, " " + appLabel + " "); - - new AlertDialog.Builder(this) - .setCancelable(false) - .setTitle(getResources().getString(R.string.soft_reboot) + " " + appLabel) - .setMessage(isRestartSystem ? isSystem : isOther) - .setHapticFeedbackEnabled(true) - .setPositiveButton(android.R.string.ok, (dialog, which) -> doRestart(packageName, isRestartSystem)) - .setNegativeButton(android.R.string.cancel, null) - .show(); - } - - public void setFragment(Fragment fragment) { - mFragment = fragment; - getSupportFragmentManager() - .beginTransaction() - .replace(R.id.frame_content, fragment) - .commit(); - } - - public Fragment getFragment() { - return mFragment; - } - - public void doRestart(String[] packageName, boolean isRestartSystem) { - boolean result = false; - boolean pid = true; - if (isRestartSystem) { - result = ShellUtils.getResultBoolean("reboot", true); - } else { - if (packageName != null) { - for (String packageGet : packageName) { - if (packageGet == null) { - continue; - } - // String test = "XX"; - // ShellUtils.CommandResult commandResult = ShellUtils.execCommand("{ [[ $(pgrep -f '" + packageGet + - // "' | grep -v $$) != \"\" ]] && { pkill -l 9 -f \"" + packageGet + - // "\"; }; } || { echo \"kill error\"; }", true, true); - ShellUtils.CommandResult commandResult = - ShellUtils.execCommand("{ pid=$(pgrep -f '" + packageGet + "' | grep -v $$);" + - " [[ $pid != \"\" ]] && { pkill -l 9 -f \"" + packageGet + "\";" + - " { [[ $? != 0 ]] && { killall -s 9 \"" + packageGet + "\" &>/dev/null;};}" + - " || { { for i in $pid; do kill -s 9 \"$i\" &>/dev/null;done;};}" + - " || { echo \"kill error\";};};}" + - " || { echo \"kill error\";}", - true, true); - if (commandResult.result == 0) { - if (commandResult.successMsg.equals("kill error")) { - pid = false; - } else result = true; - } else - AndroidLogUtils.LogE("doRestart: ", "result: " + commandResult.result + - " errorMsg: " + commandResult.errorMsg + " package: " + packageGet, null); - } - } else { - AndroidLogUtils.LogE("doRestart: ", "packageName is null", null); - } - // result = ShellUtils.getResultBoolean("pkill -l 9 -f " + packageName, true); - } - if (!result) { - new AlertDialog.Builder(this) - .setCancelable(false) - .setTitle(R.string.tip) - .setMessage(isRestartSystem ? R.string.reboot_failed : - pid ? R.string.kill_failed : R.string.pid_failed) - .setHapticFeedbackEnabled(true) - .setPositiveButton(android.R.string.ok, null) - .show(); - } - } -} diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/base/SettingsActivity.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/base/SettingsActivity.java deleted file mode 100644 index 85a8b3a7b3..0000000000 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/base/SettingsActivity.java +++ /dev/null @@ -1,76 +0,0 @@ -/* - * This file is part of HyperCeiler. - - * HyperCeiler is free software: you can redistribute it and/or modify - * it under the terms of the GNU Affero General Public License as - * published by the Free Software Foundation, either version 3 of the - * License. - - * This program is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU Affero General Public License for more details. - - * You should have received a copy of the GNU Affero General Public License - * along with this program. If not, see . - - * Copyright (C) 2023-2024 HyperCeiler Contributions -*/ -package com.sevtinge.hyperceiler.ui.base; - -import android.os.Bundle; - -import androidx.annotation.NonNull; - -import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.SubSettings; -import com.sevtinge.hyperceiler.ui.fragment.framework.OtherSettings; -import com.sevtinge.hyperceiler.ui.fragment.home.HomeDockSettings; -import com.sevtinge.hyperceiler.ui.fragment.home.HomeFolderSettings; -import com.sevtinge.hyperceiler.ui.fragment.home.HomeGestureSettings; -import com.sevtinge.hyperceiler.ui.fragment.sub.MultiActionSettings; -import com.sevtinge.hyperceiler.ui.fragment.various.AlertDialogSettings; - -import fan.preference.Preference; -import fan.preference.internal.compat.PreferenceFragmentCompat2; - -public abstract class SettingsActivity extends BaseSettingsActivity implements fan.preference.PreferenceFragmentCompat.OnPreferenceStartFragmentCallback { - - @Override - public void onCreate(Bundle savedInstanceState) { - super.onCreate(savedInstanceState); - initCreate(); - } - - public void initCreate() {} - - public void onStartSettingsForArguments(Preference preference, boolean isBundleEnable) { - mProxy.onStartSettingsForArguments(SubSettings.class, preference, isBundleEnable); - } - - @Override - public boolean onPreferenceStartFragment(@NonNull PreferenceFragmentCompat2 preferenceFragmentCompat, @NonNull Preference preference) { - boolean isBundleEnable = preferenceFragmentCompat instanceof OtherSettings || - preferenceFragmentCompat instanceof HomeDockSettings || - preferenceFragmentCompat instanceof HomeFolderSettings || - preferenceFragmentCompat instanceof AlertDialogSettings || - preferenceFragmentCompat instanceof HomeGestureSettings || - preferenceFragmentCompat instanceof MultiActionSettings; - onStartSettingsForArguments(preference, isBundleEnable); - return true; - } - - - - /*@Override - public boolean onPreferenceStartFragment(@NonNull PreferenceFragmentCompat preferenceFragmentCompat, @NonNull Preference preference) { - boolean isBundleEnable = preferenceFragmentCompat instanceof OtherSettings || - preferenceFragmentCompat instanceof HomeDockSettings || - preferenceFragmentCompat instanceof HomeFolderSettings || - preferenceFragmentCompat instanceof AlertDialogSettings || - preferenceFragmentCompat instanceof HomeGestureSettings || - preferenceFragmentCompat instanceof MultiActionSettings; - onStartSettingsForArguments(preference, isBundleEnable); - return true; - }*/ -} diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/customhook/CustomHookConfigActivity.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/customhook/CustomHookConfigActivity.java index 782353a09f..a45dd08cc7 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/customhook/CustomHookConfigActivity.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/customhook/CustomHookConfigActivity.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -18,10 +18,8 @@ */ package com.sevtinge.hyperceiler.ui.customhook; -import android.os.Bundle; - import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.SettingsActivity; +import com.sevtinge.hyperceiler.ui.SettingsActivity; public class CustomHookConfigActivity extends SettingsActivity { diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/AiAsstFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/AiAsstFragment.java index a757d267f5..39da454110 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/AiAsstFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/AiAsstFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -20,21 +20,14 @@ import android.view.View; +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +@FragmentTag(resId = R.string.aiasst, pkg = "com.xiaomi.aiasst.vision") public class AiAsstFragment extends SettingsPreferenceFragment { @Override public int getContentResId() { return R.xml.aiasst; } - - @Override - public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( - getResources().getString(R.string.aiasst), - "com.xiaomi.aiasst.vision" - ); - } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/AodFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/AodFragment.java index f74056e918..de215cf336 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/AodFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/AodFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -18,25 +18,14 @@ */ package com.sevtinge.hyperceiler.ui.fragment; -import static com.sevtinge.hyperceiler.utils.devicesdk.SystemSDKKt.isMoreHyperOSVersion; - -import android.view.View; - +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +@FragmentTag(resId = R.string.aod_hyperos, pkg = "com.miui.aod") public class AodFragment extends SettingsPreferenceFragment { @Override public int getContentResId() { return R.xml.aod; } - - @Override - public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( - getResources().getString(!isMoreHyperOSVersion(1f) ? R.string.aod : R.string.aod_hyperos), - "com.miui.aod" - ); - } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BackupFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BackupFragment.java index 99fa2d8ebd..9d5fda2fae 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BackupFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BackupFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -20,21 +20,15 @@ import android.view.View; +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +@FragmentTag(resId = R.string.backup, pkg = "com.miui.backup") public class BackupFragment extends SettingsPreferenceFragment { @Override public int getContentResId() { return R.xml.backup; } - - @Override - public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( - getResources().getString(R.string.backup), - "com.miui.backup" - ); - } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BarrageFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BarrageFragment.java index 4a3b9bdfbf..8e4d3ade7c 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BarrageFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BarrageFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -20,21 +20,15 @@ import android.view.View; +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +@FragmentTag(resId = R.string.barrage, pkg = "com.xiaomi.barrage") public class BarrageFragment extends SettingsPreferenceFragment { @Override public int getContentResId() { return R.xml.barrage; } - - @Override - public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( - getResources().getString(R.string.barrage), - "com.xiaomi.barrage" - ); - } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BrowserFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BrowserFragment.java index 1cb16f960d..26e7a0607e 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BrowserFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/BrowserFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -20,22 +20,17 @@ import android.view.View; +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; + +@FragmentTag(resId = R.string.browser, pkg = "com.android.browser") public class BrowserFragment extends SettingsPreferenceFragment { @Override public int getContentResId() { return R.xml.browser; } - - @Override - public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( - getResources().getString(R.string.browser), - "com.android.browser" - ); - } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/CameraFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/CameraFragment.java index 844c178043..8e3cecb1a0 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/CameraFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/CameraFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -20,22 +20,16 @@ import android.view.View; +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +@FragmentTag(resId = R.string.camera, pkg = "com.android.camera") public class CameraFragment extends SettingsPreferenceFragment { @Override public int getContentResId() { return R.xml.camera; } - - @Override - public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( - getResources().getString(R.string.camera), - "com.android.camera" - ); - } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ClockFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ClockFragment.java index cdcb9b26f1..42d7cd5078 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ClockFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ClockFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -18,23 +18,15 @@ */ package com.sevtinge.hyperceiler.ui.fragment; -import android.view.View; +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +@FragmentTag(resId = R.string.clock, pkg = "com.android.deskclock") public class ClockFragment extends SettingsPreferenceFragment { @Override public int getContentResId() { return R.xml.clock; } - - @Override - public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( - getResources().getString(R.string.clock), - "com.android.deskclock" - ); - } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ContentExtensionFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ContentExtensionFragment.java index 4649e84e80..b6cd62fcc9 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ContentExtensionFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ContentExtensionFragment.java @@ -23,8 +23,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.SwitchPreference; @@ -45,7 +46,7 @@ public void initPrefs() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.content_extension), "com.miui.contentextension" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/CreationFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/CreationFragment.java index 008a51f0f7..572374b8da 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/CreationFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/CreationFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class CreationFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.creation), "com.miui.creation" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/DownloadsFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/DownloadsFragment.java index 4476d9a872..8e354d96a7 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/DownloadsFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/DownloadsFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class DownloadsFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.downloads), "com.android.providers.downloads.ui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/FileExplorerFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/FileExplorerFragment.java index 0e136185e6..145afad196 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/FileExplorerFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/FileExplorerFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class FileExplorerFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.fileexplorer), "com.android.fileexplorer" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/GalleryFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/GalleryFragment.java index 493901cc9d..ebe851144f 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/GalleryFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/GalleryFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class GalleryFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.gallery), "com.miui.gallery" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/GuardProviderFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/GuardProviderFragment.java index 9ff2a79a7e..0fe3a86832 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/GuardProviderFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/GuardProviderFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -23,8 +23,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class GuardProviderFragment extends SettingsPreferenceFragment { @Override @@ -34,7 +35,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(!isMoreHyperOSVersion(1f) ? R.string.guard_provider : R.string.guard_provider_hyperos), "com.miui.guardprovider" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/HuanjiFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/HuanjiFragment.java index 1f2fd59f33..268fbc97b4 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/HuanjiFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/HuanjiFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -20,21 +20,15 @@ import android.view.View; +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +@FragmentTag(resId = R.string.huanji, pkg = "com.miui.huanji") public class HuanjiFragment extends SettingsPreferenceFragment { @Override public int getContentResId() { return R.xml.huanji; } - - @Override - public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( - getResources().getString(R.string.huanji), - "com.miui.huanji" - ); - } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/InCallUiFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/InCallUiFragment.java index 2487782472..51e86e38a4 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/InCallUiFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/InCallUiFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -20,21 +20,15 @@ import android.view.View; +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +@FragmentTag(resId = R.string.incallui, pkg = "com.android.incallui") public class InCallUiFragment extends SettingsPreferenceFragment { @Override public int getContentResId() { return R.xml.incallui; } - - @Override - public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( - getResources().getString(R.string.incallui), - "com.android.incallui" - ); - } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/JoyoseFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/JoyoseFragment.java index 28093e197a..f4bc7d1002 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/JoyoseFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/JoyoseFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class JoyoseFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.joyose), "com.xiaomi.joyose" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/LbeFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/LbeFragment.java index 290fc1cbad..421f1618a9 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/LbeFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/LbeFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class LbeFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.lbe), "com.lbe.security.miui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MarketFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MarketFragment.java index 237ae32b87..411ce0b1d9 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MarketFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MarketFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MarketFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.market), "com.xiaomi.market" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MediaEditorFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MediaEditorFragment.java index cf94778b51..f6b7f6b7d4 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MediaEditorFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MediaEditorFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MediaEditorFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mediaeditor), "com.miui.mediaeditor" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiCloudServiceFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiCloudServiceFragment.java index a4211be659..2ebd013c00 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiCloudServiceFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiCloudServiceFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MiCloudServiceFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.micloud_service), "com.miui.cloudservice" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiLinkFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiLinkFragment.java index 6c1a632e2b..d6ec391e66 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiLinkFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiLinkFragment.java @@ -18,17 +18,14 @@ */ package com.sevtinge.hyperceiler.ui.fragment; -import static com.sevtinge.hyperceiler.utils.api.VoyagerApisKt.isPad; -import static com.sevtinge.hyperceiler.utils.devicesdk.SystemSDKKt.isAndroidVersion; import static com.sevtinge.hyperceiler.utils.devicesdk.SystemSDKKt.isMoreHyperOSVersion; -import android.content.Intent; import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.SubPickerActivity; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.SwitchPreference; @@ -43,7 +40,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(!isMoreHyperOSVersion(1f) ? R.string.milink : R.string.milink_hyperos), "com.milink.service" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiSettingsFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiSettingsFragment.java index e2ff62893a..0bfc9aa897 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiSettingsFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiSettingsFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MiSettingsFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mi_settings), "com.xiaomi.misettings" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiShareFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiShareFragment.java index e5476e9612..13d2b9db36 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiShareFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiShareFragment.java @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.SwitchPreference; @@ -37,7 +38,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mishare), "com.miui.mishare.connectivity" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiSoundFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiSoundFragment.java index 7d9c841afb..635482ef5c 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiSoundFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiSoundFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MiSoundFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.misound), "com.miui.misound" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiWallpaperFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiWallpaperFragment.java index adf882f482..86f0b635f7 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiWallpaperFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiWallpaperFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -18,20 +18,15 @@ */ package com.sevtinge.hyperceiler.ui.fragment; -import android.view.View; - +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +@FragmentTag(resId = 1) public class MiWallpaperFragment extends SettingsPreferenceFragment { + @Override public int getContentResId() { return R.xml.miwallpaper; } - - @Override - public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartSystemDialog(); - } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MirrorFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MirrorFragment.java index 8453067b2b..6aed289a78 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MirrorFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MirrorFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -23,8 +23,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MirrorFragment extends SettingsPreferenceFragment { @Override @@ -34,7 +35,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(!isMoreHyperOSVersion(1f) ? R.string.mirror : R.string.mirror_hyperos), "com.xiaomi.mirror" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiuiPackageInstallerFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiuiPackageInstallerFragment.java index 9253861a15..3b69db10dc 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiuiPackageInstallerFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MiuiPackageInstallerFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MiuiPackageInstallerFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.package_installer), "com.miui.packageinstaller" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MmsFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MmsFragment.java index 7696b0350b..a46fad5e3c 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MmsFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MmsFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MmsFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mms), "com.android.mms" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MtbFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MtbFragment.java index 8b319daf0f..91e65250da 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MtbFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MtbFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MtbFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mtb), "com.xiaomi.mtb" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MusicFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MusicFragment.java index f17ca871ea..4ae3a9d618 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MusicFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/MusicFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MusicFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.music), "com.miui.player" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/NetworkBoostFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/NetworkBoostFragment.java index 41067b7f37..aa6a300d08 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/NetworkBoostFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/NetworkBoostFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class NetworkBoostFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.networkboost), "com.xiaomi.networkboost" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/NfcFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/NfcFragment.java index c241fe4af2..d212cb8925 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/NfcFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/NfcFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class NfcFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.nfc), "com.android.nfc" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PersonalAssistantFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PersonalAssistantFragment.java index 963936d0ca..dcb24445c2 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PersonalAssistantFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PersonalAssistantFragment.java @@ -23,9 +23,10 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; import com.sevtinge.hyperceiler.utils.PrefsUtils; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.ColorPickerPreference; import fan.preference.DropDownPreference; @@ -47,7 +48,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.personal_assistant), "com.miui.personalassistant" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PhoneFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PhoneFragment.java index 5e303fd718..eece3fdb57 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PhoneFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PhoneFragment.java @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import com.sevtinge.hyperceiler.utils.ShellUtils; import fan.preference.Preference; @@ -37,7 +38,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.phone), "com.android.phone" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PowerKeeperFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PowerKeeperFragment.java index 7ac6438d91..d2af838241 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PowerKeeperFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/PowerKeeperFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class PowerKeeperFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.powerkeeper), "com.miui.powerkeeper" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScannerFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScannerFragment.java index 611c9a5f01..4653a8ef97 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScannerFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScannerFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class ScannerFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.scanner), "com.xiaomi.scanner" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScreenRecorderFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScreenRecorderFragment.java index c4fedfd25b..b34c614ebd 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScreenRecorderFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScreenRecorderFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class ScreenRecorderFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.screenrecorder), "com.miui.screenrecorder" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScreenShotFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScreenShotFragment.java index b2598056d3..82ee027e21 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScreenShotFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ScreenShotFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class ScreenShotFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.screenshot), "com.miui.screenshot" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SecurityCenterFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SecurityCenterFragment.java index d9de890dd5..2d0716bcb4 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SecurityCenterFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SecurityCenterFragment.java @@ -30,8 +30,9 @@ import androidx.core.content.PermissionChecker; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.Preference; import fan.preference.SwitchPreference; @@ -53,7 +54,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { mSecurity = getResources().getString(!isMoreHyperOSVersion(1f) ? (!isPad() ? R.string.security_center : R.string.security_center_pad) : R.string.security_center_hyperos); - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), mSecurity, "com.miui.securitycenter" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SecurityCenterSidebarFunctionFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SecurityCenterSidebarFunctionFragment.java index eb5e8bc120..f4b1ed16a6 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SecurityCenterSidebarFunctionFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SecurityCenterSidebarFunctionFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -24,8 +24,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class SecurityCenterSidebarFunctionFragment extends SettingsPreferenceFragment { String mSecurity; @@ -38,7 +39,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { mSecurity = getResources().getString(!isMoreHyperOSVersion(1f) ? (!isPad() ? R.string.security_center : R.string.security_center_pad) : R.string.security_center_hyperos); - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), mSecurity, "com.miui.securitycenter" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SoGouFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SoGouFragment.java index 3286a9edce..f6d60d1d21 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SoGouFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SoGouFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class SoGouFragment extends SettingsPreferenceFragment { String[] all = new String[]{ @@ -37,7 +38,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.sogou_xiaomi), all ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SystemSettingsFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SystemSettingsFragment.java index 267caac664..38f5b144a4 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SystemSettingsFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/SystemSettingsFragment.java @@ -26,11 +26,11 @@ import android.provider.Settings; import android.view.View; -import android.widget.SeekBar; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import com.sevtinge.hyperceiler.utils.log.AndroidLogUtils; import fan.preference.SeekBarPreference; @@ -51,7 +51,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_settings), "com.android.settings" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ThemeManagerFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ThemeManagerFragment.java index 8d0847f426..1e58f2151c 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ThemeManagerFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/ThemeManagerFragment.java @@ -23,13 +23,16 @@ import android.view.View; +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.PreferenceCategory; import fan.preference.SwitchPreference; +@FragmentTag(resId = R.string.theme_manager, pkg = "com.android.thememanager") public class ThemeManagerFragment extends SettingsPreferenceFragment { PreferenceCategory mVersionCodeModifyPreferenceCat; @@ -40,14 +43,6 @@ public int getContentResId() { return R.xml.theme_manager; } - @Override - public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( - getResources().getString(R.string.theme_manager), - "com.android.thememanager" - ); - } - @Override public void initPrefs() { mVersionCodeModifyPreferenceCat = findPreference("prefs_key_theme_manager_version_code_modify_cat"); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/TrustServiceFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/TrustServiceFragment.java index dd5b4152d1..48ddf4764a 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/TrustServiceFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/TrustServiceFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class TrustServiceFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.trustservice), "com.xiaomi.trustservice" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/TsmClientFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/TsmClientFragment.java index 10df1e6b16..73e17a6e9a 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/TsmClientFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/TsmClientFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class TsmClientFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.tsmclient), "com.miui.tsmclient" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/UpdaterFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/UpdaterFragment.java index 9e30fac4ea..d4103e0b9c 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/UpdaterFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/UpdaterFragment.java @@ -23,9 +23,10 @@ import androidx.annotation.NonNull; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; import com.sevtinge.hyperceiler.utils.PrefsUtils; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.DropDownPreference; import fan.preference.EditTextPreference; @@ -44,7 +45,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.updater), "com.android.updater" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/VoiceAssistFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/VoiceAssistFragment.java index 0b429015db..473829324d 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/VoiceAssistFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/VoiceAssistFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class VoiceAssistFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.voiceassist), "com.miui.voiceassist" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/WeatherFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/WeatherFragment.java index 00e53696a6..0529558c75 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/WeatherFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/WeatherFragment.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class WeatherFragment extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.weather), "com.miui.weather2" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/NavigatorFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/NavigatorFragment.java index 1a0c74c884..28c341fcb8 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/NavigatorFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/NavigatorFragment.java @@ -1,141 +1,25 @@ package com.sevtinge.hyperceiler.ui.fragment.base; -import android.graphics.Rect; import android.os.Bundle; -import android.view.ActionMode; -import android.view.LayoutInflater; -import android.view.Menu; -import android.view.View; -import android.view.ViewGroup; -import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import com.fan.common.base.BasePreferenceFragment; +import com.fan.common.base.FragmentProxy; + import fan.preference.PreferenceFragment; -public abstract class NavigatorFragment extends PreferenceFragment { +public abstract class NavigatorFragment extends SettingsPreferenceFragment { - protected abstract int getContentResId(); + public abstract int getContentResId(); @Override public void onCreatePreferences(@Nullable Bundle bundle, @Nullable String s) { - FragmentProxy mProxy = new FragmentProxy(this); - mProxy.onCreatePreferenceManager(getPreferenceManager()); - if (getContentResId() != 0) { - setPreferencesFromResource(getContentResId(), s); - initPrefs(); + super.onCreatePreferences(bundle, s); + if (getContentResId() != -1) { + Bundle args = new Bundle(); + args.putInt("contentResId", getContentResId()); + setArguments(args); } } - - protected void initPrefs() {} - - @Override - public boolean hasActionBar() { - return false; - } - - @Override - public boolean isInEditActionMode() { - return false; - } - - @Override - public boolean isIsInSearchActionMode() { - return false; - } - - @Override - public boolean isRegisterResponsive() { - return false; - } - - @Override - public void onActionModeFinished(ActionMode actionMode) { - - } - - @Override - public void onActionModeStarted(ActionMode actionMode) { - - } - - @Override - public boolean onCreateOptionsMenu(Menu menu) { - return false; - } - - @Override - public boolean onCreatePanelMenu(int i, Menu menu) { - return false; - } - - @Override - public View onInflateView(@NonNull LayoutInflater layoutInflater, @Nullable ViewGroup viewGroup, @Nullable Bundle bundle) { - return null; - } - - @Override - public void onPanelClosed(int i, Menu menu) { - - } - - @Override - public void onPreparePanel(int i, View view, Menu menu) { - - } - - @Override - public void onViewInflated(View view, Bundle bundle) { - - } - - @Override - public void setThemeRes(int i) { - - } - - @Override - public ActionMode startActionMode(ActionMode.Callback callback) { - return null; - } - - @Override - public void onExtraPaddingChanged(int i) { - - } - - @Override - public void onDispatchNestedScrollOffset(int[] ints) { - - } - - @Override - public void onProcessBindViewWithContentInset(Rect rect) { - - } - - @Override - public void setCorrectNestedScrollMotionEventEnabled(boolean b) { - - } - - @Override - public void dismissImmersionMenu(boolean b) { - - } - - @Override - public void setImmersionMenuEnabled(boolean b) { - - } - - @Override - public void showImmersionMenu() { - - } - - @Override - public void showImmersionMenu(View view, ViewGroup viewGroup) { - - } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/SettingsPreferenceFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/SettingsPreferenceFragment.java index 7e0cdac00a..52e1bf94b2 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/SettingsPreferenceFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/SettingsPreferenceFragment.java @@ -21,17 +21,18 @@ import android.content.SharedPreferences; import android.os.Bundle; import android.text.TextUtils; +import android.view.Menu; +import android.view.MenuInflater; +import android.view.MenuItem; import android.view.View; import androidx.annotation.NonNull; import androidx.annotation.Nullable; -import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseActivity; -import com.sevtinge.hyperceiler.ui.base.NavigationActivity; +import com.fan.common.base.BasePreferenceFragment; +import com.fan.common.base.FragmentTag; import com.sevtinge.hyperceiler.utils.PrefsUtils; - -import fan.appcompat.app.ActionBar; +import com.sevtinge.hyperceiler.utils.RestartHelper; public abstract class SettingsPreferenceFragment extends BasePreferenceFragment { @@ -39,6 +40,7 @@ public abstract class SettingsPreferenceFragment extends BasePreferenceFragment public String mPreferenceKey; public int mContentResId = 0; public int mTitleResId = 0; + public MenuItem mRestartMenu; private boolean mPreferenceHighlighted = false; private final String SAVE_HIGHLIGHTED_KEY = "android:preference_highlighted"; @@ -51,7 +53,6 @@ public void onActivityCreated(@Nullable Bundle savedInstanceState) { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - initActionBar(); if (savedInstanceState != null) { mPreferenceHighlighted = savedInstanceState.getBoolean(SAVE_HIGHLIGHTED_KEY); } @@ -74,13 +75,13 @@ public void onCreatePreferences(Bundle bundle, String s) { setPreferencesFromResource(mContentResId, s); initPrefs(); } - /*((BaseActivity) getActivity()).setRestartView(addRestartListener());*/ } - private void initActionBar() { - ActionBar actionBar = getActionBar(); - if (actionBar != null) { - actionBar.setDisplayShowHomeEnabled(!(getActivity() instanceof NavigationActivity)); + public void showRestartListener(int appLabel, String packageName) { + if (packageName.equals("system")) { + RestartHelper.showRestartSystemDialog(requireContext()); + } else { + RestartHelper.showRestartDialog(requireContext(), getString(appLabel), packageName); } } @@ -114,4 +115,29 @@ public void initPrefs() { public abstract int getContentResId(); + private void analysisAnnocation(SettingsPreferenceFragment fragment) { + Class clazz = fragment.getClass(); + if (clazz.isAnnotationPresent(FragmentTag.class)) { + FragmentTag tag = clazz.getAnnotation(FragmentTag.class); + int resId = tag.resId(); + String pkg = tag.pkg(); + if (resId > 0) { + fragment.showRestartListener(resId, pkg); + } + } + } + + @Override + public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) { + inflater.inflate(com.fan.common.R.menu.menu_sub, menu); + mRestartMenu = menu.findItem(com.fan.common.R.id.restart); + } + + @Override + public boolean onOptionsItemSelected(@NonNull MenuItem item) { + if (item == mRestartMenu) { + analysisAnnocation(this); + } + return super.onOptionsItemSelected(item); + } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/TabNavigatorContentFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/TabNavigatorContentFragment.java index 771f9eee51..fcb13e16e7 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/TabNavigatorContentFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/TabNavigatorContentFragment.java @@ -6,6 +6,7 @@ import android.text.TextWatcher; import android.view.LayoutInflater; import android.view.Menu; +import android.view.MenuInflater; import android.view.MenuItem; import android.view.View; import android.view.ViewGroup; @@ -14,6 +15,7 @@ import androidx.annotation.NonNull; import androidx.annotation.Nullable; +import androidx.fragment.app.Fragment; import androidx.recyclerview.widget.RecyclerView; import androidx.viewpager.widget.ViewPager; @@ -24,15 +26,16 @@ import com.sevtinge.hyperceiler.ui.fragment.base.navigation.AboutPageFragment; import com.sevtinge.hyperceiler.ui.fragment.base.navigation.HomePageFragment; import com.sevtinge.hyperceiler.ui.fragment.base.navigation.SettingsPageFragment; +import com.sevtinge.hyperceiler.utils.DialogHelper; import com.sevtinge.hyperceiler.utils.Helpers; import com.sevtinge.hyperceiler.utils.SearchModeHelper; -import com.sevtinge.hyperceiler.utils.SettingLauncherHelper; +import com.fan.common.utils.SettingLauncherHelper; import com.sevtinge.hyperceiler.utils.blur.MiBlurUtils; import java.util.ArrayList; import java.util.List; -import fan.appcompat.app.Fragment; +import fan.appcompat.app.AppCompatActivity; import fan.view.SearchActionMode; public class TabNavigatorContentFragment extends Fragment { @@ -81,19 +84,26 @@ public void afterTextChanged(Editable s) { @Override public void onCreate(Bundle bundle) { super.onCreate(bundle); - setThemeRes(R.style.TabNavigatorContentFragmentTheme); + //setThemeRes(R.style.TabNavigatorContentFragmentTheme); } public int getBottomTabMenu() { return R.menu.menu_navigation; } + @Nullable @Override - public View onInflateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + public View onCreateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { mContainer = inflater.inflate(R.layout.activity_navigation, container, false); return mContainer; } + /*@Override + public View onInflateView(@NonNull LayoutInflater inflater, @Nullable ViewGroup container, @Nullable Bundle savedInstanceState) { + mContainer = inflater.inflate(R.layout.activity_navigation, container, false); + return mContainer; + }*/ + @Override public void onViewCreated(View view, Bundle bundle) { super.onViewCreated(view, bundle); @@ -122,16 +132,14 @@ private void initNavigationView(View view) { mNavigationPagerAdapter = new NavigationPagerAdapter(getParentFragmentManager(), mFragmentList); mFragmentPage.setAdapter(mNavigationPagerAdapter); - setTabTitle(mFragmentPage.getCurrentItem()); + updateNavigatorInfo(mFragmentPage.getCurrentItem()); - int i; - if (Helpers.isDarkMode(getActivity())) i = 140; else i = 180; - int a; - if (Helpers.isDarkMode(getActivity())) a = 80; else a = 100; - MiBlurUtils.setContainerPassBlur(mNavigationView, i); + int blurRadius = Helpers.isDarkMode(requireContext()) ? 140 : 180; + int alpha = Helpers.isDarkMode(requireContext()) ? 80 : 100; + MiBlurUtils.setContainerPassBlur(mNavigationView, blurRadius); MiBlurUtils.setMiViewBlurMode(mNavigationView, 3); MiBlurUtils.clearMiBackgroundBlendColor(mNavigationView); - MiBlurUtils.addMiBackgroundBlendColor(mNavigationView, Color.argb(a, 0, 0, 0), 103); + MiBlurUtils.addMiBackgroundBlendColor(mNavigationView, Color.argb(alpha, 0, 0, 0), 103); mFragmentPage.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { @@ -162,7 +170,7 @@ public void onPageScrollStateChanged(int state) { private SearchActionMode startSearchMode() { return SearchModeHelper.startSearchMode( - this, + (AppCompatActivity) getActivity(), mSearchResultView, mFragmentPage, mSearchView, @@ -173,14 +181,20 @@ private SearchActionMode startSearchMode() { private void changeSelect(int position) { mFragmentPage.setCurrentItem(position); - setTabTitle(position); + updateNavigatorInfo(position); } - protected void setTabTitle(int position) { + protected void updateNavigatorInfo(int position) { switch (position) { - case 0 -> setTitle("首页"); - case 1 -> setTitle("设置"); - case 2 -> setTitle("关于"); + case 0 -> { + setTitle("首页"); + } + case 1 -> { + setTitle("设置"); + } + case 2 -> { + setTitle("关于"); + } } } @@ -189,13 +203,14 @@ protected void setTitle(int titleResId) { } protected void setTitle(CharSequence title) { - getActionBar().setTitle(title); + getActivity().setTitle(title); } @Override - public boolean onCreateOptionsMenu(Menu menu) { - getMenuInflater().inflate(getBottomTabMenu(), menu); - return super.onCreateOptionsMenu(menu); + public void onCreateOptionsMenu(@NonNull Menu menu, @NonNull MenuInflater inflater) { + MenuItem item = menu.add(R.id.miuix_action_end_menu_group, 1, 0, R.string.soft_reboot); + item.setIcon(R.drawable.ic_reboot_small); + item.setShowAsAction(MenuItem.SHOW_AS_ACTION_ALWAYS); } @Override @@ -207,6 +222,8 @@ public boolean onOptionsItemSelected(@NonNull MenuItem item) { changeSelect(1); } else if (itemId == R.id.navigation_about) { changeSelect(2); + } else if (itemId == 1) { + DialogHelper.showRestartDialog(requireContext()); } return super.onOptionsItemSelected(item); } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/navigation/HomePageFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/navigation/HomePageFragment.java index c030c3234f..e157d161a0 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/navigation/HomePageFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/base/navigation/HomePageFragment.java @@ -9,37 +9,19 @@ import android.os.Bundle; import android.os.Handler; import android.os.Message; -import android.text.Editable; -import android.text.TextWatcher; -import android.view.LayoutInflater; -import android.view.View; -import android.view.ViewGroup; -import android.widget.TextView; import androidx.annotation.NonNull; -import androidx.annotation.Nullable; -import androidx.recyclerview.widget.LinearLayoutManager; -import androidx.recyclerview.widget.RecyclerView; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.data.ModData; -import com.sevtinge.hyperceiler.data.adapter.ModSearchAdapter; import com.sevtinge.hyperceiler.prefs.TipsPreference; import com.sevtinge.hyperceiler.ui.MainActivityContextHelper; -import com.sevtinge.hyperceiler.ui.SubSettings; import com.sevtinge.hyperceiler.ui.fragment.base.NavigatorFragment; -import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; -import com.sevtinge.hyperceiler.utils.SearchModeHelper; -import com.sevtinge.hyperceiler.utils.SettingLauncherHelper; import com.sevtinge.hyperceiler.utils.devicesdk.DeviceSDKKt; import com.sevtinge.hyperceiler.utils.devicesdk.SystemSDKKt; import java.util.Objects; -import fan.appcompat.app.AppCompatActivity; -import fan.appcompat.app.Fragment; import fan.preference.Preference; -import fan.view.SearchActionMode; public class HomePageFragment extends NavigatorFragment { @@ -75,7 +57,7 @@ public int getContentResId() { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); - getActionBar().hide(); + /*getActionBar().hide();*/ Message message = mHandler.obtainMessage(0x11); mHandler.sendMessageDelayed(message, 6000); } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/DisplaySettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/DisplaySettings.java index bdaeba4c06..413269574e 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/DisplaySettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/DisplaySettings.java @@ -19,11 +19,11 @@ package com.sevtinge.hyperceiler.ui.fragment.framework; import android.view.View; -import android.widget.SeekBar; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.SeekBarPreference; @@ -39,7 +39,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartSystemDialog(); + return view -> RestartHelper.showRestartSystemDialog(requireContext()); } @Override diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/FreeFormSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/FreeFormSettings.java index 111d90b4f2..cf2642422d 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/FreeFormSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/FreeFormSettings.java @@ -25,8 +25,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.PreferenceCategory; import fan.preference.SwitchPreference; @@ -43,7 +44,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartSystemDialog(); + return view -> RestartHelper.showRestartSystemDialog(requireContext()); } @Override diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/NetworkSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/NetworkSettings.java index cab1b9c8cb..f73379cbc8 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/NetworkSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/NetworkSettings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class NetworkSettings extends SettingsPreferenceFragment { @Override @@ -32,6 +33,6 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartSystemDialog(); + return view -> RestartHelper.showRestartSystemDialog(requireContext()); } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/VolumeSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/VolumeSettings.java index 5a532118ef..e4c39e0ca0 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/VolumeSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/framework/VolumeSettings.java @@ -24,8 +24,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.DropDownPreference; import fan.preference.SwitchPreference; @@ -42,7 +43,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartSystemDialog(); + return view -> RestartHelper.showRestartSystemDialog(requireContext()); } @Override diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeDockSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeDockSettings.java index a42d26bd2d..276099efe8 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeDockSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeDockSettings.java @@ -25,9 +25,10 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; import com.sevtinge.hyperceiler.utils.PrefsUtils; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.DropDownPreference; import fan.preference.Preference; @@ -49,7 +50,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeDrawerSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeDrawerSettings.java index 72befbba14..8ce5c27438 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeDrawerSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeDrawerSettings.java @@ -23,8 +23,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.SwitchPreference; @@ -39,7 +40,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeFolderSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeFolderSettings.java index eb53b19ec4..ee8bfbe44c 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeFolderSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeFolderSettings.java @@ -27,9 +27,10 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; import com.sevtinge.hyperceiler.utils.PrefsUtils; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.DropDownPreference; import fan.preference.Preference; @@ -58,7 +59,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeGestureSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeGestureSettings.java index ca27101865..3895032887 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeGestureSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeGestureSettings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class HomeGestureSettings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeLayoutSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeLayoutSettings.java index 3e548b44f1..17d1746975 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeLayoutSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeLayoutSettings.java @@ -23,8 +23,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.SwitchPreference; @@ -38,7 +39,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeOtherSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeOtherSettings.java index 56a0bca37f..8f06533505 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeOtherSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeOtherSettings.java @@ -27,9 +27,10 @@ import androidx.annotation.NonNull; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; import com.sevtinge.hyperceiler.utils.KillAppUtils; +import com.sevtinge.hyperceiler.utils.RestartHelper; import java.util.concurrent.ExecutorService; import java.util.concurrent.Executors; @@ -54,7 +55,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeRecentSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeRecentSettings.java index ddb42c46a1..917bc2b43a 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeRecentSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeRecentSettings.java @@ -24,8 +24,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.SwitchPreference; @@ -43,7 +44,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeTitleAnimSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeTitleAnimSettings.java index e456fd5c39..427d28ff56 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeTitleAnimSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeTitleAnimSettings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class HomeTitleAnimSettings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeTitleSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeTitleSettings.java index bd221708f6..804afb7288 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeTitleSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeTitleSettings.java @@ -26,8 +26,9 @@ import com.sevtinge.hyperceiler.R; import com.sevtinge.hyperceiler.ui.SubPickerActivity; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.Preference; import fan.preference.SwitchPreference; @@ -46,7 +47,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeWidgetSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeWidgetSettings.java index 27e890c3b4..e48e89bf23 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeWidgetSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/HomeWidgetSettings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class HomeWidgetSettings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim1Settings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim1Settings.java index 672aef101f..9c636abd47 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim1Settings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim1Settings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class HomeTitleAnim1Settings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim2Settings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim2Settings.java index beb5ed75b9..e460c796f6 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim2Settings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim2Settings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class HomeTitleAnim2Settings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim3Settings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim3Settings.java index c67c0b166f..57464b8fca 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim3Settings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim3Settings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class HomeTitleAnim3Settings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim4Settings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim4Settings.java index e717236f5d..37d3166158 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim4Settings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim4Settings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class HomeTitleAnim4Settings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim5Settings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim5Settings.java index ab228e5761..038291c22b 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim5Settings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim5Settings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class HomeTitleAnim5Settings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim6Settings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim6Settings.java index c5a193dc1c..d0736e3cbd 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim6Settings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim6Settings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class HomeTitleAnim6Settings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim7Settings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim7Settings.java index 483704b19e..e5f2c82967 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim7Settings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim7Settings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class HomeTitleAnim7Settings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim8Settings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim8Settings.java index dab591334d..12a3901e0b 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim8Settings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/home/anim/HomeTitleAnim8Settings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class HomeTitleAnim8Settings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.mihome), "com.miui.home" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/ControlCenterSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/ControlCenterSettings.java index 157aa2c8ad..d63660f278 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/ControlCenterSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/ControlCenterSettings.java @@ -25,17 +25,15 @@ import android.content.Intent; import android.os.Handler; -import android.provider.Settings; import android.view.View; -import android.widget.SeekBar; import com.sevtinge.hyperceiler.R; import com.sevtinge.hyperceiler.ui.SubPickerActivity; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; import com.sevtinge.hyperceiler.utils.PrefsUtils; +import com.sevtinge.hyperceiler.utils.RestartHelper; import com.sevtinge.hyperceiler.utils.ShellUtils; -import com.sevtinge.hyperceiler.utils.log.AndroidLogUtils; import fan.preference.SeekBarPreference; import miui.telephony.TelephonyManager; @@ -72,7 +70,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/LockScreenSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/LockScreenSettings.java index f0f1eb8aca..9e75711047 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/LockScreenSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/LockScreenSettings.java @@ -27,8 +27,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.SwitchPreference; @@ -66,7 +67,7 @@ public void initPrefs() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/NavigationSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/NavigationSettings.java index 07578057ce..4ecb9b9c77 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/NavigationSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/NavigationSettings.java @@ -22,8 +22,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.PreferenceCategory; import fan.preference.SwitchPreference; @@ -39,7 +40,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/StatusBarSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/StatusBarSettings.java index add223252f..814a337458 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/StatusBarSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/StatusBarSettings.java @@ -24,8 +24,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.Preference; @@ -41,7 +42,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/SystemUIOtherSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/SystemUIOtherSettings.java index b6355ac254..5842cee258 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/SystemUIOtherSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/SystemUIOtherSettings.java @@ -26,8 +26,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.PreferenceCategory; import fan.preference.SwitchPreference; @@ -46,7 +47,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryDetailIndicatorSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryDetailIndicatorSettings.java index ee138876a8..03a2fc7296 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryDetailIndicatorSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryDetailIndicatorSettings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class BatteryDetailIndicatorSettings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryIndicatorSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryIndicatorSettings.java index fe74933c2e..b6e192913b 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryIndicatorSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryIndicatorSettings.java @@ -22,9 +22,10 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; import com.sevtinge.hyperceiler.utils.PrefsUtils; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.ColorPickerPreference; import fan.preference.DropDownPreference; @@ -46,7 +47,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryStyleSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryStyleSettings.java index 27ea42950e..7a1d56454a 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryStyleSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/BatteryStyleSettings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class BatteryStyleSettings extends SettingsPreferenceFragment { @Override @@ -30,7 +31,7 @@ public class BatteryStyleSettings extends SettingsPreferenceFragment { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/ClockIndicatorSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/ClockIndicatorSettings.java index bf6841974d..9d692ffa1b 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/ClockIndicatorSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/ClockIndicatorSettings.java @@ -23,9 +23,10 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; import com.sevtinge.hyperceiler.utils.PrefsUtils; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.DropDownPreference; import fan.preference.Preference; @@ -47,7 +48,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/DoubleLineNetworkSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/DoubleLineNetworkSettings.java index c2ab5bbe6e..ebcfe33df8 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/DoubleLineNetworkSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/DoubleLineNetworkSettings.java @@ -18,16 +18,13 @@ */ package com.sevtinge.hyperceiler.ui.fragment.systemui.statusbar; -import static com.sevtinge.hyperceiler.utils.devicesdk.SystemSDKKt.isAndroidVersion; - import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; -import com.sevtinge.hyperceiler.utils.PrefsUtils; +import com.sevtinge.hyperceiler.utils.RestartHelper; -import fan.preference.ColorPickerPreference; import fan.preference.DropDownPreference; import fan.preference.Preference; @@ -42,7 +39,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/IconManageSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/IconManageSettings.java index 9c5f60676e..683365a369 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/IconManageSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/IconManageSettings.java @@ -25,9 +25,10 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; import com.sevtinge.hyperceiler.utils.PrefsUtils; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.DropDownPreference; import fan.preference.Preference; @@ -52,7 +53,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity) getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/MobileNetworkTypeSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/MobileNetworkTypeSettings.java index d3947b1888..ed9d81b5c7 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/MobileNetworkTypeSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/MobileNetworkTypeSettings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MobileNetworkTypeSettings extends SettingsPreferenceFragment { @Override @@ -32,7 +33,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/NetworkSpeedIndicatorSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/NetworkSpeedIndicatorSettings.java index 90757095b8..9e10fcefe0 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/NetworkSpeedIndicatorSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/NetworkSpeedIndicatorSettings.java @@ -24,9 +24,10 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; import com.sevtinge.hyperceiler.utils.PrefsUtils; +import com.sevtinge.hyperceiler.utils.RestartHelper; import fan.preference.DropDownPreference; import fan.preference.Preference; @@ -52,7 +53,7 @@ public int getContentResId() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/StrongToastSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/StrongToastSettings.java index d7e0f9cb80..19099a92b6 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/StrongToastSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/systemui/statusbar/StrongToastSettings.java @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; import com.sevtinge.hyperceiler.utils.api.miuiStringToast.MiuiStringToast; import fan.preference.Preference; @@ -53,7 +54,7 @@ public void initPrefs() { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartDialog( + return view -> RestartHelper.showRestartDialog(requireContext(), getResources().getString(R.string.system_ui), "com.android.systemui" ); diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/various/MiPadSettings.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/various/MiPadSettings.java index 98dcaa3c62..5833ae8bd2 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/various/MiPadSettings.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/fragment/various/MiPadSettings.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -21,8 +21,9 @@ import android.view.View; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.BaseSettingsActivity; +import com.fan.common.base.BaseSettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; +import com.sevtinge.hyperceiler.utils.RestartHelper; public class MiPadSettings extends SettingsPreferenceFragment { @Override @@ -30,6 +31,6 @@ public class MiPadSettings extends SettingsPreferenceFragment { @Override public View.OnClickListener addRestartListener() { - return view -> ((BaseSettingsActivity)getActivity()).showRestartSystemDialog(); + return view -> RestartHelper.showRestartSystemDialog(requireContext()); } } diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/various/LocationSimulationActivity.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/various/LocationSimulationActivity.java index 4270b46827..610dd5f068 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/various/LocationSimulationActivity.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/various/LocationSimulationActivity.java @@ -1,6 +1,6 @@ /* * This file is part of HyperCeiler. - + * HyperCeiler is free software: you can redistribute it and/or modify * it under the terms of the GNU Affero General Public License as * published by the Free Software Foundation, either version 3 of the @@ -24,10 +24,9 @@ import android.view.MenuItem; import androidx.annotation.NonNull; -import androidx.fragment.app.Fragment; import com.sevtinge.hyperceiler.R; -import com.sevtinge.hyperceiler.ui.base.SettingsActivity; +import com.sevtinge.hyperceiler.ui.SettingsActivity; import com.sevtinge.hyperceiler.ui.fragment.base.SettingsPreferenceFragment; public class LocationSimulationActivity extends SettingsActivity { diff --git a/app/src/main/java/com/sevtinge/hyperceiler/ui/various/fragment/VariousFragment.java b/app/src/main/java/com/sevtinge/hyperceiler/ui/various/fragment/VariousFragment.java index 5e470ad8fa..b4a10d7705 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/ui/various/fragment/VariousFragment.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/ui/various/fragment/VariousFragment.java @@ -25,11 +25,11 @@ import fan.preference.DropDownPreference; import fan.preference.PreferenceCategory; -import fan.preference.PreferenceFragmentCompat; +import fan.preference.PreferenceFragment; import fan.preference.SeekBarPreference; import fan.preference.SwitchPreference; -public class VariousFragment extends PreferenceFragmentCompat { +public class VariousFragment extends PreferenceFragment { public String TAG = "VariousFragment"; diff --git a/app/src/main/java/com/sevtinge/hyperceiler/utils/Helpers.java b/app/src/main/java/com/sevtinge/hyperceiler/utils/Helpers.java index fef31459a6..7952afe271 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/utils/Helpers.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/utils/Helpers.java @@ -177,7 +177,7 @@ private static String getCallerMethod() { return stackTrace[4].getMethodName(); } - public static ActivityOptions makeFreeformActivityOptions(Context context, String str) { + /*public static ActivityOptions makeFreeformActivityOptions(Context context, String str) { ActivityOptions activityOptions; try { @@ -197,7 +197,7 @@ public static ActivityOptions makeFreeformActivityOptions(Context context, Strin Rect rect = (Rect) ReflectUtils.callObjectMethod("android.util.MiuiMultiWindowUtils", "getFreeformRect", new Class[]{Context.class}, new Object[]{context}); makeBasic.setLaunchBounds(rect); return makeBasic; - } + }*/ public static void openAppInfo(Context context, String pkg, int user) { try { diff --git a/app/src/main/java/com/sevtinge/hyperceiler/utils/RestartHelper.java b/app/src/main/java/com/sevtinge/hyperceiler/utils/RestartHelper.java new file mode 100644 index 0000000000..ca10cb97cb --- /dev/null +++ b/app/src/main/java/com/sevtinge/hyperceiler/utils/RestartHelper.java @@ -0,0 +1,85 @@ +package com.sevtinge.hyperceiler.utils; + +import android.content.Context; + +import com.sevtinge.hyperceiler.R; +import com.sevtinge.hyperceiler.utils.log.AndroidLogUtils; + +import fan.appcompat.app.AlertDialog; + +public class RestartHelper { + + public static void showRestartSystemDialog(Context context) { + showRestartDialog(context, true, "", new String[]{""}); + } + + public static void showRestartDialog(Context context, String appLabel, String packageName) { + showRestartDialog(context, false, appLabel, new String[]{packageName}); + } + + public static void showRestartDialog(Context context, String appLabel, String[] packageName) { + showRestartDialog(context, false, appLabel, packageName); + } + + public static void showRestartDialog(Context context, boolean isRestartSystem, String appLabel, String[] packageName) { + String isSystem = context.getResources().getString(R.string.restart_app_desc, appLabel); + String isOther = context.getResources().getString(R.string.restart_app_desc, " " + appLabel + " "); + + new AlertDialog.Builder(context) + .setCancelable(false) + .setTitle(context.getResources().getString(R.string.soft_reboot) + " " + appLabel) + .setMessage(isRestartSystem ? isSystem : isOther) + .setHapticFeedbackEnabled(true) + .setPositiveButton(android.R.string.ok, (dialog, which) -> doRestart(context, packageName, isRestartSystem)) + .setNegativeButton(android.R.string.cancel, null) + .show(); + } + + private static void doRestart(Context context, String[] packageName, boolean isRestartSystem) { + boolean result = false; + boolean pid = true; + if (isRestartSystem) { + result = ShellUtils.getResultBoolean("reboot", true); + } else { + if (packageName != null) { + for (String packageGet : packageName) { + if (packageGet == null) { + continue; + } + // String test = "XX"; + // ShellUtils.CommandResult commandResult = ShellUtils.execCommand("{ [[ $(pgrep -f '" + packageGet + + // "' | grep -v $$) != \"\" ]] && { pkill -l 9 -f \"" + packageGet + + // "\"; }; } || { echo \"kill error\"; }", true, true); + ShellUtils.CommandResult commandResult = + ShellUtils.execCommand("{ pid=$(pgrep -f '" + packageGet + "' | grep -v $$);" + + " [[ $pid != \"\" ]] && { pkill -l 9 -f \"" + packageGet + "\";" + + " { [[ $? != 0 ]] && { killall -s 9 \"" + packageGet + "\" &>/dev/null;};}" + + " || { { for i in $pid; do kill -s 9 \"$i\" &>/dev/null;done;};}" + + " || { echo \"kill error\";};};}" + + " || { echo \"kill error\";}", + true, true); + if (commandResult.result == 0) { + if (commandResult.successMsg.equals("kill error")) { + pid = false; + } else result = true; + } else + AndroidLogUtils.LogE("doRestart: ", "result: " + commandResult.result + + " errorMsg: " + commandResult.errorMsg + " package: " + packageGet, null); + } + } else { + AndroidLogUtils.LogE("doRestart: ", "packageName is null", null); + } + // result = ShellUtils.getResultBoolean("pkill -l 9 -f " + packageName, true); + } + if (!result) { + new AlertDialog.Builder(context) + .setCancelable(false) + .setTitle(R.string.tip) + .setMessage(isRestartSystem ? R.string.reboot_failed : + pid ? R.string.kill_failed : R.string.pid_failed) + .setHapticFeedbackEnabled(true) + .setPositiveButton(android.R.string.ok, null) + .show(); + } + } +} diff --git a/app/src/main/java/com/sevtinge/hyperceiler/utils/SearchModeHelper.java b/app/src/main/java/com/sevtinge/hyperceiler/utils/SearchModeHelper.java index f32afa8119..60f5c8ea89 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/utils/SearchModeHelper.java +++ b/app/src/main/java/com/sevtinge/hyperceiler/utils/SearchModeHelper.java @@ -27,12 +27,11 @@ import androidx.recyclerview.widget.RecyclerView; import fan.appcompat.app.AppCompatActivity; -import fan.appcompat.app.Fragment; import fan.view.SearchActionMode; public class SearchModeHelper { - public static SearchActionMode startSearchMode(Fragment fragment, RecyclerView resultView, View contentView, View anchorView, View animateView, TextWatcher watcher) { + public static SearchActionMode startSearchMode(AppCompatActivity fragment, RecyclerView resultView, View contentView, View anchorView, View animateView, TextWatcher watcher) { contentView.setVisibility(View.GONE); resultView.setVisibility(View.VISIBLE); SearchActionMode searchActionMode = (SearchActionMode) fragment.startActionMode(new SearchActionMode.Callback() { diff --git a/app/src/main/java/com/sevtinge/hyperceiler/utils/devicesdk/AppUtils.kt b/app/src/main/java/com/sevtinge/hyperceiler/utils/devicesdk/AppUtils.kt index 5ecfcaf6d3..4f339e469a 100644 --- a/app/src/main/java/com/sevtinge/hyperceiler/utils/devicesdk/AppUtils.kt +++ b/app/src/main/java/com/sevtinge/hyperceiler/utils/devicesdk/AppUtils.kt @@ -31,7 +31,7 @@ import android.util.TypedValue import com.github.kyuubiran.ezxhelper.EzXHelper import com.sevtinge.hyperceiler.utils.PrefsUtils.getSharedPrefs import com.sevtinge.hyperceiler.utils.PropUtils -import fan.os.DeviceHelper +import fan.core.utils.DeviceHelper import java.util.* fun dp2px(dpValue: Float): Int = TypedValue.applyDimension( @@ -65,7 +65,7 @@ fun isAlpha(): Boolean = fun isTablet(): Boolean = Resources.getSystem().getConfiguration().smallestScreenWidthDp >= 600 -fun isPadDevice(): Boolean = isTablet() || DeviceHelper.isFoldDevice() +fun isPadDevice(): Boolean = isTablet() fun checkVersionCode(): Long = getPackageInfoCompat(EzXHelper.appContext.packageName).longVersionCode diff --git a/app/src/main/res/layout/preference_round_layout.xml b/app/src/main/res/layout/preference_round_layout.xml index c646bb53da..57a5defcac 100644 --- a/app/src/main/res/layout/preference_round_layout.xml +++ b/app/src/main/res/layout/preference_round_layout.xml @@ -91,6 +91,6 @@ android:layout_height="wrap_content" android:layout_gravity="center|end" android:gravity="center" - android:src="@drawable/miuix_appcompat_intent_arrow_right" + android:src="?arrowRight" tools:ignore="ContentDescription,PrivateResource" /> \ No newline at end of file diff --git a/app/src/main/res/layout/preference_text.xml b/app/src/main/res/layout/preference_text.xml index 7d35317ad9..7000a589c1 100644 --- a/app/src/main/res/layout/preference_text.xml +++ b/app/src/main/res/layout/preference_text.xml @@ -73,6 +73,6 @@ android:layout_gravity="center|end" android:layout_width="wrap_content" android:layout_height="wrap_content" - android:src="@drawable/miuix_appcompat_intent_arrow_right" /> + android:src="?arrowRight" /> \ No newline at end of file diff --git a/app/src/main/res/menu/menu_main.xml b/app/src/main/res/menu/menu_main.xml index 25b476da95..01b94284cd 100644 --- a/app/src/main/res/menu/menu_main.xml +++ b/app/src/main/res/menu/menu_main.xml @@ -1,16 +1,16 @@ + + - - - - - + + + \ No newline at end of file diff --git a/app/src/main/res/values-night/themes.xml b/app/src/main/res/values-night/themes.xml index e1475b6ac4..098af54e91 100644 --- a/app/src/main/res/values-night/themes.xml +++ b/app/src/main/res/values-night/themes.xml @@ -1,5 +1,5 @@ - -