diff --git a/app/src/main/java/com/fox2code/mmm/ActionButtonType.java b/app/src/main/java/com/fox2code/mmm/ActionButtonType.java index 3a3ae4a..107dcaa 100644 --- a/app/src/main/java/com/fox2code/mmm/ActionButtonType.java +++ b/app/src/main/java/com/fox2code/mmm/ActionButtonType.java @@ -17,6 +17,7 @@ import com.fox2code.mmm.manager.LocalModuleInfo; import com.fox2code.mmm.manager.ModuleInfo; import com.fox2code.mmm.manager.ModuleManager; import com.fox2code.mmm.utils.IntentHelper; +import com.google.android.material.card.MaterialCardView; import com.google.android.material.dialog.MaterialAlertDialogBuilder; import io.noties.markwon.Markwon; @@ -24,7 +25,7 @@ import io.noties.markwon.Markwon; public enum ActionButtonType { INFO(R.drawable.ic_baseline_info_24) { @Override - public void doAction(ImageButton button, ModuleHolder moduleHolder) { + public void doAction(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder) { String notesUrl = moduleHolder.repoModule.notesUrl; if (notesUrl.startsWith("https://api.androidacy.com/magisk/readme/?module=") || notesUrl.startsWith("https://www.androidacy.com/")) { @@ -48,7 +49,7 @@ public enum ActionButtonType { }, UPDATE_INSTALL() { @Override - public void update(ImageButton button, ModuleHolder moduleHolder) { + public void update(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder) { int icon = moduleHolder.hasUpdate() ? R.drawable.ic_baseline_update_24 : R.drawable.ic_baseline_system_update_24; @@ -56,7 +57,7 @@ public enum ActionButtonType { } @Override - public void doAction(ImageButton button, ModuleHolder moduleHolder) { + public void doAction(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder) { ModuleInfo moduleInfo = moduleHolder.getMainModuleInfo(); if (moduleInfo == null) return; String updateZipUrl = moduleHolder.getUpdateZipUrl(); @@ -114,7 +115,7 @@ public enum ActionButtonType { }, UNINSTALL() { @Override - public void update(ImageButton button, ModuleHolder moduleHolder) { + public void update(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder) { int icon = moduleHolder.hasFlag(ModuleInfo.FLAG_MODULE_UNINSTALLING) ? R.drawable.ic_baseline_delete_outline_24 : ( !moduleHolder.hasFlag(ModuleInfo.FLAG_MODULE_UPDATING) || @@ -125,7 +126,7 @@ public enum ActionButtonType { } @Override - public void doAction(ImageButton button, ModuleHolder moduleHolder) { + public void doAction(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder) { if (!moduleHolder.hasFlag(ModuleInfo.FLAGS_MODULE_ACTIVE | ModuleInfo.FLAG_MODULE_UNINSTALLING) && moduleHolder.hasFlag(ModuleInfo.FLAG_MODULE_UPDATING)) { @@ -136,7 +137,7 @@ public enum ActionButtonType { !moduleHolder.hasFlag(ModuleInfo.FLAG_MODULE_UNINSTALLING))) { Log.e("ActionButtonType", "Failed to switch uninstalled state!"); } - update(button, moduleHolder); + update(button, cardView, moduleHolder); } @Override @@ -158,7 +159,7 @@ public enum ActionButtonType { }, CONFIG(R.drawable.ic_baseline_app_settings_alt_24) { @Override - public void doAction(ImageButton button, ModuleHolder moduleHolder) { + public void doAction(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder) { String config = moduleHolder.getMainModuleConfig(); if (config == null) return; if (AndroidacyUtil.isAndroidacyLink(config)) { @@ -170,19 +171,19 @@ public enum ActionButtonType { }, SUPPORT() { @Override - public void update(ImageButton button, ModuleHolder moduleHolder) { + public void update(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder) { ModuleInfo moduleInfo = moduleHolder.getMainModuleInfo(); button.setImageResource(supportIconForUrl(moduleInfo.support)); } @Override - public void doAction(ImageButton button, ModuleHolder moduleHolder) { + public void doAction(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder) { IntentHelper.openUrl(button.getContext(), moduleHolder.getMainModuleInfo().support); } }, DONATE() { @Override - public void update(ImageButton button, ModuleHolder moduleHolder) { + public void update(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder) { ModuleInfo moduleInfo = moduleHolder.getMainModuleInfo(); int icon = R.drawable.ic_baseline_monetization_on_24; if (moduleInfo.donate.startsWith("https://www.paypal.me/")) { @@ -194,7 +195,7 @@ public enum ActionButtonType { } @Override - public void doAction(ImageButton button, ModuleHolder moduleHolder) { + public void doAction(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder) { IntentHelper.openUrl(button.getContext(), moduleHolder.getMainModuleInfo().donate); } }; @@ -226,11 +227,11 @@ public enum ActionButtonType { this.iconId = iconId; } - public void update(ImageButton button, ModuleHolder moduleHolder) { + public void update(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder) { button.setImageResource(this.iconId); } - public abstract void doAction(ImageButton button, ModuleHolder moduleHolder); + public abstract void doAction(ImageButton button, MaterialCardView cardView, ModuleHolder moduleHolder); public boolean doActionLong(ImageButton button, ModuleHolder moduleHolder) { return false; diff --git a/app/src/main/java/com/fox2code/mmm/ModuleViewAdapter.java b/app/src/main/java/com/fox2code/mmm/ModuleViewAdapter.java index ead9ff1..b3a04a8 100644 --- a/app/src/main/java/com/fox2code/mmm/ModuleViewAdapter.java +++ b/app/src/main/java/com/fox2code/mmm/ModuleViewAdapter.java @@ -22,6 +22,7 @@ import com.fox2code.mmm.manager.LocalModuleInfo; import com.fox2code.mmm.manager.ModuleInfo; import com.fox2code.mmm.manager.ModuleManager; import com.fox2code.mmm.repo.RepoModule; +import com.google.android.material.card.MaterialCardView; import com.google.android.material.switchmaterial.SwitchMaterial; import com.topjohnwu.superuser.internal.UiThreadHandler; @@ -125,7 +126,7 @@ public final class ModuleViewAdapter extends RecyclerView.Adapter