diff --git a/app/build.gradle.kts b/app/build.gradle.kts index 7a22d9b4..ae6c33c2 100644 --- a/app/build.gradle.kts +++ b/app/build.gradle.kts @@ -131,7 +131,7 @@ materialThemeBuilder { } // Add Material Design 3 color tokens (such as palettePrimary100) in generated theme // rikka.material >= 2.0.0 provides such attributes - generatePalette = false + generatePalette = true } dependencies { @@ -158,11 +158,12 @@ dependencies { implementation("dev.rikka.rikkax.appcompat:appcompat:1.4.1") implementation("dev.rikka.rikkax.core:core:1.3.4") implementation("dev.rikka.rikkax.insets:insets:1.2.0") - implementation("dev.rikka.rikkax.material:material:1.6.6") + implementation("dev.rikka.rikkax.material:material:2.1.1") + implementation("dev.rikka.rikkax.material:material-preference:1.0.0") implementation("dev.rikka.rikkax.preference:simplemenu-preference:1.0.3") implementation("dev.rikka.rikkax.recyclerview:recyclerview-ktx:1.3.1") implementation("dev.rikka.rikkax.widget:borderview:1.1.0") - implementation("dev.rikka.rikkax.widget:switchbar:1.0.2") + implementation("dev.rikka.rikkax.widget:mainswitchbar:1.0.0") implementation("dev.rikka.rikkax.layoutinflater:layoutinflater:1.2.0") implementation("me.zhanghai.android.appiconloader:appiconloader:1.3.1") implementation("org.lsposed.hiddenapibypass:hiddenapibypass:4.3") diff --git a/app/src/main/java/org/lsposed/manager/adapters/ScopeAdapter.java b/app/src/main/java/org/lsposed/manager/adapters/ScopeAdapter.java index 10bb50b3..bf14c4db 100644 --- a/app/src/main/java/org/lsposed/manager/adapters/ScopeAdapter.java +++ b/app/src/main/java/org/lsposed/manager/adapters/ScopeAdapter.java @@ -48,6 +48,7 @@ import android.widget.CompoundButton; import android.widget.Filter; import android.widget.Filterable; import android.widget.ImageView; +import android.widget.Switch; import android.widget.TextView; import android.widget.Toast; @@ -85,7 +86,7 @@ import java.util.stream.Collectors; import rikka.core.util.ResourceUtils; import rikka.material.app.LocaleDelegate; -import rikka.widget.switchbar.SwitchBar; +import rikka.widget.mainswitchbar.OnMainSwitchChangeListener; @SuppressLint("NotifyDataSetChanged") public class ScopeAdapter extends EmptyStateRecyclerView.EmptyStateAdapter implements Filterable { @@ -104,19 +105,18 @@ public class ScopeAdapter extends EmptyStateRecyclerView.EmptyStateAdapter showList = new ArrayList<>(); private List denyList = new ArrayList<>(); - private final SwitchBar.OnCheckedChangeListener switchBarOnCheckedChangeListener = new SwitchBar.OnCheckedChangeListener() { + private final OnMainSwitchChangeListener switchBarOnCheckedChangeListener = new OnMainSwitchChangeListener() { @Override - public boolean onCheckedChanged(SwitchBar view, boolean isChecked) { + public void onSwitchChanged(Switch view, boolean isChecked) { if (!moduleUtil.setModuleEnabled(module.packageName, isChecked)) { - return false; + view.setChecked(!isChecked); } var tmpChkList = new HashSet<>(checkedList); if (isChecked && !tmpChkList.isEmpty() && !ConfigManager.setModuleScope(module.packageName, tmpChkList)) { - return false; + view.setChecked(false); } enabled = isChecked; notifyDataSetChanged(); - return true; } }; @@ -480,9 +480,9 @@ public class ScopeAdapter extends EmptyStateRecyclerView.EmptyStateAdapter { List appList = AppHelper.getAppList(force); denyList = AppHelper.getDenyList(force); diff --git a/app/src/main/java/org/lsposed/manager/ui/activity/base/BaseActivity.java b/app/src/main/java/org/lsposed/manager/ui/activity/base/BaseActivity.java index 5c773845..536bbee0 100644 --- a/app/src/main/java/org/lsposed/manager/ui/activity/base/BaseActivity.java +++ b/app/src/main/java/org/lsposed/manager/ui/activity/base/BaseActivity.java @@ -54,7 +54,7 @@ public class BaseActivity extends MaterialActivity { public void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); if (ThemeUtil.isSystemAccent()) { - DynamicColors.applyIfAvailable(this); + DynamicColors.applyToActivityIfAvailable(this); } // make sure the versions are consistent if (BuildConfig.DEBUG) return; @@ -107,6 +107,7 @@ public class BaseActivity extends MaterialActivity { theme.applyStyle(ThemeUtil.getColorThemeStyleRes(), true); } theme.applyStyle(ThemeUtil.getNightThemeStyleRes(this), true); + theme.applyStyle(rikka.material.preference.R.style.ThemeOverlay_Rikka_Material3_Preference, true); } @Override diff --git a/app/src/main/res/layout/fragment_app_list.xml b/app/src/main/res/layout/fragment_app_list.xml index 56ef7f3d..f81093ce 100644 --- a/app/src/main/res/layout/fragment_app_list.xml +++ b/app/src/main/res/layout/fragment_app_list.xml @@ -20,7 +20,6 @@ - - - + app:layout_behavior="@string/appbar_scrolling_view_behavior"> - - - - + android:orientation="vertical"> + + + + + + + diff --git a/app/src/main/res/values/themes.xml b/app/src/main/res/values/themes.xml index ab02f42b..5f61e670 100644 --- a/app/src/main/res/values/themes.xml +++ b/app/src/main/res/values/themes.xml @@ -19,7 +19,10 @@ - - - - - -