diff --git a/app/src/main/java/com/fox2code/mmm/Constants.java b/app/src/main/java/com/fox2code/mmm/Constants.java
index 18c21a0..5b48506 100644
--- a/app/src/main/java/com/fox2code/mmm/Constants.java
+++ b/app/src/main/java/com/fox2code/mmm/Constants.java
@@ -23,6 +23,8 @@ public class Constants {
public static final String EXTRA_MARKDOWN_URL = "extra_markdown_url";
public static final String EXTRA_MARKDOWN_TITLE = "extra_markdown_title";
public static final String EXTRA_MARKDOWN_CONFIG = "extra_markdown_config";
+ public static final String EXTRA_MARKDOWN_CHANGE_BOOT = "extra_markdown_change_boot";
+ public static final String EXTRA_MARKDOWN_NEEDS_RAMDISK = "extra_markdown_needs_ramdisk";
public static final String EXTRA_FADE_OUT = "extra_fade_out";
public static final String EXTRA_FROM_MANAGER = "extra_from_manager";
}
diff --git a/app/src/main/java/com/fox2code/mmm/MainApplication.java b/app/src/main/java/com/fox2code/mmm/MainApplication.java
index 059fefe..ef926b6 100644
--- a/app/src/main/java/com/fox2code/mmm/MainApplication.java
+++ b/app/src/main/java/com/fox2code/mmm/MainApplication.java
@@ -120,6 +120,11 @@ public class MainApplication extends CompatApplication {
getSharedPreferences().getBoolean("pref_enable_blur", false);
}
+ public static boolean isChipsDisabled() {
+ return Build.VERSION.SDK_INT >= Build.VERSION_CODES.M &&
+ getSharedPreferences().getBoolean("pref_disable_chips", false);
+ }
+
public static boolean isDeveloper() {
return BuildConfig.DEBUG ||
getSharedPreferences().getBoolean("developer", false);
diff --git a/app/src/main/java/com/fox2code/mmm/markdown/MarkdownActivity.java b/app/src/main/java/com/fox2code/mmm/markdown/MarkdownActivity.java
index 2adc362..43548bf 100644
--- a/app/src/main/java/com/fox2code/mmm/markdown/MarkdownActivity.java
+++ b/app/src/main/java/com/fox2code/mmm/markdown/MarkdownActivity.java
@@ -7,6 +7,7 @@ import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.view.WindowManager;
+import android.widget.HorizontalScrollView;
import android.widget.TextView;
import android.widget.Toast;
@@ -19,6 +20,7 @@ import com.fox2code.mmm.XHooks;
import com.fox2code.mmm.compat.CompatActivity;
import com.fox2code.mmm.utils.Http;
import com.fox2code.mmm.utils.IntentHelper;
+import com.google.android.material.chip.Chip;
import com.topjohnwu.superuser.internal.UiThreadHandler;
import java.io.IOException;
@@ -51,7 +53,8 @@ public class MarkdownActivity extends CompatActivity {
byte[] rawMarkdown = Http.doHttpGet(prefix + suffix, true);
redirects.put(url, newUrl); // Avoid retries
return rawMarkdown;
- } catch (IOException ignored) {}
+ } catch (IOException ignored) {
+ }
}
}
throw e;
@@ -74,6 +77,10 @@ public class MarkdownActivity extends CompatActivity {
.getString(Constants.EXTRA_MARKDOWN_TITLE);
String config = intent.getExtras()
.getString(Constants.EXTRA_MARKDOWN_CONFIG);
+ boolean change_boot = intent.getExtras()
+ .getBoolean(Constants.EXTRA_MARKDOWN_CHANGE_BOOT);
+ boolean needs_ramdisk = intent.getExtras()
+ .getBoolean(Constants.EXTRA_MARKDOWN_NEEDS_RAMDISK);
if (title != null && !title.isEmpty()) {
this.setTitle(title);
}
@@ -98,9 +105,26 @@ public class MarkdownActivity extends CompatActivity {
setContentView(R.layout.markdown_view);
final ViewGroup markdownBackground = findViewById(R.id.markdownBackground);
final TextView textView = findViewById(R.id.markdownView);
+ final Chip chip_can_change_boot = findViewById(R.id.chip_change_boot);
+ final Chip chip_needs_ramdisk = findViewById(R.id.chip_needs_ramdisk);
+ final HorizontalScrollView chip_holder = findViewById(R.id.chip_holder);
+ final Chip min_magisk = findViewById(R.id.chip_min_magisk);
final TextView footer = findViewById(R.id.markdownFooter);
UiThreadHandler.handler.postDelayed(() -> // Fix footer height
footer.setMinHeight(this.getNavigationBarHeight()), 1L);
+
+ // Really bad created
+ if (MainApplication.isChipsDisabled()) {
+ chip_holder.setVisibility(View.GONE);
+ } else {
+ if (change_boot) {
+ chip_can_change_boot.setVisibility(View.VISIBLE);
+ }
+ if (needs_ramdisk) {
+ chip_needs_ramdisk.setVisibility(View.VISIBLE);
+ }
+ }
+
new Thread(() -> {
try {
Log.d(TAG, "Downloading");
diff --git a/app/src/main/java/com/fox2code/mmm/module/ActionButtonType.java b/app/src/main/java/com/fox2code/mmm/module/ActionButtonType.java
index 7f7b215..1c08978 100644
--- a/app/src/main/java/com/fox2code/mmm/module/ActionButtonType.java
+++ b/app/src/main/java/com/fox2code/mmm/module/ActionButtonType.java
@@ -39,7 +39,9 @@ public enum ActionButtonType {
} else {
IntentHelper.openMarkdown(button.getContext(), notesUrl,
moduleHolder.repoModule.moduleInfo.name,
- moduleHolder.getMainModuleConfig());
+ moduleHolder.getMainModuleConfig(),
+ moduleHolder.repoModule.moduleInfo.changeBoot,
+ moduleHolder.repoModule.moduleInfo.needRamdisk);
}
}
diff --git a/app/src/main/java/com/fox2code/mmm/utils/IntentHelper.java b/app/src/main/java/com/fox2code/mmm/utils/IntentHelper.java
index 0026fd1..65989e3 100644
--- a/app/src/main/java/com/fox2code/mmm/utils/IntentHelper.java
+++ b/app/src/main/java/com/fox2code/mmm/utils/IntentHelper.java
@@ -165,12 +165,14 @@ public class IntentHelper {
}
}
- public static void openMarkdown(Context context, String url, String title, String config) {
+ public static void openMarkdown(Context context, String url, String title, String config, Boolean changeBoot, Boolean needsRamdisk) {
try {
Intent intent = new Intent(context, MarkdownActivity.class);
MainApplication.addSecret(intent);
intent.putExtra(Constants.EXTRA_MARKDOWN_URL, url);
intent.putExtra(Constants.EXTRA_MARKDOWN_TITLE, title);
+ intent.putExtra(Constants.EXTRA_MARKDOWN_CHANGE_BOOT, changeBoot);
+ intent.putExtra(Constants.EXTRA_MARKDOWN_NEEDS_RAMDISK, needsRamdisk);
if (config != null && !config.isEmpty())
intent.putExtra(Constants.EXTRA_MARKDOWN_CONFIG, config);
startActivity(context, intent, true);
diff --git a/app/src/main/res/drawable/ic_baseline_chip_24.xml b/app/src/main/res/drawable/ic_baseline_chip_24.xml
new file mode 100644
index 0000000..f6f82d3
--- /dev/null
+++ b/app/src/main/res/drawable/ic_baseline_chip_24.xml
@@ -0,0 +1,5 @@
+
+
+
diff --git a/app/src/main/res/layout/markdown_view.xml b/app/src/main/res/layout/markdown_view.xml
index 81e1391..b3fc949 100644
--- a/app/src/main/res/layout/markdown_view.xml
+++ b/app/src/main/res/layout/markdown_view.xml
@@ -1,23 +1,32 @@
+
+ android:layout_height="0dp"
+ android:layout_weight="1"
+ tools:ignore="UselessParent">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml
index 045038e..c31e9a7 100644
--- a/app/src/main/res/values/strings.xml
+++ b/app/src/main/res/values/strings.xml
@@ -34,6 +34,8 @@
by
Downloads:
Stars:
+ Needs ramdisk
+ Can change boot
@@ -100,6 +102,7 @@
all text on the same line when installing a module.
Blur
+ Disable chips in description
Repo on
Repo off
Add Repo
diff --git a/app/src/main/res/xml/root_preferences.xml b/app/src/main/res/xml/root_preferences.xml
index f658a6f..1f09259 100644
--- a/app/src/main/res/xml/root_preferences.xml
+++ b/app/src/main/res/xml/root_preferences.xml
@@ -64,6 +64,13 @@
app:title="@string/force_dark_terminal_title"
app:singleLineTitle="false" />
+
+