From 4f0c87706d037ff1e88264a998c2ea9b60e0a356 Mon Sep 17 00:00:00 2001 From: TrianguloY Date: Sun, 13 Dec 2020 00:08:51 +0100 Subject: [PATCH] New module: Debug - displays the intent uri (instead of the previous long click on open) - disabled by default --- .../urlchecker/modules/ModuleManager.java | 2 + .../urlchecker/modules/list/DebugModule.java | 67 +++++++++++++++++++ .../urlchecker/modules/list/OpenModule.java | 14 ---- app/src/main/res/layout/dialog_debug.xml | 2 + app/src/main/res/values/strings.xml | 2 + build.gradle | 2 +- gradle/wrapper/gradle-wrapper.properties | 4 +- 7 files changed, 76 insertions(+), 17 deletions(-) create mode 100644 app/src/main/java/com/trianguloy/urlchecker/modules/list/DebugModule.java create mode 100644 app/src/main/res/layout/dialog_debug.xml diff --git a/app/src/main/java/com/trianguloy/urlchecker/modules/ModuleManager.java b/app/src/main/java/com/trianguloy/urlchecker/modules/ModuleManager.java index 80b94e4..645bb85 100644 --- a/app/src/main/java/com/trianguloy/urlchecker/modules/ModuleManager.java +++ b/app/src/main/java/com/trianguloy/urlchecker/modules/ModuleManager.java @@ -2,6 +2,7 @@ package com.trianguloy.urlchecker.modules; import android.content.Context; +import com.trianguloy.urlchecker.modules.list.DebugModule; import com.trianguloy.urlchecker.modules.list.OpenModule; import com.trianguloy.urlchecker.modules.list.PatternModule; import com.trianguloy.urlchecker.modules.list.RedirectModule; @@ -26,6 +27,7 @@ public class ModuleManager { toggleableModules.add(new RedirectModule()); toggleableModules.add(new VirusTotalModule()); toggleableModules.add(new PatternModule()); + toggleableModules.add(new DebugModule()); } diff --git a/app/src/main/java/com/trianguloy/urlchecker/modules/list/DebugModule.java b/app/src/main/java/com/trianguloy/urlchecker/modules/list/DebugModule.java new file mode 100644 index 0000000..c4a6d8e --- /dev/null +++ b/app/src/main/java/com/trianguloy/urlchecker/modules/list/DebugModule.java @@ -0,0 +1,67 @@ +package com.trianguloy.urlchecker.modules.list; + +import android.view.View; +import android.widget.TextView; + +import com.trianguloy.urlchecker.R; +import com.trianguloy.urlchecker.activities.ConfigActivity; +import com.trianguloy.urlchecker.dialogs.MainDialog; +import com.trianguloy.urlchecker.modules.AModuleConfig; +import com.trianguloy.urlchecker.modules.AModuleData; +import com.trianguloy.urlchecker.modules.AModuleDialog; +import com.trianguloy.urlchecker.modules.DescriptionConfig; + +/** + * A textview with debug info. + * Currently shows the original intent (as uri) + */ +public class DebugModule extends AModuleData { + @Override + public String getId() { + return "debug"; + } + + @Override + public int getName() { + return R.string.dbg_name; + } + + @Override + public boolean isEnabledByDefault() { + return false; + } + + @Override + public AModuleDialog getDialog(MainDialog cntx) { + return new DebugDialog(cntx); + } + + @Override + public AModuleConfig getConfig(ConfigActivity cntx) { + return new DescriptionConfig(R.string.dbg_desc); + } +} + +class DebugDialog extends AModuleDialog { + + public DebugDialog(MainDialog dialog) { + super(dialog); + } + + @Override + public void onNewUrl(String url) { + // ignore + } + + @Override + public int getLayoutId() { + return R.layout.dialog_debug; + } + + @Override + public void onInitialize(View views) { + ((TextView) views.findViewById(R.id.text1)).setText( + getActivity().getIntent().toUri(0) + ); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/trianguloy/urlchecker/modules/list/OpenModule.java b/app/src/main/java/com/trianguloy/urlchecker/modules/list/OpenModule.java index 07c3015..498b5ed 100644 --- a/app/src/main/java/com/trianguloy/urlchecker/modules/list/OpenModule.java +++ b/app/src/main/java/com/trianguloy/urlchecker/modules/list/OpenModule.java @@ -1,6 +1,5 @@ package com.trianguloy.urlchecker.modules.list; -import android.app.AlertDialog; import android.content.ClipData; import android.content.ClipboardManager; import android.content.Context; @@ -16,7 +15,6 @@ import android.widget.ImageButton; import android.widget.PopupMenu; import android.widget.Toast; -import com.trianguloy.urlchecker.BuildConfig; import com.trianguloy.urlchecker.R; import com.trianguloy.urlchecker.activities.ConfigActivity; import com.trianguloy.urlchecker.dialogs.MainDialog; @@ -140,10 +138,6 @@ class OpenDialog extends AModuleDialog implements View.OnClickListener, PopupMen case R.id.ctabs: Toast.makeText(getActivity(), "Toggle Custom Tabs feature", Toast.LENGTH_SHORT).show(); break; - case R.id.open: - if (BuildConfig.DEBUG) - intentDetails(); - break; case R.id.share: copyToClipboard(); break; @@ -288,12 +282,4 @@ class OpenDialog extends AModuleDialog implements View.OnClickListener, PopupMen ctabs = state; } - /** - * Shows the uri of the current intent - */ - private void intentDetails() { - new AlertDialog.Builder(getActivity()) - .setMessage(getActivity().getIntent().toUri(0)) - .show(); - } } diff --git a/app/src/main/res/layout/dialog_debug.xml b/app/src/main/res/layout/dialog_debug.xml new file mode 100644 index 0000000..7c7426c --- /dev/null +++ b/app/src/main/res/layout/dialog_debug.xml @@ -0,0 +1,2 @@ + + \ 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 30e146f..b637062 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -63,5 +63,7 @@ Can\'t connect to VirusTotal. Make sure you have an active internet connection or try again later. Can\'t connect to VirusTotal. Make sure the api key is valid or try again later. + Debug module + Displays debug data, intended for developers. diff --git a/build.gradle b/build.gradle index 2deb66d..2426268 100644 --- a/build.gradle +++ b/build.gradle @@ -7,7 +7,7 @@ buildscript { jcenter() } dependencies { - classpath 'com.android.tools.build:gradle:4.0.1' + classpath 'com.android.tools.build:gradle:4.1.1' // NOTE: Do not place your application dependencies here; they belong diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index c7d7c1c..7df067f 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,6 +1,6 @@ -#Sat Jul 04 21:02:59 CEST 2020 +#Sat Dec 12 23:52:22 CET 2020 distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.1.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-6.5-all.zip