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 @@
-
-
-