diff --git a/app/build.gradle b/app/build.gradle index 5f2968c97b17e5ab1a48ed80d7920ebae7d84226..a34e3b22a38c298666861924b7f01285e9ba004f 100755 --- a/app/build.gradle +++ b/app/build.gradle @@ -1,19 +1,22 @@ apply plugin: 'com.android.application' +apply plugin: 'versionPlugin' android { signingConfigs { config { } } + compileSdkVersion 23 buildToolsVersion '23.0.2' defaultConfig { applicationId "ohi.andre.consolelauncher" minSdkVersion 8 targetSdkVersion 23 - versionCode 66 - versionName "4.1" + versionCode 67 + versionName "4.2" } + buildTypes { release { minifyEnabled true @@ -21,6 +24,16 @@ android { proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } + + versionPlugin { + buildTypesMatcher = 'release' + + supportBuildNumber = true + buildNumberPrefix = 'b' + + fileNameFormat = 't-ui-vrs_$versionName-build_$versionCode' + } + compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 @@ -28,7 +41,7 @@ android { } dependencies { - compile 'com.android.support:appcompat-v7:23.2.1' + compile 'com.android.support:appcompat-v7:23.4.0' compile files('../libs/CompareString.jar') compile files('../libs/commons-io-2.4.jar') } \ No newline at end of file diff --git a/app/src/main/java/ohi/andre/consolelauncher/LauncherActivity.java b/app/src/main/java/ohi/andre/consolelauncher/LauncherActivity.java index 0680e265fa80bb588d07bd203aaf8789689281af..6df6363413bc6070883db9e0570ccc60338a3699 100755 --- a/app/src/main/java/ohi/andre/consolelauncher/LauncherActivity.java +++ b/app/src/main/java/ohi/andre/consolelauncher/LauncherActivity.java @@ -39,9 +39,10 @@ public class LauncherActivity extends Activity implements Reloadable { private MainManager main; private boolean hideStatusBar; + private boolean openKeyboardOnStart; private PreferencesManager preferencesManager; - // access Main.onCommand from UIManager + private CommandExecuter ex = new CommandExecuter() { @Override @@ -54,7 +55,7 @@ public class LauncherActivity extends Activity implements Reloadable { return null; } }; - // access input from MainManager + private Inputable in = new Inputable() { @Override @@ -66,7 +67,7 @@ public class LauncherActivity extends Activity implements Reloadable { } } }; - // access output from MainManager + private Outputable out = new Outputable() { @Override @@ -124,14 +125,17 @@ public class LauncherActivity extends Activity implements Reloadable { startService(service); } -// use system wp boolean useSystemWP = Boolean.parseBoolean(preferencesManager.getValue(PreferencesManager.USE_SYSTEMWP)); if (useSystemWP) setTheme(R.style.SystemWallpaperStyle); -// hide status bar hideStatusBar = Boolean.parseBoolean(preferencesManager.getValue(PreferencesManager.FULLSCREEN)); + openKeyboardOnStart = Boolean.parseBoolean(preferencesManager.getValue(PreferencesManager.OPEN_KEYBOARD)); + if (!openKeyboardOnStart) { + this.getWindow().setSoftInputMode(WindowManager.LayoutParams.SOFT_INPUT_STATE_ALWAYS_HIDDEN); + } + setContentView(R.layout.main_view); ViewGroup mainView = (ViewGroup) findViewById(R.id.mainview); @@ -184,7 +188,8 @@ public class LauncherActivity extends Activity implements Reloadable { protected void onStart() { super.onStart(); - ui.onStart(); + if (openKeyboardOnStart) + ui.onStart(); } @Override diff --git a/app/src/main/java/ohi/andre/consolelauncher/MainManager.java b/app/src/main/java/ohi/andre/consolelauncher/MainManager.java index f18ac87912d12beb204c31a12764bb1fd54be2ea..a78f237f55b1d39349056e096fae5038e2706daa 100755 --- a/app/src/main/java/ohi/andre/consolelauncher/MainManager.java +++ b/app/src/main/java/ohi/andre/consolelauncher/MainManager.java @@ -229,13 +229,31 @@ public class MainManager { class TuiCommandTrigger implements CmdTrigger { @Override - public boolean trigger(ExecInfo info, Outputable out, String input, int id) throws Exception { - Command command = CommandTuils.parse(input, info, false); - if (command != null) { - out.onOutput(command.exec(info), id); - return true; - } else - return false; + public boolean trigger(final ExecInfo info, final Outputable out, final String input, final int id) throws Exception { + + final boolean[] returnValue = new boolean[1]; + Thread t = new Thread() { + @Override + public void run() { + super.run(); + + try { + Command command = CommandTuils.parse(input, info, false); + if (command != null) { + out.onOutput(command.exec(info), id); + returnValue[0] = true; + } else + returnValue[0] = false; + } catch (Exception e) { + out.onOutput(e.toString(), id); + } + } + }; + + t.run(); + t.join(); + + return returnValue[0]; } } } diff --git a/app/src/main/java/ohi/andre/consolelauncher/UIManager.java b/app/src/main/java/ohi/andre/consolelauncher/UIManager.java index 7ff4679e6d99268aa9beb26ac3de89fba068de3d..7815fed2b7fe257384a698eec76effbec0e8c69f 100755 --- a/app/src/main/java/ohi/andre/consolelauncher/UIManager.java +++ b/app/src/main/java/ohi/andre/consolelauncher/UIManager.java @@ -43,25 +43,25 @@ public class UIManager implements OnTouchListener { private final int RAM_DELAY = 3000; public Handler handler; - // usable stuff + protected Context mContext; protected LinearLayout suggestionsView; - // this is for double tap + private DevicePolicyManager policy; private ComponentName component; private GestureDetector det; private ExecInfo info; - // reference for open/close kb + private InputMethodManager imm; - // reference to MainManager's onCommand + private CommandExecuter trigger; - // my terminal + private TerminalAdapter mTerminalAdapter; - // last measured root height + private int lastMeasuredHeight; - // reference to views + private TextView ram; - // this is for RAM view + private ActivityManager.MemoryInfo memory; private ActivityManager activityManager; private Runnable ramRunnable = new Runnable() { @@ -285,8 +285,6 @@ public class UIManager implements OnTouchListener { // call this to trigger a suggestion change private void requestSuggestion(final String before, final String lastWord) { - suggestionsView.removeAllViews(); - if (suggestionViewParams == null) { suggestionViewParams = new LinearLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT); suggestionViewParams.setMargins(SkinManager.SUGGESTION_MARGIN, 0, SkinManager.SUGGESTION_MARGIN, 0); diff --git a/app/src/main/java/ohi/andre/consolelauncher/commands/raw/aliasfile.java b/app/src/main/java/ohi/andre/consolelauncher/commands/raw/aliasfile.java index b1d4d3a396b89900a9f8a626bed9b7cf470db030..7bab289c013133753fe303fceeb72ecca1fe9664 100644 --- a/app/src/main/java/ohi/andre/consolelauncher/commands/raw/aliasfile.java +++ b/app/src/main/java/ohi/andre/consolelauncher/commands/raw/aliasfile.java @@ -25,10 +25,10 @@ public class aliasfile implements CommandAbstraction { @Override public String exec(final ExecInfo info) throws Exception { File tuiFolder = Tuils.getTuiFolder(); - final File aliasFile = new File(tuiFolder, PreferencesManager.ALIASES_FILENAME); + final File aliasFile = new File(tuiFolder, PreferencesManager.ALIAS_FILENAME); FileManager.openFile(info.context, aliasFile); - return info.res.getString(R.string.output_opening) + " " + PreferencesManager.ALIASES_FILENAME; + return info.res.getString(R.string.output_opening) + " " + PreferencesManager.ALIAS_FILENAME; } @Override diff --git a/app/src/main/java/ohi/andre/consolelauncher/managers/FileManager.java b/app/src/main/java/ohi/andre/consolelauncher/managers/FileManager.java index 8e676a6afed21cce0c1f170288b3178a6a9da0a1..09c6614d33258b1fd73bd2eec55c66d90b9447ea 100755 --- a/app/src/main/java/ohi/andre/consolelauncher/managers/FileManager.java +++ b/app/src/main/java/ohi/andre/consolelauncher/managers/FileManager.java @@ -10,6 +10,7 @@ import java.io.IOException; import java.util.ArrayList; import java.util.Arrays; import java.util.Comparator; +import java.util.List; import ohi.andre.comparestring.Compare; import ohi.andre.consolelauncher.tuils.Tuils; @@ -160,7 +161,7 @@ public class FileManager { return 0; } - public static ArrayList<File> lsFile(File f, boolean showHidden) { + public static List<File> lsFile(File f, boolean showHidden) { File[] content = f.listFiles(); Arrays.sort(content, new Comparator<File>() { @@ -175,7 +176,7 @@ public class FileManager { } }); - ArrayList<File> files = new ArrayList<>(); + List<File> files = new ArrayList<>(); for (File u : content) if (!u.isHidden() || showHidden) files.add(u); diff --git a/app/src/main/java/ohi/andre/consolelauncher/managers/PreferencesManager.java b/app/src/main/java/ohi/andre/consolelauncher/managers/PreferencesManager.java index f4166c1eeafafad4dabba17234ba40eb299f9f2a..13dc8fe294ef9ce4c7b9eeadd436e3cc3fae28f5 100755 --- a/app/src/main/java/ohi/andre/consolelauncher/managers/PreferencesManager.java +++ b/app/src/main/java/ohi/andre/consolelauncher/managers/PreferencesManager.java @@ -46,8 +46,11 @@ public class PreferencesManager { public static final String USE_SYSTEMWP = "useSystemWallpaper"; public static final String FULLSCREEN = "fullscreen"; public static final String NOTIFICATION = "keepAliveWithNotification"; - public static final String ALIASES_FILENAME = "alias.txt"; + public static final String OPEN_KEYBOARD = "openKeyboardOnStart"; + + public static final String ALIAS_FILENAME = "alias.txt"; public static final int ALIAS = 11; + // settings version private static final String SETTINGS_VERSION = "settingsVersion"; private List<String> settings; @@ -101,7 +104,7 @@ public class PreferencesManager { name = SETTINGS_FILENAME; break; case PreferencesManager.ALIAS: - name = ALIASES_FILENAME; + name = ALIAS_FILENAME; break; default: return null; diff --git a/app/src/main/java/ohi/andre/consolelauncher/managers/SuggestionsManager.java b/app/src/main/java/ohi/andre/consolelauncher/managers/SuggestionsManager.java index e098fd5a18a27cd29c1b9fd17c2ee9b6cf9409f7..8a44f690e968106d74a0497d19812326e906b444 100644 --- a/app/src/main/java/ohi/andre/consolelauncher/managers/SuggestionsManager.java +++ b/app/src/main/java/ohi/andre/consolelauncher/managers/SuggestionsManager.java @@ -79,8 +79,7 @@ public class SuggestionsManager { Command cmd = null; try { cmd = CommandTuils.parse(before, info, true); - } catch (Exception e) { - } + } catch (Exception e) {} if (cmd != null) { if (cmd.cmd.maxArgs() == 1 && before.contains(" ")) { diff --git a/build.gradle b/build.gradle index 03bced9f3fb18a90b91401e6547e9ed4896de30e..7ca155a7b678d4f2d4cd15303f25e3b7c7ec4e2e 100644 --- a/build.gradle +++ b/build.gradle @@ -3,9 +3,11 @@ buildscript { repositories { jcenter() + mavenCentral() } dependencies { classpath 'com.android.tools.build:gradle:2.1.0' + classpath 'com.github.hamsterksu:android-appversion-gradle-plugin:1.+' // NOTE: Do not place your application dependencies here; they belong // in the individual module build.gradle files