From c6e6638ddbc79ee369b37cf2da3ad5bab0941f4e Mon Sep 17 00:00:00 2001 From: Francesco Andreuzzi <andreuzzi.francesco@gmail.com> Date: Sat, 19 Aug 2017 00:37:55 +0200 Subject: [PATCH] 6.2a --- .../andre/consolelauncher/MainManager.java | 2 +- .../managers/AliasManager.java | 27 ++++++++++++++++--- app/src/main/res/values/strings.xml | 3 +++ 3 files changed, 28 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/ohi/andre/consolelauncher/MainManager.java b/app/src/main/java/ohi/andre/consolelauncher/MainManager.java index 08d8540..7ab4b63 100755 --- a/app/src/main/java/ohi/andre/consolelauncher/MainManager.java +++ b/app/src/main/java/ohi/andre/consolelauncher/MainManager.java @@ -128,7 +128,7 @@ public class MainManager { MusicManager2 music = new MusicManager2(mContext); AppsManager appsMgr = new AppsManager(c, sugg); - AliasManager aliasManager = new AliasManager(); + AliasManager aliasManager = new AliasManager(mContext); ShellHolder shellHolder = new ShellHolder(out); interactive = shellHolder.build(); diff --git a/app/src/main/java/ohi/andre/consolelauncher/managers/AliasManager.java b/app/src/main/java/ohi/andre/consolelauncher/managers/AliasManager.java index be3ff2e..55a1e77 100755 --- a/app/src/main/java/ohi/andre/consolelauncher/managers/AliasManager.java +++ b/app/src/main/java/ohi/andre/consolelauncher/managers/AliasManager.java @@ -1,5 +1,8 @@ package ohi.andre.consolelauncher.managers; +import android.content.Context; +import android.content.Intent; + import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.File; @@ -15,6 +18,8 @@ import java.util.Map; import java.util.regex.Matcher; import java.util.regex.Pattern; +import ohi.andre.consolelauncher.R; +import ohi.andre.consolelauncher.tuils.InputOutputReceiver; import ohi.andre.consolelauncher.tuils.Tuils; import ohi.andre.consolelauncher.tuils.interfaces.Reloadable; @@ -23,10 +28,13 @@ public class AliasManager implements Reloadable { public static final String PATH = "alias.txt"; private Map<String, String> aliases; - private String paramMarker, paramSeparator, aliasLabelFormat; - public AliasManager() { + private Context context; + + public AliasManager(Context c) { + this.context = c; + reload(); paramMarker = Pattern.quote(XMLPrefsManager.get(String.class, XMLPrefsManager.Behavior.alias_param_marker)); @@ -139,7 +147,20 @@ public class AliasManager implements Reloadable { if(c != splatted.length - 1) value += "="; } - aliases.put(name, value); + name = name.trim(); + value = value.trim(); + + if(name.equalsIgnoreCase(value)) { + Intent intent = new Intent(InputOutputReceiver.ACTION_OUTPUT); + intent.putExtra(InputOutputReceiver.TEXT, context.getString(R.string.output_notaddingalias1) + Tuils.SPACE + name + Tuils.SPACE + context.getString(R.string.output_notaddingalias2)); + context.sendBroadcast(intent); + } else if(value.startsWith(name + Tuils.SPACE)) { + Intent intent = new Intent(InputOutputReceiver.ACTION_OUTPUT); + intent.putExtra(InputOutputReceiver.TEXT, context.getString(R.string.output_notaddingalias1) + Tuils.SPACE + name + Tuils.SPACE + context.getString(R.string.output_notaddingalias3)); + context.sendBroadcast(intent); + } else { + aliases.put(name, value); + } } } catch (Exception e) {} } diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index ea69ed0..db2b724 100755 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -52,6 +52,9 @@ <!-- alias --> <string name="output_aliasnotfound">Alias not found:</string> <string name="output_problemaddingalias">There was a problem with your alias</string> + <string name="output_notaddingalias1">The name of your alias:</string> + <string name="output_notaddingalias2">is equal to its value. This may lead to bad behaviors, so it has been excluded. You should edit the name to use it</string> + <string name="output_notaddingalias3">is equal to the part of its value before the first space (i.e. aliasName=play ; aliasValue = play store). This may lead to crashes and freezes, so it has been excluded. You should edit the name to use it</string> <!-- tuixt --> <string name="help_tuixt_help">Print the list of commands, or info about a command -- GitLab